From 6e8816c46715334246bdd438af8f7e58d337d16e Mon Sep 17 00:00:00 2001 From: Hexagon Date: Sun, 7 Nov 2021 13:52:45 +0100 Subject: [PATCH] Dependency bump (serve 12->13). Add dependency checks to local build pipeline, do not run on ci builds. --- .github/workflows/node.js.yml | 2 +- client/public/js/cryptalk.min.js | 2 +- client/public/js/cryptalk.min.js.map | 2 +- client/source/console.js | 18 +- package-lock.json | 7293 +++++++++++++------------- package.json | 7 +- 6 files changed, 3556 insertions(+), 3768 deletions(-) diff --git a/.github/workflows/node.js.yml b/.github/workflows/node.js.yml index b676104..2e1484c 100644 --- a/.github/workflows/node.js.yml +++ b/.github/workflows/node.js.yml @@ -27,4 +27,4 @@ jobs: node-version: ${{ matrix.node-version }} cache: 'npm' - run: npm ci - - run: npm run build + - run: npm run build:ci diff --git a/client/public/js/cryptalk.min.js b/client/public/js/cryptalk.min.js index 8f1dbf7..564d87e 100644 --- a/client/public/js/cryptalk.min.js +++ b/client/public/js/cryptalk.min.js @@ -1 +1 @@ -(function(){"use strict";let index=0,subs={},emits={},noop=function(){};function on(fromId,event,handler,once){let i,item,subscription=[fromId,handler,handler.length>1];(subs[event]||(subs[event]=[])).push(subscription);if(emits[event]){i=0;subscription=[subscription];while(item=emits[event][i++]){emit(0,0,item[0],item[1],subscription);if(once){break}}}}function off(fromId,event,handler){let sub,i=0,toSubs=subs[event];if(toSubs){while(sub=toSubs[i++]){if(sub[0]===fromId&&(!handler||handler===sub[1])){toSubs.splice(--i,1)}}}}function emit(persistent,event,data,callback,explicitSubs){let sub,toSubs=explicitSubs||subs[event]||[],total=toSubs.length,left,loop,answers=[],done;if(subs["*"]){toSubs=toSubs.concat(subs["*"])}loop=left=toSubs.length;if(loop){done=!callback?noop:function(data){if(data){answers.push(data)}if(!--left){callback(answers,total);callback=0}};while(sub=toSubs[--loop]){sub[1](data,sub[2]?done:left--,event)}}if(!left&&callback){callback(answers,total)}if(persistent){(emits[event]||(emits[event]=[])).push([data,callback])}}function Castrato(){this.nodeId=index++;return this}Castrato.prototype.emit=function(persistent,event,data,handler){if(persistent!==true&&persistent!==false){handler=data;data=event;event=persistent;persistent=false}emit(persistent,event,data,handler);return this};Castrato.prototype.on=function(event,handler){on(this.nodeId,event,handler);return this};Castrato.prototype.once=function(event,handler){on(this.nodeId,event,function wrapper(data,done){off(this.nodeId,event,wrapper);handler(data,handler.length>1?done:done())},true);return this};Castrato.prototype.off=function(event,handler){off(this.nodeId,event,handler);return this};Castrato.prototype.destroy=function(){this.nodeId=0;index=0;subs={};emits={};return this};let castrato=new Castrato;function win(mediator){var exports={},focusCallback=function(){mediator.emit("window:focused")},blurCallback=function(){mediator.emit("window:blurred")};exports.setTitle=function(t){document.title=t},exports.getTitle=function(){return document.title};if(window.addEventListener){window.addEventListener("focus",focusCallback,true);window.addEventListener("blur",blurCallback,true)}else{window.observe("focusin",focusCallback);window.observe("focusout",blurCallback)}mediator.on("window:title",exports.setTitle);return exports}function notifications(mediator,settings,win){var enabled=true,native_supported=false,new_title,original_title,blink_timer,interval,last,now=function(){return performance.now()||Date.now()},on=function(){enabled=true},off=function(){enabled=false},resetState=function(){clearTimeout(blink_timer);if(original_title!==undefined)win.setTitle(original_title);original_title=undefined;new_title=undefined},doBlink=function(){if(enabled){if(win.getTitle()===original_title)win.setTitle(new_title);else win.setTitle(original_title);blink_timer=setTimeout(doBlink,interval)}else{resetState()}},enableNative=function(){if(native_supported&&Notification.permission!=="denied"){Notification.requestPermission()}},blinkTitleUntilFocus=function(t,i){interval=i===undefined?1e3:i;if(enabled&&original_title===undefined){new_title=t;original_title=win.getTitle();doBlink()}},notify=function(title,body,icon,fallback){if(enabled&&now()-last>settings.notifications.maxOnePerMs){if(fallback===undefined)fallback=false;if(native_supported&&Notification.permission==="granted"){var n=new Notification(title,{body:body,icon:icon});n.onshow=function(){setTimeout(function(){n.close()},3e3)};last=now()}else if(fallback){blinkTitleUntilFocus("Attention",1e3)}}};native_supported=window.Notification!==undefined;mediator.on("notification:send",function(data){notify(data.title,data.body,data.icon,true)});mediator.on("notification:on",function(){on()});mediator.on("notification:off",function(){off()});enableNative();off();last=now();resetState()}var templates={help:"
                                                                \n"+"Cryptalk, encrypted instant chat.                                      \n"+"                                                                       \n"+"----------------------------------------------------------------------\t\n"+"                                                                       \n"+"Client:                                                    \t\t\t\n"+"\t/key\t\tStrongPassphrase\tSets encryption key                 \n"+"\t/nick\t\tNickName\t\tSets an optional nick                   \n"+"\t/mute  \t\t\t\t\tAudio on\t\t\t\t\t\t\t\t\t\n"+"\t/unmute  \t\t\t\tAudio off\t\t\t\t\t\t\t\t\t\n"+"\t/clear\t\t\t\t\tClear on-screen buffer                      \n"+"\t/help\t\t\t\t\tThis                                        \n"+"\t/title\t\t\t\t\tSet your local page title\t\t\t\t\t\n"+"\t/torch\t\tAfterSeconds\t\tConsole messages are torched  \t\t\n"+"\t\t\t\t\t\tafter this amount of seconds \t\t\t\t\t\n"+"\t\t\t\t\t\t(default 600).\t\t\t\t\t\t\t\t\t\n"+"                                                                       \n"+"Room:                                                    \t\t\t\t\n"+"\t/join\t\tRoomId\t\t\tJoin a room\t                            \n"+"\t/leave\t\t\t\t\tLeave the room                              \n"+"\t/count\t\t\t\t\tCount participants                          \n"+"                                                                       \n"+"Host:  \t\t                                                    \t\n"+"\t/connect\t\t\tConnect to host\t\t\t          \t\t     \t\n"+"\t/disconnect\t\t\t\tDisconnect from host    \t\t\t        \n"+"                                                                       \n"+"You can select any of the five last commands/messages with up/down key.\n"+"                                                                       \n"+"Due to security reasons, /key command is not saved, and command        \n"+"history is  automatically cleared after one minute of inactivity.      \n"+"                                                                       \n"+"It is highly recommended to use incognito mode while chatting, \n"+"to prevent browsers from keeping history or cache.            \n"+"                                                                       \n"+"----------------------------------------------------------------------\t\n"+"
",default_nick:"Anonymous",post:{motd:'
  • {text}
  • ',info:'
  • [{timestamp}] INF> {text}
  • ',server:'
  • [{timestamp}] SRV> {text}
  • ',error:'
  • [{timestamp}] ERR> {text}
  • ',message:'
  • [{timestamp}] MSG> {nick}> {text}
  • '},messages:{key_to_short:"Hmm, that's a weak key, try again...",key_to_long:"Man that's a long key. Make it a tad short, 'kay?",key_ok:"Key set, you can now start communicating.",key_no_host:"You have to connect to a host before setting the key.",join_no_host:"You have to connect to a host before joining a room.",nick_to_short:"Nickname is too short, it has to be at least {nick_minLen} characters long. Try again.",nick_to_long:"Nickname is too long, it can be at most {nick_maxLen} characters long. Try again.",nick_set:"From now on, you're referred to as '{nick}'.",msg_no_room:"You have to join a room before sending messages. See /help.",not_in_room:"You have to be in a room to count participants...",msg_no_key:"You have to set an encryption key before sending a message. See /help.",leave_from_nowhere:"How are you supposed to leave, while being nowhere?",torch_is_now:"Messages are now torched after {ttl} seconds.",torch_not_set:"Invalid torch delay entered, nothing changed. See /help.",title_set:"The title of this window is now '{title}'.",muted:"Notifications and sounds are now muted.",unmuted:"Notifications and sounds are now on.",unrecognized_command:'Unrecognized command: "{commandName}"',room_name_too_long:"Isn't that a bit long?",room_name_too_short:"Nah, too short.",joined_room:"Joined room {roomName}.",left_room:"Left room {roomName}.",already_in_room:"You are already in a room ({room}), try /leave first.",unable_to_decrypt:"Unabled to decrypt received message, keys does not match.",socket_error:"A network error has occurred. A restart may be required to bring back full functionality.
    Examine the logs for more details.",connecting:"Connecting to host {host}...",connected:"A connection to the server has been established. Happy chatting!",disconnected:"Disconnected from host {host}.",already_connected:"You have to disconnect from {host} before joining another.",reconnect_no_host:"There is no host to reconnect with.",host_available:'{index}\t[AVAILABLE]\t{name}\n',host_unavailable:'{index}\t[UNAVAILABLE]\t{name}\n'},server:{person_joined:"A person joined this room.",person_left:"A person left this room.",person_count:"There are {payload} people in this room, including you.",person_single:"You are the only person in this room.",command_failed:"Server command failed, you're probably trying to du something bogus.",bogus:"Received a bogus message from server."},client:{title:"Cryptalk - Offline"}};var settings={title:"Cryptalk - Online",ttl:6e5,motd:"
    \n\n"+"▄████▄   ██▀███ ▓██   ██▓ ██▓███  ▄▄▄█████▓ ▄▄▄       ██▓     ██ ▄█▀  \n"+"▒██▀ ▀█  ▓██ ▒ ██▒▒██  ██▒▓██░  ██▒▓  ██▒ ▓▒▒████▄    ▓██▒     ██▄█▒  \n"+"▒▓█    ▄ ▓██ ░▄█ ▒ ▒██ ██░▓██░ ██▓▒▒ ▓██░ ▒░▒██  ▀█▄  ▒██░    ▓███▄░  \n"+"▒▓▓▄ ▄██▒▒██▀▀█▄   ░ ▐██▓░▒██▄█▓▒ ▒░ ▓██▓ ░ ░██▄▄▄▄██ ▒██░    ▓██ █▄  \n"+"▒ ▓███▀ ░░██▓ ▒██▒ ░ ██▒▓░▒██▒ ░  ░  ▒██▒ ░  ▓█   ▓██▒░██████▒▒██▒ █▄ \n"+"░ ░▒ ▒  ░░ ▒▓ ░▒▓░  ██▒▒▒ ▒▓▒░ ░  ░  ▒ ░░    ▒▒   ▓▒█░░ ▒░▓  ░▒ ▒▒ ▓▒ \n"+"  ░  ▒     ░▒ ░ ▒░▓██ ░▒░ ░▒ ░         ░      ▒   ▒▒ ░░ ░ ▒  ░░ ░▒ ▒░ \n"+"░          ░░   ░ ▒ ▒ ░░  ░░         ░        ░   ▒     ░ ░   ░ ░░ ░  \n"+"░ ░         ░     ░ ░                             ░  ░    ░  ░░  ░    \n"+"░                 ░ ░                                                 \n"+"                                  https://github.com/hexagon/cryptalk \n"+"                                                                      \n"+" Tip of the day: /help                                                \n"+"----------------------------------------------------------------------"+"
    ",nick:{maxLen:20,minLen:2},key:{maxLen:1024,minLen:8},room:{minLen:1,maxLen:64},notifications:{maxOnePerMs:3e3}};var commonjsGlobal=typeof globalThis!=="undefined"?globalThis:typeof window!=="undefined"?window:typeof global!=="undefined"?global:typeof self!=="undefined"?self:{};function commonjsRequire(path){throw new Error('Could not dynamically require "'+path+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var cryptoJs={exports:{}};var core={exports:{}};(function(module,exports){(function(root,factory){{module.exports=factory()}})(commonjsGlobal,function(){var CryptoJS=CryptoJS||function(Math,undefined$1){var crypto;if(typeof window!=="undefined"&&window.crypto){crypto=window.crypto}if(typeof self!=="undefined"&&self.crypto){crypto=self.crypto}if(typeof globalThis!=="undefined"&&globalThis.crypto){crypto=globalThis.crypto}if(!crypto&&typeof window!=="undefined"&&window.msCrypto){crypto=window.msCrypto}if(!crypto&&typeof commonjsGlobal!=="undefined"&&commonjsGlobal.crypto){crypto=commonjsGlobal.crypto}if(!crypto&&typeof commonjsRequire==="function"){try{crypto=require("crypto")}catch(err){}}var cryptoSecureRandomInt=function(){if(crypto){if(typeof crypto.getRandomValues==="function"){try{return crypto.getRandomValues(new Uint32Array(1))[0]}catch(err){}}if(typeof crypto.randomBytes==="function"){try{return crypto.randomBytes(4).readInt32LE()}catch(err){}}}throw new Error("Native crypto module could not be used to get secure random number.")};var create=Object.create||function(){function F(){}return function(obj){var subtype;F.prototype=obj;subtype=new F;F.prototype=null;return subtype}}();var C={};var C_lib=C.lib={};var Base=C_lib.Base=function(){return{extend:function(overrides){var subtype=create(this);if(overrides){subtype.mixIn(overrides)}if(!subtype.hasOwnProperty("init")||this.init===subtype.init){subtype.init=function(){subtype.$super.init.apply(this,arguments)}}subtype.init.prototype=subtype;subtype.$super=this;return subtype},create:function(){var instance=this.extend();instance.init.apply(instance,arguments);return instance},init:function(){},mixIn:function(properties){for(var propertyName in properties){if(properties.hasOwnProperty(propertyName)){this[propertyName]=properties[propertyName]}}if(properties.hasOwnProperty("toString")){this.toString=properties.toString}},clone:function(){return this.init.prototype.extend(this)}}}();var WordArray=C_lib.WordArray=Base.extend({init:function(words,sigBytes){words=this.words=words||[];if(sigBytes!=undefined$1){this.sigBytes=sigBytes}else{this.sigBytes=words.length*4}},toString:function(encoder){return(encoder||Hex).stringify(this)},concat:function(wordArray){var thisWords=this.words;var thatWords=wordArray.words;var thisSigBytes=this.sigBytes;var thatSigBytes=wordArray.sigBytes;this.clamp();if(thisSigBytes%4){for(var i=0;i>>2]>>>24-i%4*8&255;thisWords[thisSigBytes+i>>>2]|=thatByte<<24-(thisSigBytes+i)%4*8}}else{for(var j=0;j>>2]=thatWords[j>>>2]}}this.sigBytes+=thatSigBytes;return this},clamp:function(){var words=this.words;var sigBytes=this.sigBytes;words[sigBytes>>>2]&=4294967295<<32-sigBytes%4*8;words.length=Math.ceil(sigBytes/4)},clone:function(){var clone=Base.clone.call(this);clone.words=this.words.slice(0);return clone},random:function(nBytes){var words=[];for(var i=0;i>>2]>>>24-i%4*8&255;hexChars.push((bite>>>4).toString(16));hexChars.push((bite&15).toString(16))}return hexChars.join("")},parse:function(hexStr){var hexStrLength=hexStr.length;var words=[];for(var i=0;i>>3]|=parseInt(hexStr.substr(i,2),16)<<24-i%8*4}return new WordArray.init(words,hexStrLength/2)}};var Latin1=C_enc.Latin1={stringify:function(wordArray){var words=wordArray.words;var sigBytes=wordArray.sigBytes;var latin1Chars=[];for(var i=0;i>>2]>>>24-i%4*8&255;latin1Chars.push(String.fromCharCode(bite))}return latin1Chars.join("")},parse:function(latin1Str){var latin1StrLength=latin1Str.length;var words=[];for(var i=0;i>>2]|=(latin1Str.charCodeAt(i)&255)<<24-i%4*8}return new WordArray.init(words,latin1StrLength)}};var Utf8=C_enc.Utf8={stringify:function(wordArray){try{return decodeURIComponent(escape(Latin1.stringify(wordArray)))}catch(e){throw new Error("Malformed UTF-8 data")}},parse:function(utf8Str){return Latin1.parse(unescape(encodeURIComponent(utf8Str)))}};var BufferedBlockAlgorithm=C_lib.BufferedBlockAlgorithm=Base.extend({reset:function(){this._data=new WordArray.init;this._nDataBytes=0},_append:function(data){if(typeof data=="string"){data=Utf8.parse(data)}this._data.concat(data);this._nDataBytes+=data.sigBytes},_process:function(doFlush){var processedWords;var data=this._data;var dataWords=data.words;var dataSigBytes=data.sigBytes;var blockSize=this.blockSize;var blockSizeBytes=blockSize*4;var nBlocksReady=dataSigBytes/blockSizeBytes;if(doFlush){nBlocksReady=Math.ceil(nBlocksReady)}else{nBlocksReady=Math.max((nBlocksReady|0)-this._minBufferSize,0)}var nWordsReady=nBlocksReady*blockSize;var nBytesReady=Math.min(nWordsReady*4,dataSigBytes);if(nWordsReady){for(var offset=0;offset>>2]|=typedArray[i]<<24-i%4*8}superInit.call(this,words,typedArrayByteLength)}else{superInit.apply(this,arguments)}};subInit.prototype=WordArray})();return CryptoJS.lib.WordArray})})(libTypedarrays);var encUtf16={exports:{}};(function(module,exports){(function(root,factory){{module.exports=factory(core.exports)}})(commonjsGlobal,function(CryptoJS){(function(){var C=CryptoJS;var C_lib=C.lib;var WordArray=C_lib.WordArray;var C_enc=C.enc;C_enc.Utf16=C_enc.Utf16BE={stringify:function(wordArray){var words=wordArray.words;var sigBytes=wordArray.sigBytes;var utf16Chars=[];for(var i=0;i>>2]>>>16-i%4*8&65535;utf16Chars.push(String.fromCharCode(codePoint))}return utf16Chars.join("")},parse:function(utf16Str){var utf16StrLength=utf16Str.length;var words=[];for(var i=0;i>>1]|=utf16Str.charCodeAt(i)<<16-i%2*16}return WordArray.create(words,utf16StrLength*2)}};C_enc.Utf16LE={stringify:function(wordArray){var words=wordArray.words;var sigBytes=wordArray.sigBytes;var utf16Chars=[];for(var i=0;i>>2]>>>16-i%4*8&65535);utf16Chars.push(String.fromCharCode(codePoint))}return utf16Chars.join("")},parse:function(utf16Str){var utf16StrLength=utf16Str.length;var words=[];for(var i=0;i>>1]|=swapEndian(utf16Str.charCodeAt(i)<<16-i%2*16)}return WordArray.create(words,utf16StrLength*2)}};function swapEndian(word){return word<<8&4278255360|word>>>8&16711935}})();return CryptoJS.enc.Utf16})})(encUtf16);var encBase64={exports:{}};(function(module,exports){(function(root,factory){{module.exports=factory(core.exports)}})(commonjsGlobal,function(CryptoJS){(function(){var C=CryptoJS;var C_lib=C.lib;var WordArray=C_lib.WordArray;var C_enc=C.enc;C_enc.Base64={stringify:function(wordArray){var words=wordArray.words;var sigBytes=wordArray.sigBytes;var map=this._map;wordArray.clamp();var base64Chars=[];for(var i=0;i>>2]>>>24-i%4*8&255;var byte2=words[i+1>>>2]>>>24-(i+1)%4*8&255;var byte3=words[i+2>>>2]>>>24-(i+2)%4*8&255;var triplet=byte1<<16|byte2<<8|byte3;for(var j=0;j<4&&i+j*.75>>6*(3-j)&63))}}var paddingChar=map.charAt(64);if(paddingChar){while(base64Chars.length%4){base64Chars.push(paddingChar)}}return base64Chars.join("")},parse:function(base64Str){var base64StrLength=base64Str.length;var map=this._map;var reverseMap=this._reverseMap;if(!reverseMap){reverseMap=this._reverseMap=[];for(var j=0;j>>6-i%4*2;var bitsCombined=bits1|bits2;words[nBytes>>>2]|=bitsCombined<<24-nBytes%4*8;nBytes++}}return WordArray.create(words,nBytes)}})();return CryptoJS.enc.Base64})})(encBase64);var encBase64url={exports:{}};(function(module,exports){(function(root,factory){{module.exports=factory(core.exports)}})(commonjsGlobal,function(CryptoJS){(function(){var C=CryptoJS;var C_lib=C.lib;var WordArray=C_lib.WordArray;var C_enc=C.enc;C_enc.Base64url={stringify:function(wordArray,urlSafe=true){var words=wordArray.words;var sigBytes=wordArray.sigBytes;var map=urlSafe?this._safe_map:this._map;wordArray.clamp();var base64Chars=[];for(var i=0;i>>2]>>>24-i%4*8&255;var byte2=words[i+1>>>2]>>>24-(i+1)%4*8&255;var byte3=words[i+2>>>2]>>>24-(i+2)%4*8&255;var triplet=byte1<<16|byte2<<8|byte3;for(var j=0;j<4&&i+j*.75>>6*(3-j)&63))}}var paddingChar=map.charAt(64);if(paddingChar){while(base64Chars.length%4){base64Chars.push(paddingChar)}}return base64Chars.join("")},parse:function(base64Str,urlSafe=true){var base64StrLength=base64Str.length;var map=urlSafe?this._safe_map:this._map;var reverseMap=this._reverseMap;if(!reverseMap){reverseMap=this._reverseMap=[];for(var j=0;j>>6-i%4*2;var bitsCombined=bits1|bits2;words[nBytes>>>2]|=bitsCombined<<24-nBytes%4*8;nBytes++}}return WordArray.create(words,nBytes)}})();return CryptoJS.enc.Base64url})})(encBase64url);var md5={exports:{}};(function(module,exports){(function(root,factory){{module.exports=factory(core.exports)}})(commonjsGlobal,function(CryptoJS){(function(Math){var C=CryptoJS;var C_lib=C.lib;var WordArray=C_lib.WordArray;var Hasher=C_lib.Hasher;var C_algo=C.algo;var T=[];(function(){for(var i=0;i<64;i++){T[i]=Math.abs(Math.sin(i+1))*4294967296|0}})();var MD5=C_algo.MD5=Hasher.extend({_doReset:function(){this._hash=new WordArray.init([1732584193,4023233417,2562383102,271733878])},_doProcessBlock:function(M,offset){for(var i=0;i<16;i++){var offset_i=offset+i;var M_offset_i=M[offset_i];M[offset_i]=(M_offset_i<<8|M_offset_i>>>24)&16711935|(M_offset_i<<24|M_offset_i>>>8)&4278255360}var H=this._hash.words;var M_offset_0=M[offset+0];var M_offset_1=M[offset+1];var M_offset_2=M[offset+2];var M_offset_3=M[offset+3];var M_offset_4=M[offset+4];var M_offset_5=M[offset+5];var M_offset_6=M[offset+6];var M_offset_7=M[offset+7];var M_offset_8=M[offset+8];var M_offset_9=M[offset+9];var M_offset_10=M[offset+10];var M_offset_11=M[offset+11];var M_offset_12=M[offset+12];var M_offset_13=M[offset+13];var M_offset_14=M[offset+14];var M_offset_15=M[offset+15];var a=H[0];var b=H[1];var c=H[2];var d=H[3];a=FF(a,b,c,d,M_offset_0,7,T[0]);d=FF(d,a,b,c,M_offset_1,12,T[1]);c=FF(c,d,a,b,M_offset_2,17,T[2]);b=FF(b,c,d,a,M_offset_3,22,T[3]);a=FF(a,b,c,d,M_offset_4,7,T[4]);d=FF(d,a,b,c,M_offset_5,12,T[5]);c=FF(c,d,a,b,M_offset_6,17,T[6]);b=FF(b,c,d,a,M_offset_7,22,T[7]);a=FF(a,b,c,d,M_offset_8,7,T[8]);d=FF(d,a,b,c,M_offset_9,12,T[9]);c=FF(c,d,a,b,M_offset_10,17,T[10]);b=FF(b,c,d,a,M_offset_11,22,T[11]);a=FF(a,b,c,d,M_offset_12,7,T[12]);d=FF(d,a,b,c,M_offset_13,12,T[13]);c=FF(c,d,a,b,M_offset_14,17,T[14]);b=FF(b,c,d,a,M_offset_15,22,T[15]);a=GG(a,b,c,d,M_offset_1,5,T[16]);d=GG(d,a,b,c,M_offset_6,9,T[17]);c=GG(c,d,a,b,M_offset_11,14,T[18]);b=GG(b,c,d,a,M_offset_0,20,T[19]);a=GG(a,b,c,d,M_offset_5,5,T[20]);d=GG(d,a,b,c,M_offset_10,9,T[21]);c=GG(c,d,a,b,M_offset_15,14,T[22]);b=GG(b,c,d,a,M_offset_4,20,T[23]);a=GG(a,b,c,d,M_offset_9,5,T[24]);d=GG(d,a,b,c,M_offset_14,9,T[25]);c=GG(c,d,a,b,M_offset_3,14,T[26]);b=GG(b,c,d,a,M_offset_8,20,T[27]);a=GG(a,b,c,d,M_offset_13,5,T[28]);d=GG(d,a,b,c,M_offset_2,9,T[29]);c=GG(c,d,a,b,M_offset_7,14,T[30]);b=GG(b,c,d,a,M_offset_12,20,T[31]);a=HH(a,b,c,d,M_offset_5,4,T[32]);d=HH(d,a,b,c,M_offset_8,11,T[33]);c=HH(c,d,a,b,M_offset_11,16,T[34]);b=HH(b,c,d,a,M_offset_14,23,T[35]);a=HH(a,b,c,d,M_offset_1,4,T[36]);d=HH(d,a,b,c,M_offset_4,11,T[37]);c=HH(c,d,a,b,M_offset_7,16,T[38]);b=HH(b,c,d,a,M_offset_10,23,T[39]);a=HH(a,b,c,d,M_offset_13,4,T[40]);d=HH(d,a,b,c,M_offset_0,11,T[41]);c=HH(c,d,a,b,M_offset_3,16,T[42]);b=HH(b,c,d,a,M_offset_6,23,T[43]);a=HH(a,b,c,d,M_offset_9,4,T[44]);d=HH(d,a,b,c,M_offset_12,11,T[45]);c=HH(c,d,a,b,M_offset_15,16,T[46]);b=HH(b,c,d,a,M_offset_2,23,T[47]);a=II(a,b,c,d,M_offset_0,6,T[48]);d=II(d,a,b,c,M_offset_7,10,T[49]);c=II(c,d,a,b,M_offset_14,15,T[50]);b=II(b,c,d,a,M_offset_5,21,T[51]);a=II(a,b,c,d,M_offset_12,6,T[52]);d=II(d,a,b,c,M_offset_3,10,T[53]);c=II(c,d,a,b,M_offset_10,15,T[54]);b=II(b,c,d,a,M_offset_1,21,T[55]);a=II(a,b,c,d,M_offset_8,6,T[56]);d=II(d,a,b,c,M_offset_15,10,T[57]);c=II(c,d,a,b,M_offset_6,15,T[58]);b=II(b,c,d,a,M_offset_13,21,T[59]);a=II(a,b,c,d,M_offset_4,6,T[60]);d=II(d,a,b,c,M_offset_11,10,T[61]);c=II(c,d,a,b,M_offset_2,15,T[62]);b=II(b,c,d,a,M_offset_9,21,T[63]);H[0]=H[0]+a|0;H[1]=H[1]+b|0;H[2]=H[2]+c|0;H[3]=H[3]+d|0},_doFinalize:function(){var data=this._data;var dataWords=data.words;var nBitsTotal=this._nDataBytes*8;var nBitsLeft=data.sigBytes*8;dataWords[nBitsLeft>>>5]|=128<<24-nBitsLeft%32;var nBitsTotalH=Math.floor(nBitsTotal/4294967296);var nBitsTotalL=nBitsTotal;dataWords[(nBitsLeft+64>>>9<<4)+15]=(nBitsTotalH<<8|nBitsTotalH>>>24)&16711935|(nBitsTotalH<<24|nBitsTotalH>>>8)&4278255360;dataWords[(nBitsLeft+64>>>9<<4)+14]=(nBitsTotalL<<8|nBitsTotalL>>>24)&16711935|(nBitsTotalL<<24|nBitsTotalL>>>8)&4278255360;data.sigBytes=(dataWords.length+1)*4;this._process();var hash=this._hash;var H=hash.words;for(var i=0;i<4;i++){var H_i=H[i];H[i]=(H_i<<8|H_i>>>24)&16711935|(H_i<<24|H_i>>>8)&4278255360}return hash},clone:function(){var clone=Hasher.clone.call(this);clone._hash=this._hash.clone();return clone}});function FF(a,b,c,d,x,s,t){var n=a+(b&c|~b&d)+x+t;return(n<>>32-s)+b}function GG(a,b,c,d,x,s,t){var n=a+(b&d|c&~d)+x+t;return(n<>>32-s)+b}function HH(a,b,c,d,x,s,t){var n=a+(b^c^d)+x+t;return(n<>>32-s)+b}function II(a,b,c,d,x,s,t){var n=a+(c^(b|~d))+x+t;return(n<>>32-s)+b}C.MD5=Hasher._createHelper(MD5);C.HmacMD5=Hasher._createHmacHelper(MD5)})(Math);return CryptoJS.MD5})})(md5);var sha1={exports:{}};(function(module,exports){(function(root,factory){{module.exports=factory(core.exports)}})(commonjsGlobal,function(CryptoJS){(function(){var C=CryptoJS;var C_lib=C.lib;var WordArray=C_lib.WordArray;var Hasher=C_lib.Hasher;var C_algo=C.algo;var W=[];var SHA1=C_algo.SHA1=Hasher.extend({_doReset:function(){this._hash=new WordArray.init([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(M,offset){var H=this._hash.words;var a=H[0];var b=H[1];var c=H[2];var d=H[3];var e=H[4];for(var i=0;i<80;i++){if(i<16){W[i]=M[offset+i]|0}else{var n=W[i-3]^W[i-8]^W[i-14]^W[i-16];W[i]=n<<1|n>>>31}var t=(a<<5|a>>>27)+e+W[i];if(i<20){t+=(b&c|~b&d)+1518500249}else if(i<40){t+=(b^c^d)+1859775393}else if(i<60){t+=(b&c|b&d|c&d)-1894007588}else{t+=(b^c^d)-899497514}e=d;d=c;c=b<<30|b>>>2;b=a;a=t}H[0]=H[0]+a|0;H[1]=H[1]+b|0;H[2]=H[2]+c|0;H[3]=H[3]+d|0;H[4]=H[4]+e|0},_doFinalize:function(){var data=this._data;var dataWords=data.words;var nBitsTotal=this._nDataBytes*8;var nBitsLeft=data.sigBytes*8;dataWords[nBitsLeft>>>5]|=128<<24-nBitsLeft%32;dataWords[(nBitsLeft+64>>>9<<4)+14]=Math.floor(nBitsTotal/4294967296);dataWords[(nBitsLeft+64>>>9<<4)+15]=nBitsTotal;data.sigBytes=dataWords.length*4;this._process();return this._hash},clone:function(){var clone=Hasher.clone.call(this);clone._hash=this._hash.clone();return clone}});C.SHA1=Hasher._createHelper(SHA1);C.HmacSHA1=Hasher._createHmacHelper(SHA1)})();return CryptoJS.SHA1})})(sha1);var sha256={exports:{}};(function(module,exports){(function(root,factory){{module.exports=factory(core.exports)}})(commonjsGlobal,function(CryptoJS){(function(Math){var C=CryptoJS;var C_lib=C.lib;var WordArray=C_lib.WordArray;var Hasher=C_lib.Hasher;var C_algo=C.algo;var H=[];var K=[];(function(){function isPrime(n){var sqrtN=Math.sqrt(n);for(var factor=2;factor<=sqrtN;factor++){if(!(n%factor)){return false}}return true}function getFractionalBits(n){return(n-(n|0))*4294967296|0}var n=2;var nPrime=0;while(nPrime<64){if(isPrime(n)){if(nPrime<8){H[nPrime]=getFractionalBits(Math.pow(n,1/2))}K[nPrime]=getFractionalBits(Math.pow(n,1/3));nPrime++}n++}})();var W=[];var SHA256=C_algo.SHA256=Hasher.extend({_doReset:function(){this._hash=new WordArray.init(H.slice(0))},_doProcessBlock:function(M,offset){var H=this._hash.words;var a=H[0];var b=H[1];var c=H[2];var d=H[3];var e=H[4];var f=H[5];var g=H[6];var h=H[7];for(var i=0;i<64;i++){if(i<16){W[i]=M[offset+i]|0}else{var gamma0x=W[i-15];var gamma0=(gamma0x<<25|gamma0x>>>7)^(gamma0x<<14|gamma0x>>>18)^gamma0x>>>3;var gamma1x=W[i-2];var gamma1=(gamma1x<<15|gamma1x>>>17)^(gamma1x<<13|gamma1x>>>19)^gamma1x>>>10;W[i]=gamma0+W[i-7]+gamma1+W[i-16]}var ch=e&f^~e&g;var maj=a&b^a&c^b&c;var sigma0=(a<<30|a>>>2)^(a<<19|a>>>13)^(a<<10|a>>>22);var sigma1=(e<<26|e>>>6)^(e<<21|e>>>11)^(e<<7|e>>>25);var t1=h+sigma1+ch+K[i]+W[i];var t2=sigma0+maj;h=g;g=f;f=e;e=d+t1|0;d=c;c=b;b=a;a=t1+t2|0}H[0]=H[0]+a|0;H[1]=H[1]+b|0;H[2]=H[2]+c|0;H[3]=H[3]+d|0;H[4]=H[4]+e|0;H[5]=H[5]+f|0;H[6]=H[6]+g|0;H[7]=H[7]+h|0},_doFinalize:function(){var data=this._data;var dataWords=data.words;var nBitsTotal=this._nDataBytes*8;var nBitsLeft=data.sigBytes*8;dataWords[nBitsLeft>>>5]|=128<<24-nBitsLeft%32;dataWords[(nBitsLeft+64>>>9<<4)+14]=Math.floor(nBitsTotal/4294967296);dataWords[(nBitsLeft+64>>>9<<4)+15]=nBitsTotal;data.sigBytes=dataWords.length*4;this._process();return this._hash},clone:function(){var clone=Hasher.clone.call(this);clone._hash=this._hash.clone();return clone}});C.SHA256=Hasher._createHelper(SHA256);C.HmacSHA256=Hasher._createHmacHelper(SHA256)})(Math);return CryptoJS.SHA256})})(sha256);var sha224={exports:{}};(function(module,exports){(function(root,factory,undef){{module.exports=factory(core.exports,sha256.exports)}})(commonjsGlobal,function(CryptoJS){(function(){var C=CryptoJS;var C_lib=C.lib;var WordArray=C_lib.WordArray;var C_algo=C.algo;var SHA256=C_algo.SHA256;var SHA224=C_algo.SHA224=SHA256.extend({_doReset:function(){this._hash=new WordArray.init([3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428])},_doFinalize:function(){var hash=SHA256._doFinalize.call(this);hash.sigBytes-=4;return hash}});C.SHA224=SHA256._createHelper(SHA224);C.HmacSHA224=SHA256._createHmacHelper(SHA224)})();return CryptoJS.SHA224})})(sha224);var sha512={exports:{}};(function(module,exports){(function(root,factory,undef){{module.exports=factory(core.exports,x64Core.exports)}})(commonjsGlobal,function(CryptoJS){(function(){var C=CryptoJS;var C_lib=C.lib;var Hasher=C_lib.Hasher;var C_x64=C.x64;var X64Word=C_x64.Word;var X64WordArray=C_x64.WordArray;var C_algo=C.algo;function X64Word_create(){return X64Word.create.apply(X64Word,arguments)}var K=[X64Word_create(1116352408,3609767458),X64Word_create(1899447441,602891725),X64Word_create(3049323471,3964484399),X64Word_create(3921009573,2173295548),X64Word_create(961987163,4081628472),X64Word_create(1508970993,3053834265),X64Word_create(2453635748,2937671579),X64Word_create(2870763221,3664609560),X64Word_create(3624381080,2734883394),X64Word_create(310598401,1164996542),X64Word_create(607225278,1323610764),X64Word_create(1426881987,3590304994),X64Word_create(1925078388,4068182383),X64Word_create(2162078206,991336113),X64Word_create(2614888103,633803317),X64Word_create(3248222580,3479774868),X64Word_create(3835390401,2666613458),X64Word_create(4022224774,944711139),X64Word_create(264347078,2341262773),X64Word_create(604807628,2007800933),X64Word_create(770255983,1495990901),X64Word_create(1249150122,1856431235),X64Word_create(1555081692,3175218132),X64Word_create(1996064986,2198950837),X64Word_create(2554220882,3999719339),X64Word_create(2821834349,766784016),X64Word_create(2952996808,2566594879),X64Word_create(3210313671,3203337956),X64Word_create(3336571891,1034457026),X64Word_create(3584528711,2466948901),X64Word_create(113926993,3758326383),X64Word_create(338241895,168717936),X64Word_create(666307205,1188179964),X64Word_create(773529912,1546045734),X64Word_create(1294757372,1522805485),X64Word_create(1396182291,2643833823),X64Word_create(1695183700,2343527390),X64Word_create(1986661051,1014477480),X64Word_create(2177026350,1206759142),X64Word_create(2456956037,344077627),X64Word_create(2730485921,1290863460),X64Word_create(2820302411,3158454273),X64Word_create(3259730800,3505952657),X64Word_create(3345764771,106217008),X64Word_create(3516065817,3606008344),X64Word_create(3600352804,1432725776),X64Word_create(4094571909,1467031594),X64Word_create(275423344,851169720),X64Word_create(430227734,3100823752),X64Word_create(506948616,1363258195),X64Word_create(659060556,3750685593),X64Word_create(883997877,3785050280),X64Word_create(958139571,3318307427),X64Word_create(1322822218,3812723403),X64Word_create(1537002063,2003034995),X64Word_create(1747873779,3602036899),X64Word_create(1955562222,1575990012),X64Word_create(2024104815,1125592928),X64Word_create(2227730452,2716904306),X64Word_create(2361852424,442776044),X64Word_create(2428436474,593698344),X64Word_create(2756734187,3733110249),X64Word_create(3204031479,2999351573),X64Word_create(3329325298,3815920427),X64Word_create(3391569614,3928383900),X64Word_create(3515267271,566280711),X64Word_create(3940187606,3454069534),X64Word_create(4118630271,4000239992),X64Word_create(116418474,1914138554),X64Word_create(174292421,2731055270),X64Word_create(289380356,3203993006),X64Word_create(460393269,320620315),X64Word_create(685471733,587496836),X64Word_create(852142971,1086792851),X64Word_create(1017036298,365543100),X64Word_create(1126000580,2618297676),X64Word_create(1288033470,3409855158),X64Word_create(1501505948,4234509866),X64Word_create(1607167915,987167468),X64Word_create(1816402316,1246189591)];var W=[];(function(){for(var i=0;i<80;i++){W[i]=X64Word_create()}})();var SHA512=C_algo.SHA512=Hasher.extend({_doReset:function(){this._hash=new X64WordArray.init([new X64Word.init(1779033703,4089235720),new X64Word.init(3144134277,2227873595),new X64Word.init(1013904242,4271175723),new X64Word.init(2773480762,1595750129),new X64Word.init(1359893119,2917565137),new X64Word.init(2600822924,725511199),new X64Word.init(528734635,4215389547),new X64Word.init(1541459225,327033209)])},_doProcessBlock:function(M,offset){var H=this._hash.words;var H0=H[0];var H1=H[1];var H2=H[2];var H3=H[3];var H4=H[4];var H5=H[5];var H6=H[6];var H7=H[7];var H0h=H0.high;var H0l=H0.low;var H1h=H1.high;var H1l=H1.low;var H2h=H2.high;var H2l=H2.low;var H3h=H3.high;var H3l=H3.low;var H4h=H4.high;var H4l=H4.low;var H5h=H5.high;var H5l=H5.low;var H6h=H6.high;var H6l=H6.low;var H7h=H7.high;var H7l=H7.low;var ah=H0h;var al=H0l;var bh=H1h;var bl=H1l;var ch=H2h;var cl=H2l;var dh=H3h;var dl=H3l;var eh=H4h;var el=H4l;var fh=H5h;var fl=H5l;var gh=H6h;var gl=H6l;var hh=H7h;var hl=H7l;for(var i=0;i<80;i++){var Wil;var Wih;var Wi=W[i];if(i<16){Wih=Wi.high=M[offset+i*2]|0;Wil=Wi.low=M[offset+i*2+1]|0}else{var gamma0x=W[i-15];var gamma0xh=gamma0x.high;var gamma0xl=gamma0x.low;var gamma0h=(gamma0xh>>>1|gamma0xl<<31)^(gamma0xh>>>8|gamma0xl<<24)^gamma0xh>>>7;var gamma0l=(gamma0xl>>>1|gamma0xh<<31)^(gamma0xl>>>8|gamma0xh<<24)^(gamma0xl>>>7|gamma0xh<<25);var gamma1x=W[i-2];var gamma1xh=gamma1x.high;var gamma1xl=gamma1x.low;var gamma1h=(gamma1xh>>>19|gamma1xl<<13)^(gamma1xh<<3|gamma1xl>>>29)^gamma1xh>>>6;var gamma1l=(gamma1xl>>>19|gamma1xh<<13)^(gamma1xl<<3|gamma1xh>>>29)^(gamma1xl>>>6|gamma1xh<<26);var Wi7=W[i-7];var Wi7h=Wi7.high;var Wi7l=Wi7.low;var Wi16=W[i-16];var Wi16h=Wi16.high;var Wi16l=Wi16.low;Wil=gamma0l+Wi7l;Wih=gamma0h+Wi7h+(Wil>>>0>>0?1:0);Wil=Wil+gamma1l;Wih=Wih+gamma1h+(Wil>>>0>>0?1:0);Wil=Wil+Wi16l;Wih=Wih+Wi16h+(Wil>>>0>>0?1:0);Wi.high=Wih;Wi.low=Wil}var chh=eh&fh^~eh&gh;var chl=el&fl^~el≷var majh=ah&bh^ah&ch^bh&ch;var majl=al&bl^al&cl^bl&cl;var sigma0h=(ah>>>28|al<<4)^(ah<<30|al>>>2)^(ah<<25|al>>>7);var sigma0l=(al>>>28|ah<<4)^(al<<30|ah>>>2)^(al<<25|ah>>>7);var sigma1h=(eh>>>14|el<<18)^(eh>>>18|el<<14)^(eh<<23|el>>>9);var sigma1l=(el>>>14|eh<<18)^(el>>>18|eh<<14)^(el<<23|eh>>>9);var Ki=K[i];var Kih=Ki.high;var Kil=Ki.low;var t1l=hl+sigma1l;var t1h=hh+sigma1h+(t1l>>>0>>0?1:0);var t1l=t1l+chl;var t1h=t1h+chh+(t1l>>>0>>0?1:0);var t1l=t1l+Kil;var t1h=t1h+Kih+(t1l>>>0>>0?1:0);var t1l=t1l+Wil;var t1h=t1h+Wih+(t1l>>>0>>0?1:0);var t2l=sigma0l+majl;var t2h=sigma0h+majh+(t2l>>>0>>0?1:0);hh=gh;hl=gl;gh=fh;gl=fl;fh=eh;fl=el;el=dl+t1l|0;eh=dh+t1h+(el>>>0
    >>0?1:0)|0;dh=ch;dl=cl;ch=bh;cl=bl;bh=ah;bl=al;al=t1l+t2l|0;ah=t1h+t2h+(al>>>0>>0?1:0)|0}H0l=H0.low=H0l+al;H0.high=H0h+ah+(H0l>>>0>>0?1:0);H1l=H1.low=H1l+bl;H1.high=H1h+bh+(H1l>>>0>>0?1:0);H2l=H2.low=H2l+cl;H2.high=H2h+ch+(H2l>>>0>>0?1:0);H3l=H3.low=H3l+dl;H3.high=H3h+dh+(H3l>>>0
    >>0?1:0);H4l=H4.low=H4l+el;H4.high=H4h+eh+(H4l>>>0>>0?1:0);H5l=H5.low=H5l+fl;H5.high=H5h+fh+(H5l>>>0>>0?1:0);H6l=H6.low=H6l+gl;H6.high=H6h+gh+(H6l>>>0>>0?1:0);H7l=H7.low=H7l+hl;H7.high=H7h+hh+(H7l>>>0>>0?1:0)},_doFinalize:function(){var data=this._data;var dataWords=data.words;var nBitsTotal=this._nDataBytes*8;var nBitsLeft=data.sigBytes*8;dataWords[nBitsLeft>>>5]|=128<<24-nBitsLeft%32;dataWords[(nBitsLeft+128>>>10<<5)+30]=Math.floor(nBitsTotal/4294967296);dataWords[(nBitsLeft+128>>>10<<5)+31]=nBitsTotal;data.sigBytes=dataWords.length*4;this._process();var hash=this._hash.toX32();return hash},clone:function(){var clone=Hasher.clone.call(this);clone._hash=this._hash.clone();return clone},blockSize:1024/32});C.SHA512=Hasher._createHelper(SHA512);C.HmacSHA512=Hasher._createHmacHelper(SHA512)})();return CryptoJS.SHA512})})(sha512);var sha384={exports:{}};(function(module,exports){(function(root,factory,undef){{module.exports=factory(core.exports,x64Core.exports,sha512.exports)}})(commonjsGlobal,function(CryptoJS){(function(){var C=CryptoJS;var C_x64=C.x64;var X64Word=C_x64.Word;var X64WordArray=C_x64.WordArray;var C_algo=C.algo;var SHA512=C_algo.SHA512;var SHA384=C_algo.SHA384=SHA512.extend({_doReset:function(){this._hash=new X64WordArray.init([new X64Word.init(3418070365,3238371032),new X64Word.init(1654270250,914150663),new X64Word.init(2438529370,812702999),new X64Word.init(355462360,4144912697),new X64Word.init(1731405415,4290775857),new X64Word.init(2394180231,1750603025),new X64Word.init(3675008525,1694076839),new X64Word.init(1203062813,3204075428)])},_doFinalize:function(){var hash=SHA512._doFinalize.call(this);hash.sigBytes-=16;return hash}});C.SHA384=SHA512._createHelper(SHA384);C.HmacSHA384=SHA512._createHmacHelper(SHA384)})();return CryptoJS.SHA384})})(sha384);var sha3={exports:{}};(function(module,exports){(function(root,factory,undef){{module.exports=factory(core.exports,x64Core.exports)}})(commonjsGlobal,function(CryptoJS){(function(Math){var C=CryptoJS;var C_lib=C.lib;var WordArray=C_lib.WordArray;var Hasher=C_lib.Hasher;var C_x64=C.x64;var X64Word=C_x64.Word;var C_algo=C.algo;var RHO_OFFSETS=[];var PI_INDEXES=[];var ROUND_CONSTANTS=[];(function(){var x=1,y=0;for(var t=0;t<24;t++){RHO_OFFSETS[x+5*y]=(t+1)*(t+2)/2%64;var newX=y%5;var newY=(2*x+3*y)%5;x=newX;y=newY}for(var x=0;x<5;x++){for(var y=0;y<5;y++){PI_INDEXES[x+5*y]=y+(2*x+3*y)%5*5}}var LFSR=1;for(var i=0;i<24;i++){var roundConstantMsw=0;var roundConstantLsw=0;for(var j=0;j<7;j++){if(LFSR&1){var bitPosition=(1<>>24)&16711935|(M2i<<24|M2i>>>8)&4278255360;M2i1=(M2i1<<8|M2i1>>>24)&16711935|(M2i1<<24|M2i1>>>8)&4278255360;var lane=state[i];lane.high^=M2i1;lane.low^=M2i}for(var round=0;round<24;round++){for(var x=0;x<5;x++){var tMsw=0,tLsw=0;for(var y=0;y<5;y++){var lane=state[x+5*y];tMsw^=lane.high;tLsw^=lane.low}var Tx=T[x];Tx.high=tMsw;Tx.low=tLsw}for(var x=0;x<5;x++){var Tx4=T[(x+4)%5];var Tx1=T[(x+1)%5];var Tx1Msw=Tx1.high;var Tx1Lsw=Tx1.low;var tMsw=Tx4.high^(Tx1Msw<<1|Tx1Lsw>>>31);var tLsw=Tx4.low^(Tx1Lsw<<1|Tx1Msw>>>31);for(var y=0;y<5;y++){var lane=state[x+5*y];lane.high^=tMsw;lane.low^=tLsw}}for(var laneIndex=1;laneIndex<25;laneIndex++){var tMsw;var tLsw;var lane=state[laneIndex];var laneMsw=lane.high;var laneLsw=lane.low;var rhoOffset=RHO_OFFSETS[laneIndex];if(rhoOffset<32){tMsw=laneMsw<>>32-rhoOffset;tLsw=laneLsw<>>32-rhoOffset}else{tMsw=laneLsw<>>64-rhoOffset;tLsw=laneMsw<>>64-rhoOffset}var TPiLane=T[PI_INDEXES[laneIndex]];TPiLane.high=tMsw;TPiLane.low=tLsw}var T0=T[0];var state0=state[0];T0.high=state0.high;T0.low=state0.low;for(var x=0;x<5;x++){for(var y=0;y<5;y++){var laneIndex=x+5*y;var lane=state[laneIndex];var TLane=T[laneIndex];var Tx1Lane=T[(x+1)%5+5*y];var Tx2Lane=T[(x+2)%5+5*y];lane.high=TLane.high^~Tx1Lane.high&Tx2Lane.high;lane.low=TLane.low^~Tx1Lane.low&Tx2Lane.low}}var lane=state[0];var roundConstant=ROUND_CONSTANTS[round];lane.high^=roundConstant.high;lane.low^=roundConstant.low}},_doFinalize:function(){var data=this._data;var dataWords=data.words;this._nDataBytes*8;var nBitsLeft=data.sigBytes*8;var blockSizeBits=this.blockSize*32;dataWords[nBitsLeft>>>5]|=1<<24-nBitsLeft%32;dataWords[(Math.ceil((nBitsLeft+1)/blockSizeBits)*blockSizeBits>>>5)-1]|=128;data.sigBytes=dataWords.length*4;this._process();var state=this._state;var outputLengthBytes=this.cfg.outputLength/8;var outputLengthLanes=outputLengthBytes/8;var hashWords=[];for(var i=0;i>>24)&16711935|(laneMsw<<24|laneMsw>>>8)&4278255360;laneLsw=(laneLsw<<8|laneLsw>>>24)&16711935|(laneLsw<<24|laneLsw>>>8)&4278255360;hashWords.push(laneLsw);hashWords.push(laneMsw)}return new WordArray.init(hashWords,outputLengthBytes)},clone:function(){var clone=Hasher.clone.call(this);var state=clone._state=this._state.slice(0);for(var i=0;i<25;i++){state[i]=state[i].clone()}return clone}});C.SHA3=Hasher._createHelper(SHA3);C.HmacSHA3=Hasher._createHmacHelper(SHA3)})(Math);return CryptoJS.SHA3})})(sha3);var ripemd160={exports:{}};(function(module,exports){(function(root,factory){{module.exports=factory(core.exports)}})(commonjsGlobal,function(CryptoJS){(function(Math){var C=CryptoJS;var C_lib=C.lib;var WordArray=C_lib.WordArray;var Hasher=C_lib.Hasher;var C_algo=C.algo;var _zl=WordArray.create([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13]);var _zr=WordArray.create([5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11]);var _sl=WordArray.create([11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6]);var _sr=WordArray.create([8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11]);var _hl=WordArray.create([0,1518500249,1859775393,2400959708,2840853838]);var _hr=WordArray.create([1352829926,1548603684,1836072691,2053994217,0]);var RIPEMD160=C_algo.RIPEMD160=Hasher.extend({_doReset:function(){this._hash=WordArray.create([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(M,offset){for(var i=0;i<16;i++){var offset_i=offset+i;var M_offset_i=M[offset_i];M[offset_i]=(M_offset_i<<8|M_offset_i>>>24)&16711935|(M_offset_i<<24|M_offset_i>>>8)&4278255360}var H=this._hash.words;var hl=_hl.words;var hr=_hr.words;var zl=_zl.words;var zr=_zr.words;var sl=_sl.words;var sr=_sr.words;var al,bl,cl,dl,el;var ar,br,cr,dr,er;ar=al=H[0];br=bl=H[1];cr=cl=H[2];dr=dl=H[3];er=el=H[4];var t;for(var i=0;i<80;i+=1){t=al+M[offset+zl[i]]|0;if(i<16){t+=f1(bl,cl,dl)+hl[0]}else if(i<32){t+=f2(bl,cl,dl)+hl[1]}else if(i<48){t+=f3(bl,cl,dl)+hl[2]}else if(i<64){t+=f4(bl,cl,dl)+hl[3]}else{t+=f5(bl,cl,dl)+hl[4]}t=t|0;t=rotl(t,sl[i]);t=t+el|0;al=el;el=dl;dl=rotl(cl,10);cl=bl;bl=t;t=ar+M[offset+zr[i]]|0;if(i<16){t+=f5(br,cr,dr)+hr[0]}else if(i<32){t+=f4(br,cr,dr)+hr[1]}else if(i<48){t+=f3(br,cr,dr)+hr[2]}else if(i<64){t+=f2(br,cr,dr)+hr[3]}else{t+=f1(br,cr,dr)+hr[4]}t=t|0;t=rotl(t,sr[i]);t=t+er|0;ar=er;er=dr;dr=rotl(cr,10);cr=br;br=t}t=H[1]+cl+dr|0;H[1]=H[2]+dl+er|0;H[2]=H[3]+el+ar|0;H[3]=H[4]+al+br|0;H[4]=H[0]+bl+cr|0;H[0]=t},_doFinalize:function(){var data=this._data;var dataWords=data.words;var nBitsTotal=this._nDataBytes*8;var nBitsLeft=data.sigBytes*8;dataWords[nBitsLeft>>>5]|=128<<24-nBitsLeft%32;dataWords[(nBitsLeft+64>>>9<<4)+14]=(nBitsTotal<<8|nBitsTotal>>>24)&16711935|(nBitsTotal<<24|nBitsTotal>>>8)&4278255360;data.sigBytes=(dataWords.length+1)*4;this._process();var hash=this._hash;var H=hash.words;for(var i=0;i<5;i++){var H_i=H[i];H[i]=(H_i<<8|H_i>>>24)&16711935|(H_i<<24|H_i>>>8)&4278255360}return hash},clone:function(){var clone=Hasher.clone.call(this);clone._hash=this._hash.clone();return clone}});function f1(x,y,z){return x^y^z}function f2(x,y,z){return x&y|~x&z}function f3(x,y,z){return(x|~y)^z}function f4(x,y,z){return x&z|y&~z}function f5(x,y,z){return x^(y|~z)}function rotl(x,n){return x<>>32-n}C.RIPEMD160=Hasher._createHelper(RIPEMD160);C.HmacRIPEMD160=Hasher._createHmacHelper(RIPEMD160)})();return CryptoJS.RIPEMD160})})(ripemd160);var hmac={exports:{}};(function(module,exports){(function(root,factory){{module.exports=factory(core.exports)}})(commonjsGlobal,function(CryptoJS){(function(){var C=CryptoJS;var C_lib=C.lib;var Base=C_lib.Base;var C_enc=C.enc;var Utf8=C_enc.Utf8;var C_algo=C.algo;C_algo.HMAC=Base.extend({init:function(hasher,key){hasher=this._hasher=new hasher.init;if(typeof key=="string"){key=Utf8.parse(key)}var hasherBlockSize=hasher.blockSize;var hasherBlockSizeBytes=hasherBlockSize*4;if(key.sigBytes>hasherBlockSizeBytes){key=hasher.finalize(key)}key.clamp();var oKey=this._oKey=key.clone();var iKey=this._iKey=key.clone();var oKeyWords=oKey.words;var iKeyWords=iKey.words;for(var i=0;i>>2]&255;data.sigBytes-=nPaddingBytes}};C_lib.BlockCipher=Cipher.extend({cfg:Cipher.cfg.extend({mode:CBC,padding:Pkcs7}),reset:function(){var modeCreator;Cipher.reset.call(this);var cfg=this.cfg;var iv=cfg.iv;var mode=cfg.mode;if(this._xformMode==this._ENC_XFORM_MODE){modeCreator=mode.createEncryptor}else{modeCreator=mode.createDecryptor;this._minBufferSize=1}if(this._mode&&this._mode.__creator==modeCreator){this._mode.init(this,iv&&iv.words)}else{this._mode=modeCreator.call(mode,this,iv&&iv.words);this._mode.__creator=modeCreator}},_doProcessBlock:function(words,offset){this._mode.processBlock(words,offset)},_doFinalize:function(){var finalProcessedBlocks;var padding=this.cfg.padding;if(this._xformMode==this._ENC_XFORM_MODE){padding.pad(this._data,this.blockSize);finalProcessedBlocks=this._process(!!"flush")}else{finalProcessedBlocks=this._process(!!"flush");padding.unpad(finalProcessedBlocks)}return finalProcessedBlocks},blockSize:128/32});var CipherParams=C_lib.CipherParams=Base.extend({init:function(cipherParams){this.mixIn(cipherParams)},toString:function(formatter){return(formatter||this.formatter).stringify(this)}});var C_format=C.format={};var OpenSSLFormatter=C_format.OpenSSL={stringify:function(cipherParams){var wordArray;var ciphertext=cipherParams.ciphertext;var salt=cipherParams.salt;if(salt){wordArray=WordArray.create([1398893684,1701076831]).concat(salt).concat(ciphertext)}else{wordArray=ciphertext}return wordArray.toString(Base64)},parse:function(openSSLStr){var salt;var ciphertext=Base64.parse(openSSLStr);var ciphertextWords=ciphertext.words;if(ciphertextWords[0]==1398893684&&ciphertextWords[1]==1701076831){salt=WordArray.create(ciphertextWords.slice(2,4));ciphertextWords.splice(0,4);ciphertext.sigBytes-=16}return CipherParams.create({ciphertext:ciphertext,salt:salt})}};var SerializableCipher=C_lib.SerializableCipher=Base.extend({cfg:Base.extend({format:OpenSSLFormatter}),encrypt:function(cipher,message,key,cfg){cfg=this.cfg.extend(cfg);var encryptor=cipher.createEncryptor(key,cfg);var ciphertext=encryptor.finalize(message);var cipherCfg=encryptor.cfg;return CipherParams.create({ciphertext:ciphertext,key:key,iv:cipherCfg.iv,algorithm:cipher,mode:cipherCfg.mode,padding:cipherCfg.padding,blockSize:cipher.blockSize,formatter:cfg.format})},decrypt:function(cipher,ciphertext,key,cfg){cfg=this.cfg.extend(cfg);ciphertext=this._parse(ciphertext,cfg.format);var plaintext=cipher.createDecryptor(key,cfg).finalize(ciphertext.ciphertext);return plaintext},_parse:function(ciphertext,format){if(typeof ciphertext=="string"){return format.parse(ciphertext,this)}else{return ciphertext}}});var C_kdf=C.kdf={};var OpenSSLKdf=C_kdf.OpenSSL={execute:function(password,keySize,ivSize,salt){if(!salt){salt=WordArray.random(64/8)}var key=EvpKDF.create({keySize:keySize+ivSize}).compute(password,salt);var iv=WordArray.create(key.words.slice(keySize),ivSize*4);key.sigBytes=keySize*4;return CipherParams.create({key:key,iv:iv,salt:salt})}};var PasswordBasedCipher=C_lib.PasswordBasedCipher=SerializableCipher.extend({cfg:SerializableCipher.cfg.extend({kdf:OpenSSLKdf}),encrypt:function(cipher,message,password,cfg){cfg=this.cfg.extend(cfg);var derivedParams=cfg.kdf.execute(password,cipher.keySize,cipher.ivSize);cfg.iv=derivedParams.iv;var ciphertext=SerializableCipher.encrypt.call(this,cipher,message,derivedParams.key,cfg);ciphertext.mixIn(derivedParams);return ciphertext},decrypt:function(cipher,ciphertext,password,cfg){cfg=this.cfg.extend(cfg);ciphertext=this._parse(ciphertext,cfg.format);var derivedParams=cfg.kdf.execute(password,cipher.keySize,cipher.ivSize,ciphertext.salt);cfg.iv=derivedParams.iv;var plaintext=SerializableCipher.decrypt.call(this,cipher,ciphertext,derivedParams.key,cfg);return plaintext}})}()})})(cipherCore);var modeCfb={exports:{}};(function(module,exports){(function(root,factory,undef){{module.exports=factory(core.exports,cipherCore.exports)}})(commonjsGlobal,function(CryptoJS){CryptoJS.mode.CFB=function(){var CFB=CryptoJS.lib.BlockCipherMode.extend();CFB.Encryptor=CFB.extend({processBlock:function(words,offset){var cipher=this._cipher;var blockSize=cipher.blockSize;generateKeystreamAndEncrypt.call(this,words,offset,blockSize,cipher);this._prevBlock=words.slice(offset,offset+blockSize)}});CFB.Decryptor=CFB.extend({processBlock:function(words,offset){var cipher=this._cipher;var blockSize=cipher.blockSize;var thisBlock=words.slice(offset,offset+blockSize);generateKeystreamAndEncrypt.call(this,words,offset,blockSize,cipher);this._prevBlock=thisBlock}});function generateKeystreamAndEncrypt(words,offset,blockSize,cipher){var keystream;var iv=this._iv;if(iv){keystream=iv.slice(0);this._iv=undefined}else{keystream=this._prevBlock}cipher.encryptBlock(keystream,0);for(var i=0;i>24&255)===255){var b1=word>>16&255;var b2=word>>8&255;var b3=word&255;if(b1===255){b1=0;if(b2===255){b2=0;if(b3===255){b3=0}else{++b3}}else{++b2}}else{++b1}word=0;word+=b1<<16;word+=b2<<8;word+=b3}else{word+=1<<24}return word}function incCounter(counter){if((counter[0]=incWord(counter[0]))===0){counter[1]=incWord(counter[1])}return counter}var Encryptor=CTRGladman.Encryptor=CTRGladman.extend({processBlock:function(words,offset){var cipher=this._cipher;var blockSize=cipher.blockSize;var iv=this._iv;var counter=this._counter;if(iv){counter=this._counter=iv.slice(0);this._iv=undefined}incCounter(counter);var keystream=counter.slice(0);cipher.encryptBlock(keystream,0);for(var i=0;i>>2]|=nPaddingBytes<<24-lastBytePos%4*8;data.sigBytes+=nPaddingBytes},unpad:function(data){var nPaddingBytes=data.words[data.sigBytes-1>>>2]&255;data.sigBytes-=nPaddingBytes}};return CryptoJS.pad.Ansix923})})(padAnsix923);var padIso10126={exports:{}};(function(module,exports){(function(root,factory,undef){{module.exports=factory(core.exports,cipherCore.exports)}})(commonjsGlobal,function(CryptoJS){CryptoJS.pad.Iso10126={pad:function(data,blockSize){var blockSizeBytes=blockSize*4;var nPaddingBytes=blockSizeBytes-data.sigBytes%blockSizeBytes;data.concat(CryptoJS.lib.WordArray.random(nPaddingBytes-1)).concat(CryptoJS.lib.WordArray.create([nPaddingBytes<<24],1))},unpad:function(data){var nPaddingBytes=data.words[data.sigBytes-1>>>2]&255;data.sigBytes-=nPaddingBytes}};return CryptoJS.pad.Iso10126})})(padIso10126);var padIso97971={exports:{}};(function(module,exports){(function(root,factory,undef){{module.exports=factory(core.exports,cipherCore.exports)}})(commonjsGlobal,function(CryptoJS){CryptoJS.pad.Iso97971={pad:function(data,blockSize){data.concat(CryptoJS.lib.WordArray.create([2147483648],1));CryptoJS.pad.ZeroPadding.pad(data,blockSize)},unpad:function(data){CryptoJS.pad.ZeroPadding.unpad(data);data.sigBytes--}};return CryptoJS.pad.Iso97971})})(padIso97971);var padZeropadding={exports:{}};(function(module,exports){(function(root,factory,undef){{module.exports=factory(core.exports,cipherCore.exports)}})(commonjsGlobal,function(CryptoJS){CryptoJS.pad.ZeroPadding={pad:function(data,blockSize){var blockSizeBytes=blockSize*4;data.clamp();data.sigBytes+=blockSizeBytes-(data.sigBytes%blockSizeBytes||blockSizeBytes)},unpad:function(data){var dataWords=data.words;var i=data.sigBytes-1;for(var i=data.sigBytes-1;i>=0;i--){if(dataWords[i>>>2]>>>24-i%4*8&255){data.sigBytes=i+1;break}}}};return CryptoJS.pad.ZeroPadding})})(padZeropadding);var padNopadding={exports:{}};(function(module,exports){(function(root,factory,undef){{module.exports=factory(core.exports,cipherCore.exports)}})(commonjsGlobal,function(CryptoJS){CryptoJS.pad.NoPadding={pad:function(){},unpad:function(){}};return CryptoJS.pad.NoPadding})})(padNopadding);var formatHex={exports:{}};(function(module,exports){(function(root,factory,undef){{module.exports=factory(core.exports,cipherCore.exports)}})(commonjsGlobal,function(CryptoJS){(function(undefined$1){var C=CryptoJS;var C_lib=C.lib;var CipherParams=C_lib.CipherParams;var C_enc=C.enc;var Hex=C_enc.Hex;var C_format=C.format;C_format.Hex={stringify:function(cipherParams){return cipherParams.ciphertext.toString(Hex)},parse:function(input){var ciphertext=Hex.parse(input);return CipherParams.create({ciphertext:ciphertext})}}})();return CryptoJS.format.Hex})})(formatHex);var aes={exports:{}};(function(module,exports){(function(root,factory,undef){{module.exports=factory(core.exports,encBase64.exports,md5.exports,evpkdf.exports,cipherCore.exports)}})(commonjsGlobal,function(CryptoJS){(function(){var C=CryptoJS;var C_lib=C.lib;var BlockCipher=C_lib.BlockCipher;var C_algo=C.algo;var SBOX=[];var INV_SBOX=[];var SUB_MIX_0=[];var SUB_MIX_1=[];var SUB_MIX_2=[];var SUB_MIX_3=[];var INV_SUB_MIX_0=[];var INV_SUB_MIX_1=[];var INV_SUB_MIX_2=[];var INV_SUB_MIX_3=[];(function(){var d=[];for(var i=0;i<256;i++){if(i<128){d[i]=i<<1}else{d[i]=i<<1^283}}var x=0;var xi=0;for(var i=0;i<256;i++){var sx=xi^xi<<1^xi<<2^xi<<3^xi<<4;sx=sx>>>8^sx&255^99;SBOX[x]=sx;INV_SBOX[sx]=x;var x2=d[x];var x4=d[x2];var x8=d[x4];var t=d[sx]*257^sx*16843008;SUB_MIX_0[x]=t<<24|t>>>8;SUB_MIX_1[x]=t<<16|t>>>16;SUB_MIX_2[x]=t<<8|t>>>24;SUB_MIX_3[x]=t;var t=x8*16843009^x4*65537^x2*257^x*16843008;INV_SUB_MIX_0[sx]=t<<24|t>>>8;INV_SUB_MIX_1[sx]=t<<16|t>>>16;INV_SUB_MIX_2[sx]=t<<8|t>>>24;INV_SUB_MIX_3[sx]=t;if(!x){x=xi=1}else{x=x2^d[d[d[x8^x2]]];xi^=d[d[xi]]}}})();var RCON=[0,1,2,4,8,16,32,64,128,27,54];var AES=C_algo.AES=BlockCipher.extend({_doReset:function(){var t;if(this._nRounds&&this._keyPriorReset===this._key){return}var key=this._keyPriorReset=this._key;var keyWords=key.words;var keySize=key.sigBytes/4;var nRounds=this._nRounds=keySize+6;var ksRows=(nRounds+1)*4;var keySchedule=this._keySchedule=[];for(var ksRow=0;ksRow>>24;t=SBOX[t>>>24]<<24|SBOX[t>>>16&255]<<16|SBOX[t>>>8&255]<<8|SBOX[t&255];t^=RCON[ksRow/keySize|0]<<24}else if(keySize>6&&ksRow%keySize==4){t=SBOX[t>>>24]<<24|SBOX[t>>>16&255]<<16|SBOX[t>>>8&255]<<8|SBOX[t&255]}keySchedule[ksRow]=keySchedule[ksRow-keySize]^t}}var invKeySchedule=this._invKeySchedule=[];for(var invKsRow=0;invKsRow>>24]]^INV_SUB_MIX_1[SBOX[t>>>16&255]]^INV_SUB_MIX_2[SBOX[t>>>8&255]]^INV_SUB_MIX_3[SBOX[t&255]]}}},encryptBlock:function(M,offset){this._doCryptBlock(M,offset,this._keySchedule,SUB_MIX_0,SUB_MIX_1,SUB_MIX_2,SUB_MIX_3,SBOX)},decryptBlock:function(M,offset){var t=M[offset+1];M[offset+1]=M[offset+3];M[offset+3]=t;this._doCryptBlock(M,offset,this._invKeySchedule,INV_SUB_MIX_0,INV_SUB_MIX_1,INV_SUB_MIX_2,INV_SUB_MIX_3,INV_SBOX);var t=M[offset+1];M[offset+1]=M[offset+3];M[offset+3]=t},_doCryptBlock:function(M,offset,keySchedule,SUB_MIX_0,SUB_MIX_1,SUB_MIX_2,SUB_MIX_3,SBOX){var nRounds=this._nRounds;var s0=M[offset]^keySchedule[0];var s1=M[offset+1]^keySchedule[1];var s2=M[offset+2]^keySchedule[2];var s3=M[offset+3]^keySchedule[3];var ksRow=4;for(var round=1;round>>24]^SUB_MIX_1[s1>>>16&255]^SUB_MIX_2[s2>>>8&255]^SUB_MIX_3[s3&255]^keySchedule[ksRow++];var t1=SUB_MIX_0[s1>>>24]^SUB_MIX_1[s2>>>16&255]^SUB_MIX_2[s3>>>8&255]^SUB_MIX_3[s0&255]^keySchedule[ksRow++];var t2=SUB_MIX_0[s2>>>24]^SUB_MIX_1[s3>>>16&255]^SUB_MIX_2[s0>>>8&255]^SUB_MIX_3[s1&255]^keySchedule[ksRow++];var t3=SUB_MIX_0[s3>>>24]^SUB_MIX_1[s0>>>16&255]^SUB_MIX_2[s1>>>8&255]^SUB_MIX_3[s2&255]^keySchedule[ksRow++];s0=t0;s1=t1;s2=t2;s3=t3}var t0=(SBOX[s0>>>24]<<24|SBOX[s1>>>16&255]<<16|SBOX[s2>>>8&255]<<8|SBOX[s3&255])^keySchedule[ksRow++];var t1=(SBOX[s1>>>24]<<24|SBOX[s2>>>16&255]<<16|SBOX[s3>>>8&255]<<8|SBOX[s0&255])^keySchedule[ksRow++];var t2=(SBOX[s2>>>24]<<24|SBOX[s3>>>16&255]<<16|SBOX[s0>>>8&255]<<8|SBOX[s1&255])^keySchedule[ksRow++];var t3=(SBOX[s3>>>24]<<24|SBOX[s0>>>16&255]<<16|SBOX[s1>>>8&255]<<8|SBOX[s2&255])^keySchedule[ksRow++];M[offset]=t0;M[offset+1]=t1;M[offset+2]=t2;M[offset+3]=t3},keySize:256/32});C.AES=BlockCipher._createHelper(AES)})();return CryptoJS.AES})})(aes);var tripledes={exports:{}};(function(module,exports){(function(root,factory,undef){{module.exports=factory(core.exports,encBase64.exports,md5.exports,evpkdf.exports,cipherCore.exports)}})(commonjsGlobal,function(CryptoJS){(function(){var C=CryptoJS;var C_lib=C.lib;var WordArray=C_lib.WordArray;var BlockCipher=C_lib.BlockCipher;var C_algo=C.algo;var PC1=[57,49,41,33,25,17,9,1,58,50,42,34,26,18,10,2,59,51,43,35,27,19,11,3,60,52,44,36,63,55,47,39,31,23,15,7,62,54,46,38,30,22,14,6,61,53,45,37,29,21,13,5,28,20,12,4];var PC2=[14,17,11,24,1,5,3,28,15,6,21,10,23,19,12,4,26,8,16,7,27,20,13,2,41,52,31,37,47,55,30,40,51,45,33,48,44,49,39,56,34,53,46,42,50,36,29,32];var BIT_SHIFTS=[1,2,4,6,8,10,12,14,15,17,19,21,23,25,27,28];var SBOX_P=[{0:8421888,268435456:32768,536870912:8421378,805306368:2,1073741824:512,1342177280:8421890,1610612736:8389122,1879048192:8388608,2147483648:514,2415919104:8389120,2684354560:33280,2952790016:8421376,3221225472:32770,3489660928:8388610,3758096384:0,4026531840:33282,134217728:0,402653184:8421890,671088640:33282,939524096:32768,1207959552:8421888,1476395008:512,1744830464:8421378,2013265920:2,2281701376:8389120,2550136832:33280,2818572288:8421376,3087007744:8389122,3355443200:8388610,3623878656:32770,3892314112:514,4160749568:8388608,1:32768,268435457:2,536870913:8421888,805306369:8388608,1073741825:8421378,1342177281:33280,1610612737:512,1879048193:8389122,2147483649:8421890,2415919105:8421376,2684354561:8388610,2952790017:33282,3221225473:514,3489660929:8389120,3758096385:32770,4026531841:0,134217729:8421890,402653185:8421376,671088641:8388608,939524097:512,1207959553:32768,1476395009:8388610,1744830465:2,2013265921:33282,2281701377:32770,2550136833:8389122,2818572289:514,3087007745:8421888,3355443201:8389120,3623878657:0,3892314113:33280,4160749569:8421378},{0:1074282512,16777216:16384,33554432:524288,50331648:1074266128,67108864:1073741840,83886080:1074282496,100663296:1073758208,117440512:16,134217728:540672,150994944:1073758224,167772160:1073741824,184549376:540688,201326592:524304,218103808:0,234881024:16400,251658240:1074266112,8388608:1073758208,25165824:540688,41943040:16,58720256:1073758224,75497472:1074282512,92274688:1073741824,109051904:524288,125829120:1074266128,142606336:524304,159383552:0,176160768:16384,192937984:1074266112,209715200:1073741840,226492416:540672,243269632:1074282496,260046848:16400,268435456:0,285212672:1074266128,301989888:1073758224,318767104:1074282496,335544320:1074266112,352321536:16,369098752:540688,385875968:16384,402653184:16400,419430400:524288,436207616:524304,452984832:1073741840,469762048:540672,486539264:1073758208,503316480:1073741824,520093696:1074282512,276824064:540688,293601280:524288,310378496:1074266112,327155712:16384,343932928:1073758208,360710144:1074282512,377487360:16,394264576:1073741824,411041792:1074282496,427819008:1073741840,444596224:1073758224,461373440:524304,478150656:0,494927872:16400,511705088:1074266128,528482304:540672},{0:260,1048576:0,2097152:67109120,3145728:65796,4194304:65540,5242880:67108868,6291456:67174660,7340032:67174400,8388608:67108864,9437184:67174656,10485760:65792,11534336:67174404,12582912:67109124,13631488:65536,14680064:4,15728640:256,524288:67174656,1572864:67174404,2621440:0,3670016:67109120,4718592:67108868,5767168:65536,6815744:65540,7864320:260,8912896:4,9961472:256,11010048:67174400,12058624:65796,13107200:65792,14155776:67109124,15204352:67174660,16252928:67108864,16777216:67174656,17825792:65540,18874368:65536,19922944:67109120,20971520:256,22020096:67174660,23068672:67108868,24117248:0,25165824:67109124,26214400:67108864,27262976:4,28311552:65792,29360128:67174400,30408704:260,31457280:65796,32505856:67174404,17301504:67108864,18350080:260,19398656:67174656,20447232:0,21495808:65540,22544384:67109120,23592960:256,24641536:67174404,25690112:65536,26738688:67174660,27787264:65796,28835840:67108868,29884416:67109124,30932992:67174400,31981568:4,33030144:65792},{0:2151682048,65536:2147487808,131072:4198464,196608:2151677952,262144:0,327680:4198400,393216:2147483712,458752:4194368,524288:2147483648,589824:4194304,655360:64,720896:2147487744,786432:2151678016,851968:4160,917504:4096,983040:2151682112,32768:2147487808,98304:64,163840:2151678016,229376:2147487744,294912:4198400,360448:2151682112,425984:0,491520:2151677952,557056:4096,622592:2151682048,688128:4194304,753664:4160,819200:2147483648,884736:4194368,950272:4198464,1015808:2147483712,1048576:4194368,1114112:4198400,1179648:2147483712,1245184:0,1310720:4160,1376256:2151678016,1441792:2151682048,1507328:2147487808,1572864:2151682112,1638400:2147483648,1703936:2151677952,1769472:4198464,1835008:2147487744,1900544:4194304,1966080:64,2031616:4096,1081344:2151677952,1146880:2151682112,1212416:0,1277952:4198400,1343488:4194368,1409024:2147483648,1474560:2147487808,1540096:64,1605632:2147483712,1671168:4096,1736704:2147487744,1802240:2151678016,1867776:4160,1933312:2151682048,1998848:4194304,2064384:4198464},{0:128,4096:17039360,8192:262144,12288:536870912,16384:537133184,20480:16777344,24576:553648256,28672:262272,32768:16777216,36864:537133056,40960:536871040,45056:553910400,49152:553910272,53248:0,57344:17039488,61440:553648128,2048:17039488,6144:553648256,10240:128,14336:17039360,18432:262144,22528:537133184,26624:553910272,30720:536870912,34816:537133056,38912:0,43008:553910400,47104:16777344,51200:536871040,55296:553648128,59392:16777216,63488:262272,65536:262144,69632:128,73728:536870912,77824:553648256,81920:16777344,86016:553910272,90112:537133184,94208:16777216,98304:553910400,102400:553648128,106496:17039360,110592:537133056,114688:262272,118784:536871040,122880:0,126976:17039488,67584:553648256,71680:16777216,75776:17039360,79872:537133184,83968:536870912,88064:17039488,92160:128,96256:553910272,100352:262272,104448:553910400,108544:0,112640:553648128,116736:16777344,120832:262144,124928:537133056,129024:536871040},{0:268435464,256:8192,512:270532608,768:270540808,1024:268443648,1280:2097152,1536:2097160,1792:268435456,2048:0,2304:268443656,2560:2105344,2816:8,3072:270532616,3328:2105352,3584:8200,3840:270540800,128:270532608,384:270540808,640:8,896:2097152,1152:2105352,1408:268435464,1664:268443648,1920:8200,2176:2097160,2432:8192,2688:268443656,2944:270532616,3200:0,3456:270540800,3712:2105344,3968:268435456,4096:268443648,4352:270532616,4608:270540808,4864:8200,5120:2097152,5376:268435456,5632:268435464,5888:2105344,6144:2105352,6400:0,6656:8,6912:270532608,7168:8192,7424:268443656,7680:270540800,7936:2097160,4224:8,4480:2105344,4736:2097152,4992:268435464,5248:268443648,5504:8200,5760:270540808,6016:270532608,6272:270540800,6528:270532616,6784:8192,7040:2105352,7296:2097160,7552:0,7808:268435456,8064:268443656},{0:1048576,16:33555457,32:1024,48:1049601,64:34604033,80:0,96:1,112:34603009,128:33555456,144:1048577,160:33554433,176:34604032,192:34603008,208:1025,224:1049600,240:33554432,8:34603009,24:0,40:33555457,56:34604032,72:1048576,88:33554433,104:33554432,120:1025,136:1049601,152:33555456,168:34603008,184:1048577,200:1024,216:34604033,232:1,248:1049600,256:33554432,272:1048576,288:33555457,304:34603009,320:1048577,336:33555456,352:34604032,368:1049601,384:1025,400:34604033,416:1049600,432:1,448:0,464:34603008,480:33554433,496:1024,264:1049600,280:33555457,296:34603009,312:1,328:33554432,344:1048576,360:1025,376:34604032,392:33554433,408:34603008,424:0,440:34604033,456:1049601,472:1024,488:33555456,504:1048577},{0:134219808,1:131072,2:134217728,3:32,4:131104,5:134350880,6:134350848,7:2048,8:134348800,9:134219776,10:133120,11:134348832,12:2080,13:0,14:134217760,15:133152,2147483648:2048,2147483649:134350880,2147483650:134219808,2147483651:134217728,2147483652:134348800,2147483653:133120,2147483654:133152,2147483655:32,2147483656:134217760,2147483657:2080,2147483658:131104,2147483659:134350848,2147483660:0,2147483661:134348832,2147483662:134219776,2147483663:131072,16:133152,17:134350848,18:32,19:2048,20:134219776,21:134217760,22:134348832,23:131072,24:0,25:131104,26:134348800,27:134219808,28:134350880,29:133120,30:2080,31:134217728,2147483664:131072,2147483665:2048,2147483666:134348832,2147483667:133152,2147483668:32,2147483669:134348800,2147483670:134217728,2147483671:134219808,2147483672:134350880,2147483673:134217760,2147483674:134219776,2147483675:0,2147483676:133120,2147483677:2080,2147483678:131104,2147483679:134350848}];var SBOX_MASK=[4160749569,528482304,33030144,2064384,129024,8064,504,2147483679];var DES=C_algo.DES=BlockCipher.extend({_doReset:function(){var key=this._key;var keyWords=key.words;var keyBits=[];for(var i=0;i<56;i++){var keyBitPos=PC1[i]-1;keyBits[i]=keyWords[keyBitPos>>>5]>>>31-keyBitPos%32&1}var subKeys=this._subKeys=[];for(var nSubKey=0;nSubKey<16;nSubKey++){var subKey=subKeys[nSubKey]=[];var bitShift=BIT_SHIFTS[nSubKey];for(var i=0;i<24;i++){subKey[i/6|0]|=keyBits[(PC2[i]-1+bitShift)%28]<<31-i%6;subKey[4+(i/6|0)]|=keyBits[28+(PC2[i+24]-1+bitShift)%28]<<31-i%6}subKey[0]=subKey[0]<<1|subKey[0]>>>31;for(var i=1;i<7;i++){subKey[i]=subKey[i]>>>(i-1)*4+3}subKey[7]=subKey[7]<<5|subKey[7]>>>27}var invSubKeys=this._invSubKeys=[];for(var i=0;i<16;i++){invSubKeys[i]=subKeys[15-i]}},encryptBlock:function(M,offset){this._doCryptBlock(M,offset,this._subKeys)},decryptBlock:function(M,offset){this._doCryptBlock(M,offset,this._invSubKeys)},_doCryptBlock:function(M,offset,subKeys){this._lBlock=M[offset];this._rBlock=M[offset+1];exchangeLR.call(this,4,252645135);exchangeLR.call(this,16,65535);exchangeRL.call(this,2,858993459);exchangeRL.call(this,8,16711935);exchangeLR.call(this,1,1431655765);for(var round=0;round<16;round++){var subKey=subKeys[round];var lBlock=this._lBlock;var rBlock=this._rBlock;var f=0;for(var i=0;i<8;i++){f|=SBOX_P[i][((rBlock^subKey[i])&SBOX_MASK[i])>>>0]}this._lBlock=rBlock;this._rBlock=lBlock^f}var t=this._lBlock;this._lBlock=this._rBlock;this._rBlock=t;exchangeLR.call(this,1,1431655765);exchangeRL.call(this,8,16711935);exchangeRL.call(this,2,858993459);exchangeLR.call(this,16,65535);exchangeLR.call(this,4,252645135);M[offset]=this._lBlock;M[offset+1]=this._rBlock},keySize:64/32,ivSize:64/32,blockSize:64/32});function exchangeLR(offset,mask){var t=(this._lBlock>>>offset^this._rBlock)&mask;this._rBlock^=t;this._lBlock^=t<>>offset^this._lBlock)&mask;this._lBlock^=t;this._rBlock^=t<192.")}var key1=keyWords.slice(0,2);var key2=keyWords.length<4?keyWords.slice(0,2):keyWords.slice(2,4);var key3=keyWords.length<6?keyWords.slice(0,2):keyWords.slice(4,6);this._des1=DES.createEncryptor(WordArray.create(key1));this._des2=DES.createEncryptor(WordArray.create(key2));this._des3=DES.createEncryptor(WordArray.create(key3))},encryptBlock:function(M,offset){this._des1.encryptBlock(M,offset);this._des2.decryptBlock(M,offset);this._des3.encryptBlock(M,offset)},decryptBlock:function(M,offset){this._des3.decryptBlock(M,offset);this._des2.encryptBlock(M,offset);this._des1.decryptBlock(M,offset)},keySize:192/32,ivSize:64/32,blockSize:64/32});C.TripleDES=BlockCipher._createHelper(TripleDES)})();return CryptoJS.TripleDES})})(tripledes);var rc4={exports:{}};(function(module,exports){(function(root,factory,undef){{module.exports=factory(core.exports,encBase64.exports,md5.exports,evpkdf.exports,cipherCore.exports)}})(commonjsGlobal,function(CryptoJS){(function(){var C=CryptoJS;var C_lib=C.lib;var StreamCipher=C_lib.StreamCipher;var C_algo=C.algo;var RC4=C_algo.RC4=StreamCipher.extend({_doReset:function(){var key=this._key;var keyWords=key.words;var keySigBytes=key.sigBytes;var S=this._S=[];for(var i=0;i<256;i++){S[i]=i}for(var i=0,j=0;i<256;i++){var keyByteIndex=i%keySigBytes;var keyByte=keyWords[keyByteIndex>>>2]>>>24-keyByteIndex%4*8&255;j=(j+S[i]+keyByte)%256;var t=S[i];S[i]=S[j];S[j]=t}this._i=this._j=0},_doProcessBlock:function(M,offset){M[offset]^=generateKeystreamWord.call(this)},keySize:256/32,ivSize:0});function generateKeystreamWord(){var S=this._S;var i=this._i;var j=this._j;var keystreamWord=0;for(var n=0;n<4;n++){i=(i+1)%256;j=(j+S[i])%256;var t=S[i];S[i]=S[j];S[j]=t;keystreamWord|=S[(S[i]+S[j])%256]<<24-n*8}this._i=i;this._j=j;return keystreamWord}C.RC4=StreamCipher._createHelper(RC4);var RC4Drop=C_algo.RC4Drop=RC4.extend({cfg:RC4.cfg.extend({drop:192}),_doReset:function(){RC4._doReset.call(this);for(var i=this.cfg.drop;i>0;i--){generateKeystreamWord.call(this)}}});C.RC4Drop=StreamCipher._createHelper(RC4Drop)})();return CryptoJS.RC4})})(rc4);var rabbit={exports:{}};(function(module,exports){(function(root,factory,undef){{module.exports=factory(core.exports,encBase64.exports,md5.exports,evpkdf.exports,cipherCore.exports)}})(commonjsGlobal,function(CryptoJS){(function(){var C=CryptoJS;var C_lib=C.lib;var StreamCipher=C_lib.StreamCipher;var C_algo=C.algo;var S=[];var C_=[];var G=[];var Rabbit=C_algo.Rabbit=StreamCipher.extend({_doReset:function(){var K=this._key.words;var iv=this.cfg.iv;for(var i=0;i<4;i++){K[i]=(K[i]<<8|K[i]>>>24)&16711935|(K[i]<<24|K[i]>>>8)&4278255360}var X=this._X=[K[0],K[3]<<16|K[2]>>>16,K[1],K[0]<<16|K[3]>>>16,K[2],K[1]<<16|K[0]>>>16,K[3],K[2]<<16|K[1]>>>16];var C=this._C=[K[2]<<16|K[2]>>>16,K[0]&4294901760|K[1]&65535,K[3]<<16|K[3]>>>16,K[1]&4294901760|K[2]&65535,K[0]<<16|K[0]>>>16,K[2]&4294901760|K[3]&65535,K[1]<<16|K[1]>>>16,K[3]&4294901760|K[0]&65535];this._b=0;for(var i=0;i<4;i++){nextState.call(this)}for(var i=0;i<8;i++){C[i]^=X[i+4&7]}if(iv){var IV=iv.words;var IV_0=IV[0];var IV_1=IV[1];var i0=(IV_0<<8|IV_0>>>24)&16711935|(IV_0<<24|IV_0>>>8)&4278255360;var i2=(IV_1<<8|IV_1>>>24)&16711935|(IV_1<<24|IV_1>>>8)&4278255360;var i1=i0>>>16|i2&4294901760;var i3=i2<<16|i0&65535;C[0]^=i0;C[1]^=i1;C[2]^=i2;C[3]^=i3;C[4]^=i0;C[5]^=i1;C[6]^=i2;C[7]^=i3;for(var i=0;i<4;i++){nextState.call(this)}}},_doProcessBlock:function(M,offset){var X=this._X;nextState.call(this);S[0]=X[0]^X[5]>>>16^X[3]<<16;S[1]=X[2]^X[7]>>>16^X[5]<<16;S[2]=X[4]^X[1]>>>16^X[7]<<16;S[3]=X[6]^X[3]>>>16^X[1]<<16;for(var i=0;i<4;i++){S[i]=(S[i]<<8|S[i]>>>24)&16711935|(S[i]<<24|S[i]>>>8)&4278255360;M[offset+i]^=S[i]}},blockSize:128/32,ivSize:64/32});function nextState(){var X=this._X;var C=this._C;for(var i=0;i<8;i++){C_[i]=C[i]}C[0]=C[0]+1295307597+this._b|0;C[1]=C[1]+3545052371+(C[0]>>>0>>0?1:0)|0;C[2]=C[2]+886263092+(C[1]>>>0>>0?1:0)|0;C[3]=C[3]+1295307597+(C[2]>>>0>>0?1:0)|0;C[4]=C[4]+3545052371+(C[3]>>>0>>0?1:0)|0;C[5]=C[5]+886263092+(C[4]>>>0>>0?1:0)|0;C[6]=C[6]+1295307597+(C[5]>>>0>>0?1:0)|0;C[7]=C[7]+3545052371+(C[6]>>>0>>0?1:0)|0;this._b=C[7]>>>0>>0?1:0;for(var i=0;i<8;i++){var gx=X[i]+C[i];var ga=gx&65535;var gb=gx>>>16;var gh=((ga*ga>>>17)+ga*gb>>>15)+gb*gb;var gl=((gx&4294901760)*gx|0)+((gx&65535)*gx|0);G[i]=gh^gl}X[0]=G[0]+(G[7]<<16|G[7]>>>16)+(G[6]<<16|G[6]>>>16)|0;X[1]=G[1]+(G[0]<<8|G[0]>>>24)+G[7]|0;X[2]=G[2]+(G[1]<<16|G[1]>>>16)+(G[0]<<16|G[0]>>>16)|0;X[3]=G[3]+(G[2]<<8|G[2]>>>24)+G[1]|0;X[4]=G[4]+(G[3]<<16|G[3]>>>16)+(G[2]<<16|G[2]>>>16)|0;X[5]=G[5]+(G[4]<<8|G[4]>>>24)+G[3]|0;X[6]=G[6]+(G[5]<<16|G[5]>>>16)+(G[4]<<16|G[4]>>>16)|0;X[7]=G[7]+(G[6]<<8|G[6]>>>24)+G[5]|0}C.Rabbit=StreamCipher._createHelper(Rabbit)})();return CryptoJS.Rabbit})})(rabbit);var rabbitLegacy={exports:{}};(function(module,exports){(function(root,factory,undef){{module.exports=factory(core.exports,encBase64.exports,md5.exports,evpkdf.exports,cipherCore.exports)}})(commonjsGlobal,function(CryptoJS){(function(){var C=CryptoJS;var C_lib=C.lib;var StreamCipher=C_lib.StreamCipher;var C_algo=C.algo;var S=[];var C_=[];var G=[];var RabbitLegacy=C_algo.RabbitLegacy=StreamCipher.extend({_doReset:function(){var K=this._key.words;var iv=this.cfg.iv;var X=this._X=[K[0],K[3]<<16|K[2]>>>16,K[1],K[0]<<16|K[3]>>>16,K[2],K[1]<<16|K[0]>>>16,K[3],K[2]<<16|K[1]>>>16];var C=this._C=[K[2]<<16|K[2]>>>16,K[0]&4294901760|K[1]&65535,K[3]<<16|K[3]>>>16,K[1]&4294901760|K[2]&65535,K[0]<<16|K[0]>>>16,K[2]&4294901760|K[3]&65535,K[1]<<16|K[1]>>>16,K[3]&4294901760|K[0]&65535];this._b=0;for(var i=0;i<4;i++){nextState.call(this)}for(var i=0;i<8;i++){C[i]^=X[i+4&7]}if(iv){var IV=iv.words;var IV_0=IV[0];var IV_1=IV[1];var i0=(IV_0<<8|IV_0>>>24)&16711935|(IV_0<<24|IV_0>>>8)&4278255360;var i2=(IV_1<<8|IV_1>>>24)&16711935|(IV_1<<24|IV_1>>>8)&4278255360;var i1=i0>>>16|i2&4294901760;var i3=i2<<16|i0&65535;C[0]^=i0;C[1]^=i1;C[2]^=i2;C[3]^=i3;C[4]^=i0;C[5]^=i1;C[6]^=i2;C[7]^=i3;for(var i=0;i<4;i++){nextState.call(this)}}},_doProcessBlock:function(M,offset){var X=this._X;nextState.call(this);S[0]=X[0]^X[5]>>>16^X[3]<<16;S[1]=X[2]^X[7]>>>16^X[5]<<16;S[2]=X[4]^X[1]>>>16^X[7]<<16;S[3]=X[6]^X[3]>>>16^X[1]<<16;for(var i=0;i<4;i++){S[i]=(S[i]<<8|S[i]>>>24)&16711935|(S[i]<<24|S[i]>>>8)&4278255360;M[offset+i]^=S[i]}},blockSize:128/32,ivSize:64/32});function nextState(){var X=this._X;var C=this._C;for(var i=0;i<8;i++){C_[i]=C[i]}C[0]=C[0]+1295307597+this._b|0;C[1]=C[1]+3545052371+(C[0]>>>0>>0?1:0)|0;C[2]=C[2]+886263092+(C[1]>>>0>>0?1:0)|0;C[3]=C[3]+1295307597+(C[2]>>>0>>0?1:0)|0;C[4]=C[4]+3545052371+(C[3]>>>0>>0?1:0)|0;C[5]=C[5]+886263092+(C[4]>>>0>>0?1:0)|0;C[6]=C[6]+1295307597+(C[5]>>>0>>0?1:0)|0;C[7]=C[7]+3545052371+(C[6]>>>0>>0?1:0)|0;this._b=C[7]>>>0>>0?1:0;for(var i=0;i<8;i++){var gx=X[i]+C[i];var ga=gx&65535;var gb=gx>>>16;var gh=((ga*ga>>>17)+ga*gb>>>15)+gb*gb;var gl=((gx&4294901760)*gx|0)+((gx&65535)*gx|0);G[i]=gh^gl}X[0]=G[0]+(G[7]<<16|G[7]>>>16)+(G[6]<<16|G[6]>>>16)|0;X[1]=G[1]+(G[0]<<8|G[0]>>>24)+G[7]|0;X[2]=G[2]+(G[1]<<16|G[1]>>>16)+(G[0]<<16|G[0]>>>16)|0;X[3]=G[3]+(G[2]<<8|G[2]>>>24)+G[1]|0;X[4]=G[4]+(G[3]<<16|G[3]>>>16)+(G[2]<<16|G[2]>>>16)|0;X[5]=G[5]+(G[4]<<8|G[4]>>>24)+G[3]|0;X[6]=G[6]+(G[5]<<16|G[5]>>>16)+(G[4]<<16|G[4]>>>16)|0;X[7]=G[7]+(G[6]<<8|G[6]>>>24)+G[5]|0}C.RabbitLegacy=StreamCipher._createHelper(RabbitLegacy)})();return CryptoJS.RabbitLegacy})})(rabbitLegacy);(function(module,exports){(function(root,factory,undef){{module.exports=factory(core.exports,x64Core.exports,libTypedarrays.exports,encUtf16.exports,encBase64.exports,encBase64url.exports,md5.exports,sha1.exports,sha256.exports,sha224.exports,sha512.exports,sha384.exports,sha3.exports,ripemd160.exports,hmac.exports,pbkdf2.exports,evpkdf.exports,cipherCore.exports,modeCfb.exports,modeCtr.exports,modeCtrGladman.exports,modeOfb.exports,modeEcb.exports,padAnsix923.exports,padIso10126.exports,padIso97971.exports,padZeropadding.exports,padNopadding.exports,formatHex.exports,aes.exports,tripledes.exports,rc4.exports,rabbit.exports,rabbitLegacy.exports)}})(commonjsGlobal,function(CryptoJS){return CryptoJS})})(cryptoJs);var exports$2={},reDigits=/^\d+$/;exports$2.io=io;exports$2.SHA1=function(string){return cryptoJs.exports.SHA1(string).toString()};exports$2.AES={decrypt:function(string,fgh){return cryptoJs.exports.AES.decrypt(string,fgh).toString(cryptoJs.exports.enc.Utf8)},encrypt:function(string,fgh){return cryptoJs.exports.AES.encrypt(string,fgh).toString()}};exports$2.ssplit=function(string,seperator){var components=string.split(seperator);return[components.shift(),components.join(seperator)]};exports$2.activeElement=function(){try{return document.activeElement}catch(e){return}};exports$2.isDigits=function(value){return reDigits.test(value)};exports$2.template=function(str,map){return str&&str.replace(/{(\w+)}/gi,function(outer,inner){return Object.prototype.hasOwnProperty.call(map,inner)?map[inner]:outer})};exports$2.getJSON=function(path,onSuccess,onError){var request=new XMLHttpRequest;request.open("GET",path,true);request.onreadystatechange=function(){if(this.readyState===4){if(this.status>=200&&this.status<400){try{onSuccess&&onSuccess(JSON.parse(this.responseText))}catch(e){onError&&onError()}}else{onError&&onError()}}};request.send();request=null};exports$2.escapeHtml=function(){var pattern=/[&<>"'/]/g,entities={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/"};return function(string){return String(string).replace(pattern,function(s){return entities[s]})}}();var exports$1={};exports$1.html=function(string){this.forEach(function(element){element.innerHTML=string});return this};exports$1.append=function(string){this.forEach(function(element){element.innerHTML+=string});return this};exports$1.first=function(){return this[0]};exports$1.on=function(eventName,callback){this.forEach(function(element){if(element.addEventListener){element.addEventListener(eventName,callback,false)}else if(element.attachEvent){element.attachEvent("on"+eventName,callback)}});return this};exports$1.focus=function(){if(this[0]){this[0].focus()}return this};function ElementArray(){}ElementArray.prototype=new Array;for(var k in exports$1)ElementArray.prototype[k]=exports$1[k];function Dollar(selector){var match,matches=new ElementArray;if(selector!==undefined){if(selector===document){matches.push(document)}else if(selector===window){matches.push(window)}else{if(match=document.querySelectorAll(selector)){for(var i=0;isettings.key.maxLen){return mediator.emit("console:error",templates.messages.key_to_long)}else if(payload.lengthsettings.nick.maxLen){return mediator.emit("console:error",Dollar.template(templates.messages.nick_to_long,{nick_maxLen:settings.nick.maxLen}))}else if(payload.length0&&ttl<3600){mediator.emit("console:info",Dollar.template(templates.messages.torch_is_now,{ttl:ttl}));settings.ttl=ttl*1e3}else{mediator.emit("console:error",Dollar.template(templates.messages.torch_not_set))}},param:function(p){parameters=Object.assign({},parameters,p)},showNotification:function(type,nick,text){var title=type!=="message"?"Cryptalk":nick,icon=type==="message"?"gfx/icon_128x128.png":type==="error"?"gfx/icon_128x128_error.png":"gfx/icon_128x128_info.png";mediator.emit("notification:send",{title:title.substring(0,20),body:text.substring(0,80),icon:icon});if(type==="message"){mediator.emit("audio:play",sounds.message)}},motd:function(message){commands.post("motd",message)},info:function(message){commands.post("info",message)},error:function(message){commands.post("error",message)},server:function(message){commands.post("server",message)},message:function(data){commands.post("message",data.message,data.nick)},clearInput:function(){components.input[0].value=""},clear:function(){components.chat[0].innerHTML=""},lockInput:function(){components.input[0].setAttribute("disabled","disabled");components.inputWrapper[0].className="loading"},unlockInput:function(){components.input[0].removeAttribute("disabled");components.inputWrapper[0].className="";components.input.focus()},_require:function(filepath,done){commands.lockInput();commands.post("info","Requiring "+filepath+"...");require([filepath],function(){commands.post("info","Successfully required "+filepath+".");commands.unlockInput();done()},function(e){commands.post("error",'An error occurred while trying to load "'+filepath+'":\n'+e);commands.unlockInput();done()})}},onKeyDown=function(e){var buffer,parts,payload,command;if(!e.ctrlKey&&!e.altKey&&components.input[0]!==Dollar.activeElement()){return components.input.focus()}if(e.keyCode!==13||!(buffer=components.input[0].value)){return}if((buffer[0]||buffer.slice(0,1))==="/"){parts=Dollar.ssplit(buffer.slice(1)," ");command=parts[0];payload=parts[1];mediator.emit("command:"+command,payload,function(retvals,recipients){if(!recipients){return commands.post("error",Dollar.template(templates.messages.unrecognized_command,{commandName:command}))}else{commands.clearInput()}})}else{if(!parameters.room||!parameters.key){return!parameters.room?commands.post("error",templates.messages.msg_no_room):commands.post("error",templates.messages.msg_no_key)}mediator.emit("socket:emit",{data:"message:send",payload:{room:Dollar.SHA1(parameters.room),msg:Dollar.AES.encrypt(buffer,Dollar.SHA1(parameters.room)+parameters.key).toString(),nick:parameters.nick?Dollar.AES.encrypt(parameters.nick,Dollar.SHA1(parameters.room)+parameters.key).toString():false}});commands.clearInput()}};Dollar(document).on("keydown",onKeyDown);components.input.focus();for(var commandName in commands){if(commandName!=="_require"&&commandName!=="post"){mediator.on("console:"+commandName,commands[commandName])}}mediator.on("console:require",commands._require);mediator.on("console:post",function(data){commands.post(data.type,data.data,data.nick)})}function room(mediator,settings,templates){var room=false,join=function(payload){if(room!==false){mediator.emit("console:error",Dollar.template(templates.messages.already_in_room,{room:room}))}else if(payload.length>=settings.room.maxLen){mediator.emit("console:error",Dollar.template(templates.messages.room_name_too_long))}else if(payload.length1];(subs[event]||(subs[event]=[])).push(subscription);if(emits[event]){i=0;subscription=[subscription];while(item=emits[event][i++]){emit(0,0,item[0],item[1],subscription);if(once){break}}}}function off(fromId,event,handler){let sub,i=0,toSubs=subs[event];if(toSubs){while(sub=toSubs[i++]){if(sub[0]===fromId&&(!handler||handler===sub[1])){toSubs.splice(--i,1)}}}}function emit(persistent,event,data,callback,explicitSubs){let sub,toSubs=explicitSubs||subs[event]||[],total=toSubs.length,left,loop,answers=[],done;if(subs["*"]){toSubs=toSubs.concat(subs["*"])}loop=left=toSubs.length;if(loop){done=!callback?noop:function(data){if(data){answers.push(data)}if(!--left){callback(answers,total);callback=0}};while(sub=toSubs[--loop]){sub[1](data,sub[2]?done:left--,event)}}if(!left&&callback){callback(answers,total)}if(persistent){(emits[event]||(emits[event]=[])).push([data,callback])}}function Castrato(){this.nodeId=index++;return this}Castrato.prototype.emit=function(persistent,event,data,handler){if(persistent!==true&&persistent!==false){handler=data;data=event;event=persistent;persistent=false}emit(persistent,event,data,handler);return this};Castrato.prototype.on=function(event,handler){on(this.nodeId,event,handler);return this};Castrato.prototype.once=function(event,handler){on(this.nodeId,event,function wrapper(data,done){off(this.nodeId,event,wrapper);handler(data,handler.length>1?done:done())},true);return this};Castrato.prototype.off=function(event,handler){off(this.nodeId,event,handler);return this};Castrato.prototype.destroy=function(){this.nodeId=0;index=0;subs={};emits={};return this};let castrato=new Castrato;function win(mediator){var exports={},focusCallback=function(){mediator.emit("window:focused")},blurCallback=function(){mediator.emit("window:blurred")};exports.setTitle=function(t){document.title=t},exports.getTitle=function(){return document.title};if(window.addEventListener){window.addEventListener("focus",focusCallback,true);window.addEventListener("blur",blurCallback,true)}else{window.observe("focusin",focusCallback);window.observe("focusout",blurCallback)}mediator.on("window:title",exports.setTitle);return exports}function notifications(mediator,settings,win){var enabled=true,native_supported=false,new_title,original_title,blink_timer,interval,last,now=function(){return performance.now()||Date.now()},on=function(){enabled=true},off=function(){enabled=false},resetState=function(){clearTimeout(blink_timer);if(original_title!==undefined)win.setTitle(original_title);original_title=undefined;new_title=undefined},doBlink=function(){if(enabled){if(win.getTitle()===original_title)win.setTitle(new_title);else win.setTitle(original_title);blink_timer=setTimeout(doBlink,interval)}else{resetState()}},enableNative=function(){if(native_supported&&Notification.permission!=="denied"){Notification.requestPermission()}},blinkTitleUntilFocus=function(t,i){interval=i===undefined?1e3:i;if(enabled&&original_title===undefined){new_title=t;original_title=win.getTitle();doBlink()}},notify=function(title,body,icon,fallback){if(enabled&&now()-last>settings.notifications.maxOnePerMs){if(fallback===undefined)fallback=false;if(native_supported&&Notification.permission==="granted"){var n=new Notification(title,{body:body,icon:icon});n.onshow=function(){setTimeout(function(){n.close()},3e3)};last=now()}else if(fallback){blinkTitleUntilFocus("Attention",1e3)}}};native_supported=window.Notification!==undefined;mediator.on("notification:send",function(data){notify(data.title,data.body,data.icon,true)});mediator.on("notification:on",function(){on()});mediator.on("notification:off",function(){off()});enableNative();off();last=now();resetState()}var templates={help:"
                                                                    \n"+"Cryptalk, encrypted instant chat.                                      \n"+"                                                                       \n"+"----------------------------------------------------------------------\t\n"+"                                                                       \n"+"Client:                                                    \t\t\t\n"+"\t/key\t\tStrongPassphrase\tSets encryption key                 \n"+"\t/nick\t\tNickName\t\tSets an optional nick                   \n"+"\t/mute  \t\t\t\t\tAudio on\t\t\t\t\t\t\t\t\t\n"+"\t/unmute  \t\t\t\tAudio off\t\t\t\t\t\t\t\t\t\n"+"\t/clear\t\t\t\t\tClear on-screen buffer                      \n"+"\t/help\t\t\t\t\tThis                                        \n"+"\t/title\t\t\t\t\tSet your local page title\t\t\t\t\t\n"+"\t/torch\t\tAfterSeconds\t\tConsole messages are torched  \t\t\n"+"\t\t\t\t\t\tafter this amount of seconds \t\t\t\t\t\n"+"\t\t\t\t\t\t(default 600).\t\t\t\t\t\t\t\t\t\n"+"                                                                       \n"+"Room:                                                    \t\t\t\t\n"+"\t/join\t\tRoomId\t\t\tJoin a room\t                            \n"+"\t/leave\t\t\t\t\tLeave the room                              \n"+"\t/count\t\t\t\t\tCount participants                          \n"+"                                                                       \n"+"Host:  \t\t                                                    \t\n"+"\t/connect\t\t\tConnect to host\t\t\t          \t\t     \t\n"+"\t/disconnect\t\t\t\tDisconnect from host    \t\t\t        \n"+"                                                                       \n"+"You can select any of the five last commands/messages with up/down key.\n"+"                                                                       \n"+"Due to security reasons, /key command is not saved, and command        \n"+"history is  automatically cleared after one minute of inactivity.      \n"+"                                                                       \n"+"It is highly recommended to use incognito mode while chatting, \n"+"to prevent browsers from keeping history or cache.            \n"+"                                                                       \n"+"----------------------------------------------------------------------\t\n"+"
    ",default_nick:"Anonymous",post:{motd:'
  • {text}
  • ',info:'
  • [{timestamp}] INF> {text}
  • ',server:'
  • [{timestamp}] SRV> {text}
  • ',error:'
  • [{timestamp}] ERR> {text}
  • ',message:'
  • [{timestamp}] MSG> {nick}> {text}
  • '},messages:{key_to_short:"Hmm, that's a weak key, try again...",key_to_long:"Man that's a long key. Make it a tad short, 'kay?",key_ok:"Key set, you can now start communicating.",key_no_host:"You have to connect to a host before setting the key.",join_no_host:"You have to connect to a host before joining a room.",nick_to_short:"Nickname is too short, it has to be at least {nick_minLen} characters long. Try again.",nick_to_long:"Nickname is too long, it can be at most {nick_maxLen} characters long. Try again.",nick_set:"From now on, you're referred to as '{nick}'.",msg_no_room:"You have to join a room before sending messages. See /help.",not_in_room:"You have to be in a room to count participants...",msg_no_key:"You have to set an encryption key before sending a message. See /help.",leave_from_nowhere:"How are you supposed to leave, while being nowhere?",torch_is_now:"Messages are now torched after {ttl} seconds.",torch_not_set:"Invalid torch delay entered, nothing changed. See /help.",title_set:"The title of this window is now '{title}'.",muted:"Notifications and sounds are now muted.",unmuted:"Notifications and sounds are now on.",unrecognized_command:'Unrecognized command: "{commandName}"',room_name_too_long:"Isn't that a bit long?",room_name_too_short:"Nah, too short.",joined_room:"Joined room {roomName}.",left_room:"Left room {roomName}.",already_in_room:"You are already in a room ({room}), try /leave first.",unable_to_decrypt:"Unabled to decrypt received message, keys does not match.",socket_error:"A network error has occurred. A restart may be required to bring back full functionality.
    Examine the logs for more details.",connecting:"Connecting to host {host}...",connected:"A connection to the server has been established. Happy chatting!",disconnected:"Disconnected from host {host}.",already_connected:"You have to disconnect from {host} before joining another.",reconnect_no_host:"There is no host to reconnect with.",host_available:'{index}\t[AVAILABLE]\t{name}\n',host_unavailable:'{index}\t[UNAVAILABLE]\t{name}\n'},server:{person_joined:"A person joined this room.",person_left:"A person left this room.",person_count:"There are {payload} people in this room, including you.",person_single:"You are the only person in this room.",command_failed:"Server command failed, you're probably trying to du something bogus.",bogus:"Received a bogus message from server."},client:{title:"Cryptalk - Offline"}};var settings={title:"Cryptalk - Online",ttl:6e5,motd:"
    \n\n"+"▄████▄   ██▀███ ▓██   ██▓ ██▓███  ▄▄▄█████▓ ▄▄▄       ██▓     ██ ▄█▀  \n"+"▒██▀ ▀█  ▓██ ▒ ██▒▒██  ██▒▓██░  ██▒▓  ██▒ ▓▒▒████▄    ▓██▒     ██▄█▒  \n"+"▒▓█    ▄ ▓██ ░▄█ ▒ ▒██ ██░▓██░ ██▓▒▒ ▓██░ ▒░▒██  ▀█▄  ▒██░    ▓███▄░  \n"+"▒▓▓▄ ▄██▒▒██▀▀█▄   ░ ▐██▓░▒██▄█▓▒ ▒░ ▓██▓ ░ ░██▄▄▄▄██ ▒██░    ▓██ █▄  \n"+"▒ ▓███▀ ░░██▓ ▒██▒ ░ ██▒▓░▒██▒ ░  ░  ▒██▒ ░  ▓█   ▓██▒░██████▒▒██▒ █▄ \n"+"░ ░▒ ▒  ░░ ▒▓ ░▒▓░  ██▒▒▒ ▒▓▒░ ░  ░  ▒ ░░    ▒▒   ▓▒█░░ ▒░▓  ░▒ ▒▒ ▓▒ \n"+"  ░  ▒     ░▒ ░ ▒░▓██ ░▒░ ░▒ ░         ░      ▒   ▒▒ ░░ ░ ▒  ░░ ░▒ ▒░ \n"+"░          ░░   ░ ▒ ▒ ░░  ░░         ░        ░   ▒     ░ ░   ░ ░░ ░  \n"+"░ ░         ░     ░ ░                             ░  ░    ░  ░░  ░    \n"+"░                 ░ ░                                                 \n"+"                                  https://github.com/hexagon/cryptalk \n"+"                                                                      \n"+" Tip of the day: /help                                                \n"+"----------------------------------------------------------------------"+"
    ",nick:{maxLen:20,minLen:2},key:{maxLen:1024,minLen:8},room:{minLen:1,maxLen:64},notifications:{maxOnePerMs:3e3}};var commonjsGlobal=typeof globalThis!=="undefined"?globalThis:typeof window!=="undefined"?window:typeof global!=="undefined"?global:typeof self!=="undefined"?self:{};function commonjsRequire(path){throw new Error('Could not dynamically require "'+path+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var cryptoJs={exports:{}};var core={exports:{}};(function(module,exports){(function(root,factory){{module.exports=factory()}})(commonjsGlobal,function(){var CryptoJS=CryptoJS||function(Math,undefined$1){var crypto;if(typeof window!=="undefined"&&window.crypto){crypto=window.crypto}if(typeof self!=="undefined"&&self.crypto){crypto=self.crypto}if(typeof globalThis!=="undefined"&&globalThis.crypto){crypto=globalThis.crypto}if(!crypto&&typeof window!=="undefined"&&window.msCrypto){crypto=window.msCrypto}if(!crypto&&typeof commonjsGlobal!=="undefined"&&commonjsGlobal.crypto){crypto=commonjsGlobal.crypto}if(!crypto&&typeof commonjsRequire==="function"){try{crypto=require("crypto")}catch(err){}}var cryptoSecureRandomInt=function(){if(crypto){if(typeof crypto.getRandomValues==="function"){try{return crypto.getRandomValues(new Uint32Array(1))[0]}catch(err){}}if(typeof crypto.randomBytes==="function"){try{return crypto.randomBytes(4).readInt32LE()}catch(err){}}}throw new Error("Native crypto module could not be used to get secure random number.")};var create=Object.create||function(){function F(){}return function(obj){var subtype;F.prototype=obj;subtype=new F;F.prototype=null;return subtype}}();var C={};var C_lib=C.lib={};var Base=C_lib.Base=function(){return{extend:function(overrides){var subtype=create(this);if(overrides){subtype.mixIn(overrides)}if(!subtype.hasOwnProperty("init")||this.init===subtype.init){subtype.init=function(){subtype.$super.init.apply(this,arguments)}}subtype.init.prototype=subtype;subtype.$super=this;return subtype},create:function(){var instance=this.extend();instance.init.apply(instance,arguments);return instance},init:function(){},mixIn:function(properties){for(var propertyName in properties){if(properties.hasOwnProperty(propertyName)){this[propertyName]=properties[propertyName]}}if(properties.hasOwnProperty("toString")){this.toString=properties.toString}},clone:function(){return this.init.prototype.extend(this)}}}();var WordArray=C_lib.WordArray=Base.extend({init:function(words,sigBytes){words=this.words=words||[];if(sigBytes!=undefined$1){this.sigBytes=sigBytes}else{this.sigBytes=words.length*4}},toString:function(encoder){return(encoder||Hex).stringify(this)},concat:function(wordArray){var thisWords=this.words;var thatWords=wordArray.words;var thisSigBytes=this.sigBytes;var thatSigBytes=wordArray.sigBytes;this.clamp();if(thisSigBytes%4){for(var i=0;i>>2]>>>24-i%4*8&255;thisWords[thisSigBytes+i>>>2]|=thatByte<<24-(thisSigBytes+i)%4*8}}else{for(var j=0;j>>2]=thatWords[j>>>2]}}this.sigBytes+=thatSigBytes;return this},clamp:function(){var words=this.words;var sigBytes=this.sigBytes;words[sigBytes>>>2]&=4294967295<<32-sigBytes%4*8;words.length=Math.ceil(sigBytes/4)},clone:function(){var clone=Base.clone.call(this);clone.words=this.words.slice(0);return clone},random:function(nBytes){var words=[];for(var i=0;i>>2]>>>24-i%4*8&255;hexChars.push((bite>>>4).toString(16));hexChars.push((bite&15).toString(16))}return hexChars.join("")},parse:function(hexStr){var hexStrLength=hexStr.length;var words=[];for(var i=0;i>>3]|=parseInt(hexStr.substr(i,2),16)<<24-i%8*4}return new WordArray.init(words,hexStrLength/2)}};var Latin1=C_enc.Latin1={stringify:function(wordArray){var words=wordArray.words;var sigBytes=wordArray.sigBytes;var latin1Chars=[];for(var i=0;i>>2]>>>24-i%4*8&255;latin1Chars.push(String.fromCharCode(bite))}return latin1Chars.join("")},parse:function(latin1Str){var latin1StrLength=latin1Str.length;var words=[];for(var i=0;i>>2]|=(latin1Str.charCodeAt(i)&255)<<24-i%4*8}return new WordArray.init(words,latin1StrLength)}};var Utf8=C_enc.Utf8={stringify:function(wordArray){try{return decodeURIComponent(escape(Latin1.stringify(wordArray)))}catch(e){throw new Error("Malformed UTF-8 data")}},parse:function(utf8Str){return Latin1.parse(unescape(encodeURIComponent(utf8Str)))}};var BufferedBlockAlgorithm=C_lib.BufferedBlockAlgorithm=Base.extend({reset:function(){this._data=new WordArray.init;this._nDataBytes=0},_append:function(data){if(typeof data=="string"){data=Utf8.parse(data)}this._data.concat(data);this._nDataBytes+=data.sigBytes},_process:function(doFlush){var processedWords;var data=this._data;var dataWords=data.words;var dataSigBytes=data.sigBytes;var blockSize=this.blockSize;var blockSizeBytes=blockSize*4;var nBlocksReady=dataSigBytes/blockSizeBytes;if(doFlush){nBlocksReady=Math.ceil(nBlocksReady)}else{nBlocksReady=Math.max((nBlocksReady|0)-this._minBufferSize,0)}var nWordsReady=nBlocksReady*blockSize;var nBytesReady=Math.min(nWordsReady*4,dataSigBytes);if(nWordsReady){for(var offset=0;offset>>2]|=typedArray[i]<<24-i%4*8}superInit.call(this,words,typedArrayByteLength)}else{superInit.apply(this,arguments)}};subInit.prototype=WordArray})();return CryptoJS.lib.WordArray})})(libTypedarrays);var encUtf16={exports:{}};(function(module,exports){(function(root,factory){{module.exports=factory(core.exports)}})(commonjsGlobal,function(CryptoJS){(function(){var C=CryptoJS;var C_lib=C.lib;var WordArray=C_lib.WordArray;var C_enc=C.enc;C_enc.Utf16=C_enc.Utf16BE={stringify:function(wordArray){var words=wordArray.words;var sigBytes=wordArray.sigBytes;var utf16Chars=[];for(var i=0;i>>2]>>>16-i%4*8&65535;utf16Chars.push(String.fromCharCode(codePoint))}return utf16Chars.join("")},parse:function(utf16Str){var utf16StrLength=utf16Str.length;var words=[];for(var i=0;i>>1]|=utf16Str.charCodeAt(i)<<16-i%2*16}return WordArray.create(words,utf16StrLength*2)}};C_enc.Utf16LE={stringify:function(wordArray){var words=wordArray.words;var sigBytes=wordArray.sigBytes;var utf16Chars=[];for(var i=0;i>>2]>>>16-i%4*8&65535);utf16Chars.push(String.fromCharCode(codePoint))}return utf16Chars.join("")},parse:function(utf16Str){var utf16StrLength=utf16Str.length;var words=[];for(var i=0;i>>1]|=swapEndian(utf16Str.charCodeAt(i)<<16-i%2*16)}return WordArray.create(words,utf16StrLength*2)}};function swapEndian(word){return word<<8&4278255360|word>>>8&16711935}})();return CryptoJS.enc.Utf16})})(encUtf16);var encBase64={exports:{}};(function(module,exports){(function(root,factory){{module.exports=factory(core.exports)}})(commonjsGlobal,function(CryptoJS){(function(){var C=CryptoJS;var C_lib=C.lib;var WordArray=C_lib.WordArray;var C_enc=C.enc;C_enc.Base64={stringify:function(wordArray){var words=wordArray.words;var sigBytes=wordArray.sigBytes;var map=this._map;wordArray.clamp();var base64Chars=[];for(var i=0;i>>2]>>>24-i%4*8&255;var byte2=words[i+1>>>2]>>>24-(i+1)%4*8&255;var byte3=words[i+2>>>2]>>>24-(i+2)%4*8&255;var triplet=byte1<<16|byte2<<8|byte3;for(var j=0;j<4&&i+j*.75>>6*(3-j)&63))}}var paddingChar=map.charAt(64);if(paddingChar){while(base64Chars.length%4){base64Chars.push(paddingChar)}}return base64Chars.join("")},parse:function(base64Str){var base64StrLength=base64Str.length;var map=this._map;var reverseMap=this._reverseMap;if(!reverseMap){reverseMap=this._reverseMap=[];for(var j=0;j>>6-i%4*2;var bitsCombined=bits1|bits2;words[nBytes>>>2]|=bitsCombined<<24-nBytes%4*8;nBytes++}}return WordArray.create(words,nBytes)}})();return CryptoJS.enc.Base64})})(encBase64);var encBase64url={exports:{}};(function(module,exports){(function(root,factory){{module.exports=factory(core.exports)}})(commonjsGlobal,function(CryptoJS){(function(){var C=CryptoJS;var C_lib=C.lib;var WordArray=C_lib.WordArray;var C_enc=C.enc;C_enc.Base64url={stringify:function(wordArray,urlSafe=true){var words=wordArray.words;var sigBytes=wordArray.sigBytes;var map=urlSafe?this._safe_map:this._map;wordArray.clamp();var base64Chars=[];for(var i=0;i>>2]>>>24-i%4*8&255;var byte2=words[i+1>>>2]>>>24-(i+1)%4*8&255;var byte3=words[i+2>>>2]>>>24-(i+2)%4*8&255;var triplet=byte1<<16|byte2<<8|byte3;for(var j=0;j<4&&i+j*.75>>6*(3-j)&63))}}var paddingChar=map.charAt(64);if(paddingChar){while(base64Chars.length%4){base64Chars.push(paddingChar)}}return base64Chars.join("")},parse:function(base64Str,urlSafe=true){var base64StrLength=base64Str.length;var map=urlSafe?this._safe_map:this._map;var reverseMap=this._reverseMap;if(!reverseMap){reverseMap=this._reverseMap=[];for(var j=0;j>>6-i%4*2;var bitsCombined=bits1|bits2;words[nBytes>>>2]|=bitsCombined<<24-nBytes%4*8;nBytes++}}return WordArray.create(words,nBytes)}})();return CryptoJS.enc.Base64url})})(encBase64url);var md5={exports:{}};(function(module,exports){(function(root,factory){{module.exports=factory(core.exports)}})(commonjsGlobal,function(CryptoJS){(function(Math){var C=CryptoJS;var C_lib=C.lib;var WordArray=C_lib.WordArray;var Hasher=C_lib.Hasher;var C_algo=C.algo;var T=[];(function(){for(var i=0;i<64;i++){T[i]=Math.abs(Math.sin(i+1))*4294967296|0}})();var MD5=C_algo.MD5=Hasher.extend({_doReset:function(){this._hash=new WordArray.init([1732584193,4023233417,2562383102,271733878])},_doProcessBlock:function(M,offset){for(var i=0;i<16;i++){var offset_i=offset+i;var M_offset_i=M[offset_i];M[offset_i]=(M_offset_i<<8|M_offset_i>>>24)&16711935|(M_offset_i<<24|M_offset_i>>>8)&4278255360}var H=this._hash.words;var M_offset_0=M[offset+0];var M_offset_1=M[offset+1];var M_offset_2=M[offset+2];var M_offset_3=M[offset+3];var M_offset_4=M[offset+4];var M_offset_5=M[offset+5];var M_offset_6=M[offset+6];var M_offset_7=M[offset+7];var M_offset_8=M[offset+8];var M_offset_9=M[offset+9];var M_offset_10=M[offset+10];var M_offset_11=M[offset+11];var M_offset_12=M[offset+12];var M_offset_13=M[offset+13];var M_offset_14=M[offset+14];var M_offset_15=M[offset+15];var a=H[0];var b=H[1];var c=H[2];var d=H[3];a=FF(a,b,c,d,M_offset_0,7,T[0]);d=FF(d,a,b,c,M_offset_1,12,T[1]);c=FF(c,d,a,b,M_offset_2,17,T[2]);b=FF(b,c,d,a,M_offset_3,22,T[3]);a=FF(a,b,c,d,M_offset_4,7,T[4]);d=FF(d,a,b,c,M_offset_5,12,T[5]);c=FF(c,d,a,b,M_offset_6,17,T[6]);b=FF(b,c,d,a,M_offset_7,22,T[7]);a=FF(a,b,c,d,M_offset_8,7,T[8]);d=FF(d,a,b,c,M_offset_9,12,T[9]);c=FF(c,d,a,b,M_offset_10,17,T[10]);b=FF(b,c,d,a,M_offset_11,22,T[11]);a=FF(a,b,c,d,M_offset_12,7,T[12]);d=FF(d,a,b,c,M_offset_13,12,T[13]);c=FF(c,d,a,b,M_offset_14,17,T[14]);b=FF(b,c,d,a,M_offset_15,22,T[15]);a=GG(a,b,c,d,M_offset_1,5,T[16]);d=GG(d,a,b,c,M_offset_6,9,T[17]);c=GG(c,d,a,b,M_offset_11,14,T[18]);b=GG(b,c,d,a,M_offset_0,20,T[19]);a=GG(a,b,c,d,M_offset_5,5,T[20]);d=GG(d,a,b,c,M_offset_10,9,T[21]);c=GG(c,d,a,b,M_offset_15,14,T[22]);b=GG(b,c,d,a,M_offset_4,20,T[23]);a=GG(a,b,c,d,M_offset_9,5,T[24]);d=GG(d,a,b,c,M_offset_14,9,T[25]);c=GG(c,d,a,b,M_offset_3,14,T[26]);b=GG(b,c,d,a,M_offset_8,20,T[27]);a=GG(a,b,c,d,M_offset_13,5,T[28]);d=GG(d,a,b,c,M_offset_2,9,T[29]);c=GG(c,d,a,b,M_offset_7,14,T[30]);b=GG(b,c,d,a,M_offset_12,20,T[31]);a=HH(a,b,c,d,M_offset_5,4,T[32]);d=HH(d,a,b,c,M_offset_8,11,T[33]);c=HH(c,d,a,b,M_offset_11,16,T[34]);b=HH(b,c,d,a,M_offset_14,23,T[35]);a=HH(a,b,c,d,M_offset_1,4,T[36]);d=HH(d,a,b,c,M_offset_4,11,T[37]);c=HH(c,d,a,b,M_offset_7,16,T[38]);b=HH(b,c,d,a,M_offset_10,23,T[39]);a=HH(a,b,c,d,M_offset_13,4,T[40]);d=HH(d,a,b,c,M_offset_0,11,T[41]);c=HH(c,d,a,b,M_offset_3,16,T[42]);b=HH(b,c,d,a,M_offset_6,23,T[43]);a=HH(a,b,c,d,M_offset_9,4,T[44]);d=HH(d,a,b,c,M_offset_12,11,T[45]);c=HH(c,d,a,b,M_offset_15,16,T[46]);b=HH(b,c,d,a,M_offset_2,23,T[47]);a=II(a,b,c,d,M_offset_0,6,T[48]);d=II(d,a,b,c,M_offset_7,10,T[49]);c=II(c,d,a,b,M_offset_14,15,T[50]);b=II(b,c,d,a,M_offset_5,21,T[51]);a=II(a,b,c,d,M_offset_12,6,T[52]);d=II(d,a,b,c,M_offset_3,10,T[53]);c=II(c,d,a,b,M_offset_10,15,T[54]);b=II(b,c,d,a,M_offset_1,21,T[55]);a=II(a,b,c,d,M_offset_8,6,T[56]);d=II(d,a,b,c,M_offset_15,10,T[57]);c=II(c,d,a,b,M_offset_6,15,T[58]);b=II(b,c,d,a,M_offset_13,21,T[59]);a=II(a,b,c,d,M_offset_4,6,T[60]);d=II(d,a,b,c,M_offset_11,10,T[61]);c=II(c,d,a,b,M_offset_2,15,T[62]);b=II(b,c,d,a,M_offset_9,21,T[63]);H[0]=H[0]+a|0;H[1]=H[1]+b|0;H[2]=H[2]+c|0;H[3]=H[3]+d|0},_doFinalize:function(){var data=this._data;var dataWords=data.words;var nBitsTotal=this._nDataBytes*8;var nBitsLeft=data.sigBytes*8;dataWords[nBitsLeft>>>5]|=128<<24-nBitsLeft%32;var nBitsTotalH=Math.floor(nBitsTotal/4294967296);var nBitsTotalL=nBitsTotal;dataWords[(nBitsLeft+64>>>9<<4)+15]=(nBitsTotalH<<8|nBitsTotalH>>>24)&16711935|(nBitsTotalH<<24|nBitsTotalH>>>8)&4278255360;dataWords[(nBitsLeft+64>>>9<<4)+14]=(nBitsTotalL<<8|nBitsTotalL>>>24)&16711935|(nBitsTotalL<<24|nBitsTotalL>>>8)&4278255360;data.sigBytes=(dataWords.length+1)*4;this._process();var hash=this._hash;var H=hash.words;for(var i=0;i<4;i++){var H_i=H[i];H[i]=(H_i<<8|H_i>>>24)&16711935|(H_i<<24|H_i>>>8)&4278255360}return hash},clone:function(){var clone=Hasher.clone.call(this);clone._hash=this._hash.clone();return clone}});function FF(a,b,c,d,x,s,t){var n=a+(b&c|~b&d)+x+t;return(n<>>32-s)+b}function GG(a,b,c,d,x,s,t){var n=a+(b&d|c&~d)+x+t;return(n<>>32-s)+b}function HH(a,b,c,d,x,s,t){var n=a+(b^c^d)+x+t;return(n<>>32-s)+b}function II(a,b,c,d,x,s,t){var n=a+(c^(b|~d))+x+t;return(n<>>32-s)+b}C.MD5=Hasher._createHelper(MD5);C.HmacMD5=Hasher._createHmacHelper(MD5)})(Math);return CryptoJS.MD5})})(md5);var sha1={exports:{}};(function(module,exports){(function(root,factory){{module.exports=factory(core.exports)}})(commonjsGlobal,function(CryptoJS){(function(){var C=CryptoJS;var C_lib=C.lib;var WordArray=C_lib.WordArray;var Hasher=C_lib.Hasher;var C_algo=C.algo;var W=[];var SHA1=C_algo.SHA1=Hasher.extend({_doReset:function(){this._hash=new WordArray.init([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(M,offset){var H=this._hash.words;var a=H[0];var b=H[1];var c=H[2];var d=H[3];var e=H[4];for(var i=0;i<80;i++){if(i<16){W[i]=M[offset+i]|0}else{var n=W[i-3]^W[i-8]^W[i-14]^W[i-16];W[i]=n<<1|n>>>31}var t=(a<<5|a>>>27)+e+W[i];if(i<20){t+=(b&c|~b&d)+1518500249}else if(i<40){t+=(b^c^d)+1859775393}else if(i<60){t+=(b&c|b&d|c&d)-1894007588}else{t+=(b^c^d)-899497514}e=d;d=c;c=b<<30|b>>>2;b=a;a=t}H[0]=H[0]+a|0;H[1]=H[1]+b|0;H[2]=H[2]+c|0;H[3]=H[3]+d|0;H[4]=H[4]+e|0},_doFinalize:function(){var data=this._data;var dataWords=data.words;var nBitsTotal=this._nDataBytes*8;var nBitsLeft=data.sigBytes*8;dataWords[nBitsLeft>>>5]|=128<<24-nBitsLeft%32;dataWords[(nBitsLeft+64>>>9<<4)+14]=Math.floor(nBitsTotal/4294967296);dataWords[(nBitsLeft+64>>>9<<4)+15]=nBitsTotal;data.sigBytes=dataWords.length*4;this._process();return this._hash},clone:function(){var clone=Hasher.clone.call(this);clone._hash=this._hash.clone();return clone}});C.SHA1=Hasher._createHelper(SHA1);C.HmacSHA1=Hasher._createHmacHelper(SHA1)})();return CryptoJS.SHA1})})(sha1);var sha256={exports:{}};(function(module,exports){(function(root,factory){{module.exports=factory(core.exports)}})(commonjsGlobal,function(CryptoJS){(function(Math){var C=CryptoJS;var C_lib=C.lib;var WordArray=C_lib.WordArray;var Hasher=C_lib.Hasher;var C_algo=C.algo;var H=[];var K=[];(function(){function isPrime(n){var sqrtN=Math.sqrt(n);for(var factor=2;factor<=sqrtN;factor++){if(!(n%factor)){return false}}return true}function getFractionalBits(n){return(n-(n|0))*4294967296|0}var n=2;var nPrime=0;while(nPrime<64){if(isPrime(n)){if(nPrime<8){H[nPrime]=getFractionalBits(Math.pow(n,1/2))}K[nPrime]=getFractionalBits(Math.pow(n,1/3));nPrime++}n++}})();var W=[];var SHA256=C_algo.SHA256=Hasher.extend({_doReset:function(){this._hash=new WordArray.init(H.slice(0))},_doProcessBlock:function(M,offset){var H=this._hash.words;var a=H[0];var b=H[1];var c=H[2];var d=H[3];var e=H[4];var f=H[5];var g=H[6];var h=H[7];for(var i=0;i<64;i++){if(i<16){W[i]=M[offset+i]|0}else{var gamma0x=W[i-15];var gamma0=(gamma0x<<25|gamma0x>>>7)^(gamma0x<<14|gamma0x>>>18)^gamma0x>>>3;var gamma1x=W[i-2];var gamma1=(gamma1x<<15|gamma1x>>>17)^(gamma1x<<13|gamma1x>>>19)^gamma1x>>>10;W[i]=gamma0+W[i-7]+gamma1+W[i-16]}var ch=e&f^~e&g;var maj=a&b^a&c^b&c;var sigma0=(a<<30|a>>>2)^(a<<19|a>>>13)^(a<<10|a>>>22);var sigma1=(e<<26|e>>>6)^(e<<21|e>>>11)^(e<<7|e>>>25);var t1=h+sigma1+ch+K[i]+W[i];var t2=sigma0+maj;h=g;g=f;f=e;e=d+t1|0;d=c;c=b;b=a;a=t1+t2|0}H[0]=H[0]+a|0;H[1]=H[1]+b|0;H[2]=H[2]+c|0;H[3]=H[3]+d|0;H[4]=H[4]+e|0;H[5]=H[5]+f|0;H[6]=H[6]+g|0;H[7]=H[7]+h|0},_doFinalize:function(){var data=this._data;var dataWords=data.words;var nBitsTotal=this._nDataBytes*8;var nBitsLeft=data.sigBytes*8;dataWords[nBitsLeft>>>5]|=128<<24-nBitsLeft%32;dataWords[(nBitsLeft+64>>>9<<4)+14]=Math.floor(nBitsTotal/4294967296);dataWords[(nBitsLeft+64>>>9<<4)+15]=nBitsTotal;data.sigBytes=dataWords.length*4;this._process();return this._hash},clone:function(){var clone=Hasher.clone.call(this);clone._hash=this._hash.clone();return clone}});C.SHA256=Hasher._createHelper(SHA256);C.HmacSHA256=Hasher._createHmacHelper(SHA256)})(Math);return CryptoJS.SHA256})})(sha256);var sha224={exports:{}};(function(module,exports){(function(root,factory,undef){{module.exports=factory(core.exports,sha256.exports)}})(commonjsGlobal,function(CryptoJS){(function(){var C=CryptoJS;var C_lib=C.lib;var WordArray=C_lib.WordArray;var C_algo=C.algo;var SHA256=C_algo.SHA256;var SHA224=C_algo.SHA224=SHA256.extend({_doReset:function(){this._hash=new WordArray.init([3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428])},_doFinalize:function(){var hash=SHA256._doFinalize.call(this);hash.sigBytes-=4;return hash}});C.SHA224=SHA256._createHelper(SHA224);C.HmacSHA224=SHA256._createHmacHelper(SHA224)})();return CryptoJS.SHA224})})(sha224);var sha512={exports:{}};(function(module,exports){(function(root,factory,undef){{module.exports=factory(core.exports,x64Core.exports)}})(commonjsGlobal,function(CryptoJS){(function(){var C=CryptoJS;var C_lib=C.lib;var Hasher=C_lib.Hasher;var C_x64=C.x64;var X64Word=C_x64.Word;var X64WordArray=C_x64.WordArray;var C_algo=C.algo;function X64Word_create(){return X64Word.create.apply(X64Word,arguments)}var K=[X64Word_create(1116352408,3609767458),X64Word_create(1899447441,602891725),X64Word_create(3049323471,3964484399),X64Word_create(3921009573,2173295548),X64Word_create(961987163,4081628472),X64Word_create(1508970993,3053834265),X64Word_create(2453635748,2937671579),X64Word_create(2870763221,3664609560),X64Word_create(3624381080,2734883394),X64Word_create(310598401,1164996542),X64Word_create(607225278,1323610764),X64Word_create(1426881987,3590304994),X64Word_create(1925078388,4068182383),X64Word_create(2162078206,991336113),X64Word_create(2614888103,633803317),X64Word_create(3248222580,3479774868),X64Word_create(3835390401,2666613458),X64Word_create(4022224774,944711139),X64Word_create(264347078,2341262773),X64Word_create(604807628,2007800933),X64Word_create(770255983,1495990901),X64Word_create(1249150122,1856431235),X64Word_create(1555081692,3175218132),X64Word_create(1996064986,2198950837),X64Word_create(2554220882,3999719339),X64Word_create(2821834349,766784016),X64Word_create(2952996808,2566594879),X64Word_create(3210313671,3203337956),X64Word_create(3336571891,1034457026),X64Word_create(3584528711,2466948901),X64Word_create(113926993,3758326383),X64Word_create(338241895,168717936),X64Word_create(666307205,1188179964),X64Word_create(773529912,1546045734),X64Word_create(1294757372,1522805485),X64Word_create(1396182291,2643833823),X64Word_create(1695183700,2343527390),X64Word_create(1986661051,1014477480),X64Word_create(2177026350,1206759142),X64Word_create(2456956037,344077627),X64Word_create(2730485921,1290863460),X64Word_create(2820302411,3158454273),X64Word_create(3259730800,3505952657),X64Word_create(3345764771,106217008),X64Word_create(3516065817,3606008344),X64Word_create(3600352804,1432725776),X64Word_create(4094571909,1467031594),X64Word_create(275423344,851169720),X64Word_create(430227734,3100823752),X64Word_create(506948616,1363258195),X64Word_create(659060556,3750685593),X64Word_create(883997877,3785050280),X64Word_create(958139571,3318307427),X64Word_create(1322822218,3812723403),X64Word_create(1537002063,2003034995),X64Word_create(1747873779,3602036899),X64Word_create(1955562222,1575990012),X64Word_create(2024104815,1125592928),X64Word_create(2227730452,2716904306),X64Word_create(2361852424,442776044),X64Word_create(2428436474,593698344),X64Word_create(2756734187,3733110249),X64Word_create(3204031479,2999351573),X64Word_create(3329325298,3815920427),X64Word_create(3391569614,3928383900),X64Word_create(3515267271,566280711),X64Word_create(3940187606,3454069534),X64Word_create(4118630271,4000239992),X64Word_create(116418474,1914138554),X64Word_create(174292421,2731055270),X64Word_create(289380356,3203993006),X64Word_create(460393269,320620315),X64Word_create(685471733,587496836),X64Word_create(852142971,1086792851),X64Word_create(1017036298,365543100),X64Word_create(1126000580,2618297676),X64Word_create(1288033470,3409855158),X64Word_create(1501505948,4234509866),X64Word_create(1607167915,987167468),X64Word_create(1816402316,1246189591)];var W=[];(function(){for(var i=0;i<80;i++){W[i]=X64Word_create()}})();var SHA512=C_algo.SHA512=Hasher.extend({_doReset:function(){this._hash=new X64WordArray.init([new X64Word.init(1779033703,4089235720),new X64Word.init(3144134277,2227873595),new X64Word.init(1013904242,4271175723),new X64Word.init(2773480762,1595750129),new X64Word.init(1359893119,2917565137),new X64Word.init(2600822924,725511199),new X64Word.init(528734635,4215389547),new X64Word.init(1541459225,327033209)])},_doProcessBlock:function(M,offset){var H=this._hash.words;var H0=H[0];var H1=H[1];var H2=H[2];var H3=H[3];var H4=H[4];var H5=H[5];var H6=H[6];var H7=H[7];var H0h=H0.high;var H0l=H0.low;var H1h=H1.high;var H1l=H1.low;var H2h=H2.high;var H2l=H2.low;var H3h=H3.high;var H3l=H3.low;var H4h=H4.high;var H4l=H4.low;var H5h=H5.high;var H5l=H5.low;var H6h=H6.high;var H6l=H6.low;var H7h=H7.high;var H7l=H7.low;var ah=H0h;var al=H0l;var bh=H1h;var bl=H1l;var ch=H2h;var cl=H2l;var dh=H3h;var dl=H3l;var eh=H4h;var el=H4l;var fh=H5h;var fl=H5l;var gh=H6h;var gl=H6l;var hh=H7h;var hl=H7l;for(var i=0;i<80;i++){var Wil;var Wih;var Wi=W[i];if(i<16){Wih=Wi.high=M[offset+i*2]|0;Wil=Wi.low=M[offset+i*2+1]|0}else{var gamma0x=W[i-15];var gamma0xh=gamma0x.high;var gamma0xl=gamma0x.low;var gamma0h=(gamma0xh>>>1|gamma0xl<<31)^(gamma0xh>>>8|gamma0xl<<24)^gamma0xh>>>7;var gamma0l=(gamma0xl>>>1|gamma0xh<<31)^(gamma0xl>>>8|gamma0xh<<24)^(gamma0xl>>>7|gamma0xh<<25);var gamma1x=W[i-2];var gamma1xh=gamma1x.high;var gamma1xl=gamma1x.low;var gamma1h=(gamma1xh>>>19|gamma1xl<<13)^(gamma1xh<<3|gamma1xl>>>29)^gamma1xh>>>6;var gamma1l=(gamma1xl>>>19|gamma1xh<<13)^(gamma1xl<<3|gamma1xh>>>29)^(gamma1xl>>>6|gamma1xh<<26);var Wi7=W[i-7];var Wi7h=Wi7.high;var Wi7l=Wi7.low;var Wi16=W[i-16];var Wi16h=Wi16.high;var Wi16l=Wi16.low;Wil=gamma0l+Wi7l;Wih=gamma0h+Wi7h+(Wil>>>0>>0?1:0);Wil=Wil+gamma1l;Wih=Wih+gamma1h+(Wil>>>0>>0?1:0);Wil=Wil+Wi16l;Wih=Wih+Wi16h+(Wil>>>0>>0?1:0);Wi.high=Wih;Wi.low=Wil}var chh=eh&fh^~eh&gh;var chl=el&fl^~el≷var majh=ah&bh^ah&ch^bh&ch;var majl=al&bl^al&cl^bl&cl;var sigma0h=(ah>>>28|al<<4)^(ah<<30|al>>>2)^(ah<<25|al>>>7);var sigma0l=(al>>>28|ah<<4)^(al<<30|ah>>>2)^(al<<25|ah>>>7);var sigma1h=(eh>>>14|el<<18)^(eh>>>18|el<<14)^(eh<<23|el>>>9);var sigma1l=(el>>>14|eh<<18)^(el>>>18|eh<<14)^(el<<23|eh>>>9);var Ki=K[i];var Kih=Ki.high;var Kil=Ki.low;var t1l=hl+sigma1l;var t1h=hh+sigma1h+(t1l>>>0>>0?1:0);var t1l=t1l+chl;var t1h=t1h+chh+(t1l>>>0>>0?1:0);var t1l=t1l+Kil;var t1h=t1h+Kih+(t1l>>>0>>0?1:0);var t1l=t1l+Wil;var t1h=t1h+Wih+(t1l>>>0>>0?1:0);var t2l=sigma0l+majl;var t2h=sigma0h+majh+(t2l>>>0>>0?1:0);hh=gh;hl=gl;gh=fh;gl=fl;fh=eh;fl=el;el=dl+t1l|0;eh=dh+t1h+(el>>>0
    >>0?1:0)|0;dh=ch;dl=cl;ch=bh;cl=bl;bh=ah;bl=al;al=t1l+t2l|0;ah=t1h+t2h+(al>>>0>>0?1:0)|0}H0l=H0.low=H0l+al;H0.high=H0h+ah+(H0l>>>0>>0?1:0);H1l=H1.low=H1l+bl;H1.high=H1h+bh+(H1l>>>0>>0?1:0);H2l=H2.low=H2l+cl;H2.high=H2h+ch+(H2l>>>0>>0?1:0);H3l=H3.low=H3l+dl;H3.high=H3h+dh+(H3l>>>0
    >>0?1:0);H4l=H4.low=H4l+el;H4.high=H4h+eh+(H4l>>>0>>0?1:0);H5l=H5.low=H5l+fl;H5.high=H5h+fh+(H5l>>>0>>0?1:0);H6l=H6.low=H6l+gl;H6.high=H6h+gh+(H6l>>>0>>0?1:0);H7l=H7.low=H7l+hl;H7.high=H7h+hh+(H7l>>>0>>0?1:0)},_doFinalize:function(){var data=this._data;var dataWords=data.words;var nBitsTotal=this._nDataBytes*8;var nBitsLeft=data.sigBytes*8;dataWords[nBitsLeft>>>5]|=128<<24-nBitsLeft%32;dataWords[(nBitsLeft+128>>>10<<5)+30]=Math.floor(nBitsTotal/4294967296);dataWords[(nBitsLeft+128>>>10<<5)+31]=nBitsTotal;data.sigBytes=dataWords.length*4;this._process();var hash=this._hash.toX32();return hash},clone:function(){var clone=Hasher.clone.call(this);clone._hash=this._hash.clone();return clone},blockSize:1024/32});C.SHA512=Hasher._createHelper(SHA512);C.HmacSHA512=Hasher._createHmacHelper(SHA512)})();return CryptoJS.SHA512})})(sha512);var sha384={exports:{}};(function(module,exports){(function(root,factory,undef){{module.exports=factory(core.exports,x64Core.exports,sha512.exports)}})(commonjsGlobal,function(CryptoJS){(function(){var C=CryptoJS;var C_x64=C.x64;var X64Word=C_x64.Word;var X64WordArray=C_x64.WordArray;var C_algo=C.algo;var SHA512=C_algo.SHA512;var SHA384=C_algo.SHA384=SHA512.extend({_doReset:function(){this._hash=new X64WordArray.init([new X64Word.init(3418070365,3238371032),new X64Word.init(1654270250,914150663),new X64Word.init(2438529370,812702999),new X64Word.init(355462360,4144912697),new X64Word.init(1731405415,4290775857),new X64Word.init(2394180231,1750603025),new X64Word.init(3675008525,1694076839),new X64Word.init(1203062813,3204075428)])},_doFinalize:function(){var hash=SHA512._doFinalize.call(this);hash.sigBytes-=16;return hash}});C.SHA384=SHA512._createHelper(SHA384);C.HmacSHA384=SHA512._createHmacHelper(SHA384)})();return CryptoJS.SHA384})})(sha384);var sha3={exports:{}};(function(module,exports){(function(root,factory,undef){{module.exports=factory(core.exports,x64Core.exports)}})(commonjsGlobal,function(CryptoJS){(function(Math){var C=CryptoJS;var C_lib=C.lib;var WordArray=C_lib.WordArray;var Hasher=C_lib.Hasher;var C_x64=C.x64;var X64Word=C_x64.Word;var C_algo=C.algo;var RHO_OFFSETS=[];var PI_INDEXES=[];var ROUND_CONSTANTS=[];(function(){var x=1,y=0;for(var t=0;t<24;t++){RHO_OFFSETS[x+5*y]=(t+1)*(t+2)/2%64;var newX=y%5;var newY=(2*x+3*y)%5;x=newX;y=newY}for(var x=0;x<5;x++){for(var y=0;y<5;y++){PI_INDEXES[x+5*y]=y+(2*x+3*y)%5*5}}var LFSR=1;for(var i=0;i<24;i++){var roundConstantMsw=0;var roundConstantLsw=0;for(var j=0;j<7;j++){if(LFSR&1){var bitPosition=(1<>>24)&16711935|(M2i<<24|M2i>>>8)&4278255360;M2i1=(M2i1<<8|M2i1>>>24)&16711935|(M2i1<<24|M2i1>>>8)&4278255360;var lane=state[i];lane.high^=M2i1;lane.low^=M2i}for(var round=0;round<24;round++){for(var x=0;x<5;x++){var tMsw=0,tLsw=0;for(var y=0;y<5;y++){var lane=state[x+5*y];tMsw^=lane.high;tLsw^=lane.low}var Tx=T[x];Tx.high=tMsw;Tx.low=tLsw}for(var x=0;x<5;x++){var Tx4=T[(x+4)%5];var Tx1=T[(x+1)%5];var Tx1Msw=Tx1.high;var Tx1Lsw=Tx1.low;var tMsw=Tx4.high^(Tx1Msw<<1|Tx1Lsw>>>31);var tLsw=Tx4.low^(Tx1Lsw<<1|Tx1Msw>>>31);for(var y=0;y<5;y++){var lane=state[x+5*y];lane.high^=tMsw;lane.low^=tLsw}}for(var laneIndex=1;laneIndex<25;laneIndex++){var tMsw;var tLsw;var lane=state[laneIndex];var laneMsw=lane.high;var laneLsw=lane.low;var rhoOffset=RHO_OFFSETS[laneIndex];if(rhoOffset<32){tMsw=laneMsw<>>32-rhoOffset;tLsw=laneLsw<>>32-rhoOffset}else{tMsw=laneLsw<>>64-rhoOffset;tLsw=laneMsw<>>64-rhoOffset}var TPiLane=T[PI_INDEXES[laneIndex]];TPiLane.high=tMsw;TPiLane.low=tLsw}var T0=T[0];var state0=state[0];T0.high=state0.high;T0.low=state0.low;for(var x=0;x<5;x++){for(var y=0;y<5;y++){var laneIndex=x+5*y;var lane=state[laneIndex];var TLane=T[laneIndex];var Tx1Lane=T[(x+1)%5+5*y];var Tx2Lane=T[(x+2)%5+5*y];lane.high=TLane.high^~Tx1Lane.high&Tx2Lane.high;lane.low=TLane.low^~Tx1Lane.low&Tx2Lane.low}}var lane=state[0];var roundConstant=ROUND_CONSTANTS[round];lane.high^=roundConstant.high;lane.low^=roundConstant.low}},_doFinalize:function(){var data=this._data;var dataWords=data.words;this._nDataBytes*8;var nBitsLeft=data.sigBytes*8;var blockSizeBits=this.blockSize*32;dataWords[nBitsLeft>>>5]|=1<<24-nBitsLeft%32;dataWords[(Math.ceil((nBitsLeft+1)/blockSizeBits)*blockSizeBits>>>5)-1]|=128;data.sigBytes=dataWords.length*4;this._process();var state=this._state;var outputLengthBytes=this.cfg.outputLength/8;var outputLengthLanes=outputLengthBytes/8;var hashWords=[];for(var i=0;i>>24)&16711935|(laneMsw<<24|laneMsw>>>8)&4278255360;laneLsw=(laneLsw<<8|laneLsw>>>24)&16711935|(laneLsw<<24|laneLsw>>>8)&4278255360;hashWords.push(laneLsw);hashWords.push(laneMsw)}return new WordArray.init(hashWords,outputLengthBytes)},clone:function(){var clone=Hasher.clone.call(this);var state=clone._state=this._state.slice(0);for(var i=0;i<25;i++){state[i]=state[i].clone()}return clone}});C.SHA3=Hasher._createHelper(SHA3);C.HmacSHA3=Hasher._createHmacHelper(SHA3)})(Math);return CryptoJS.SHA3})})(sha3);var ripemd160={exports:{}};(function(module,exports){(function(root,factory){{module.exports=factory(core.exports)}})(commonjsGlobal,function(CryptoJS){(function(Math){var C=CryptoJS;var C_lib=C.lib;var WordArray=C_lib.WordArray;var Hasher=C_lib.Hasher;var C_algo=C.algo;var _zl=WordArray.create([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13]);var _zr=WordArray.create([5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11]);var _sl=WordArray.create([11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6]);var _sr=WordArray.create([8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11]);var _hl=WordArray.create([0,1518500249,1859775393,2400959708,2840853838]);var _hr=WordArray.create([1352829926,1548603684,1836072691,2053994217,0]);var RIPEMD160=C_algo.RIPEMD160=Hasher.extend({_doReset:function(){this._hash=WordArray.create([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(M,offset){for(var i=0;i<16;i++){var offset_i=offset+i;var M_offset_i=M[offset_i];M[offset_i]=(M_offset_i<<8|M_offset_i>>>24)&16711935|(M_offset_i<<24|M_offset_i>>>8)&4278255360}var H=this._hash.words;var hl=_hl.words;var hr=_hr.words;var zl=_zl.words;var zr=_zr.words;var sl=_sl.words;var sr=_sr.words;var al,bl,cl,dl,el;var ar,br,cr,dr,er;ar=al=H[0];br=bl=H[1];cr=cl=H[2];dr=dl=H[3];er=el=H[4];var t;for(var i=0;i<80;i+=1){t=al+M[offset+zl[i]]|0;if(i<16){t+=f1(bl,cl,dl)+hl[0]}else if(i<32){t+=f2(bl,cl,dl)+hl[1]}else if(i<48){t+=f3(bl,cl,dl)+hl[2]}else if(i<64){t+=f4(bl,cl,dl)+hl[3]}else{t+=f5(bl,cl,dl)+hl[4]}t=t|0;t=rotl(t,sl[i]);t=t+el|0;al=el;el=dl;dl=rotl(cl,10);cl=bl;bl=t;t=ar+M[offset+zr[i]]|0;if(i<16){t+=f5(br,cr,dr)+hr[0]}else if(i<32){t+=f4(br,cr,dr)+hr[1]}else if(i<48){t+=f3(br,cr,dr)+hr[2]}else if(i<64){t+=f2(br,cr,dr)+hr[3]}else{t+=f1(br,cr,dr)+hr[4]}t=t|0;t=rotl(t,sr[i]);t=t+er|0;ar=er;er=dr;dr=rotl(cr,10);cr=br;br=t}t=H[1]+cl+dr|0;H[1]=H[2]+dl+er|0;H[2]=H[3]+el+ar|0;H[3]=H[4]+al+br|0;H[4]=H[0]+bl+cr|0;H[0]=t},_doFinalize:function(){var data=this._data;var dataWords=data.words;var nBitsTotal=this._nDataBytes*8;var nBitsLeft=data.sigBytes*8;dataWords[nBitsLeft>>>5]|=128<<24-nBitsLeft%32;dataWords[(nBitsLeft+64>>>9<<4)+14]=(nBitsTotal<<8|nBitsTotal>>>24)&16711935|(nBitsTotal<<24|nBitsTotal>>>8)&4278255360;data.sigBytes=(dataWords.length+1)*4;this._process();var hash=this._hash;var H=hash.words;for(var i=0;i<5;i++){var H_i=H[i];H[i]=(H_i<<8|H_i>>>24)&16711935|(H_i<<24|H_i>>>8)&4278255360}return hash},clone:function(){var clone=Hasher.clone.call(this);clone._hash=this._hash.clone();return clone}});function f1(x,y,z){return x^y^z}function f2(x,y,z){return x&y|~x&z}function f3(x,y,z){return(x|~y)^z}function f4(x,y,z){return x&z|y&~z}function f5(x,y,z){return x^(y|~z)}function rotl(x,n){return x<>>32-n}C.RIPEMD160=Hasher._createHelper(RIPEMD160);C.HmacRIPEMD160=Hasher._createHmacHelper(RIPEMD160)})();return CryptoJS.RIPEMD160})})(ripemd160);var hmac={exports:{}};(function(module,exports){(function(root,factory){{module.exports=factory(core.exports)}})(commonjsGlobal,function(CryptoJS){(function(){var C=CryptoJS;var C_lib=C.lib;var Base=C_lib.Base;var C_enc=C.enc;var Utf8=C_enc.Utf8;var C_algo=C.algo;C_algo.HMAC=Base.extend({init:function(hasher,key){hasher=this._hasher=new hasher.init;if(typeof key=="string"){key=Utf8.parse(key)}var hasherBlockSize=hasher.blockSize;var hasherBlockSizeBytes=hasherBlockSize*4;if(key.sigBytes>hasherBlockSizeBytes){key=hasher.finalize(key)}key.clamp();var oKey=this._oKey=key.clone();var iKey=this._iKey=key.clone();var oKeyWords=oKey.words;var iKeyWords=iKey.words;for(var i=0;i>>2]&255;data.sigBytes-=nPaddingBytes}};C_lib.BlockCipher=Cipher.extend({cfg:Cipher.cfg.extend({mode:CBC,padding:Pkcs7}),reset:function(){var modeCreator;Cipher.reset.call(this);var cfg=this.cfg;var iv=cfg.iv;var mode=cfg.mode;if(this._xformMode==this._ENC_XFORM_MODE){modeCreator=mode.createEncryptor}else{modeCreator=mode.createDecryptor;this._minBufferSize=1}if(this._mode&&this._mode.__creator==modeCreator){this._mode.init(this,iv&&iv.words)}else{this._mode=modeCreator.call(mode,this,iv&&iv.words);this._mode.__creator=modeCreator}},_doProcessBlock:function(words,offset){this._mode.processBlock(words,offset)},_doFinalize:function(){var finalProcessedBlocks;var padding=this.cfg.padding;if(this._xformMode==this._ENC_XFORM_MODE){padding.pad(this._data,this.blockSize);finalProcessedBlocks=this._process(!!"flush")}else{finalProcessedBlocks=this._process(!!"flush");padding.unpad(finalProcessedBlocks)}return finalProcessedBlocks},blockSize:128/32});var CipherParams=C_lib.CipherParams=Base.extend({init:function(cipherParams){this.mixIn(cipherParams)},toString:function(formatter){return(formatter||this.formatter).stringify(this)}});var C_format=C.format={};var OpenSSLFormatter=C_format.OpenSSL={stringify:function(cipherParams){var wordArray;var ciphertext=cipherParams.ciphertext;var salt=cipherParams.salt;if(salt){wordArray=WordArray.create([1398893684,1701076831]).concat(salt).concat(ciphertext)}else{wordArray=ciphertext}return wordArray.toString(Base64)},parse:function(openSSLStr){var salt;var ciphertext=Base64.parse(openSSLStr);var ciphertextWords=ciphertext.words;if(ciphertextWords[0]==1398893684&&ciphertextWords[1]==1701076831){salt=WordArray.create(ciphertextWords.slice(2,4));ciphertextWords.splice(0,4);ciphertext.sigBytes-=16}return CipherParams.create({ciphertext:ciphertext,salt:salt})}};var SerializableCipher=C_lib.SerializableCipher=Base.extend({cfg:Base.extend({format:OpenSSLFormatter}),encrypt:function(cipher,message,key,cfg){cfg=this.cfg.extend(cfg);var encryptor=cipher.createEncryptor(key,cfg);var ciphertext=encryptor.finalize(message);var cipherCfg=encryptor.cfg;return CipherParams.create({ciphertext:ciphertext,key:key,iv:cipherCfg.iv,algorithm:cipher,mode:cipherCfg.mode,padding:cipherCfg.padding,blockSize:cipher.blockSize,formatter:cfg.format})},decrypt:function(cipher,ciphertext,key,cfg){cfg=this.cfg.extend(cfg);ciphertext=this._parse(ciphertext,cfg.format);var plaintext=cipher.createDecryptor(key,cfg).finalize(ciphertext.ciphertext);return plaintext},_parse:function(ciphertext,format){if(typeof ciphertext=="string"){return format.parse(ciphertext,this)}else{return ciphertext}}});var C_kdf=C.kdf={};var OpenSSLKdf=C_kdf.OpenSSL={execute:function(password,keySize,ivSize,salt){if(!salt){salt=WordArray.random(64/8)}var key=EvpKDF.create({keySize:keySize+ivSize}).compute(password,salt);var iv=WordArray.create(key.words.slice(keySize),ivSize*4);key.sigBytes=keySize*4;return CipherParams.create({key:key,iv:iv,salt:salt})}};var PasswordBasedCipher=C_lib.PasswordBasedCipher=SerializableCipher.extend({cfg:SerializableCipher.cfg.extend({kdf:OpenSSLKdf}),encrypt:function(cipher,message,password,cfg){cfg=this.cfg.extend(cfg);var derivedParams=cfg.kdf.execute(password,cipher.keySize,cipher.ivSize);cfg.iv=derivedParams.iv;var ciphertext=SerializableCipher.encrypt.call(this,cipher,message,derivedParams.key,cfg);ciphertext.mixIn(derivedParams);return ciphertext},decrypt:function(cipher,ciphertext,password,cfg){cfg=this.cfg.extend(cfg);ciphertext=this._parse(ciphertext,cfg.format);var derivedParams=cfg.kdf.execute(password,cipher.keySize,cipher.ivSize,ciphertext.salt);cfg.iv=derivedParams.iv;var plaintext=SerializableCipher.decrypt.call(this,cipher,ciphertext,derivedParams.key,cfg);return plaintext}})}()})})(cipherCore);var modeCfb={exports:{}};(function(module,exports){(function(root,factory,undef){{module.exports=factory(core.exports,cipherCore.exports)}})(commonjsGlobal,function(CryptoJS){CryptoJS.mode.CFB=function(){var CFB=CryptoJS.lib.BlockCipherMode.extend();CFB.Encryptor=CFB.extend({processBlock:function(words,offset){var cipher=this._cipher;var blockSize=cipher.blockSize;generateKeystreamAndEncrypt.call(this,words,offset,blockSize,cipher);this._prevBlock=words.slice(offset,offset+blockSize)}});CFB.Decryptor=CFB.extend({processBlock:function(words,offset){var cipher=this._cipher;var blockSize=cipher.blockSize;var thisBlock=words.slice(offset,offset+blockSize);generateKeystreamAndEncrypt.call(this,words,offset,blockSize,cipher);this._prevBlock=thisBlock}});function generateKeystreamAndEncrypt(words,offset,blockSize,cipher){var keystream;var iv=this._iv;if(iv){keystream=iv.slice(0);this._iv=undefined}else{keystream=this._prevBlock}cipher.encryptBlock(keystream,0);for(var i=0;i>24&255)===255){var b1=word>>16&255;var b2=word>>8&255;var b3=word&255;if(b1===255){b1=0;if(b2===255){b2=0;if(b3===255){b3=0}else{++b3}}else{++b2}}else{++b1}word=0;word+=b1<<16;word+=b2<<8;word+=b3}else{word+=1<<24}return word}function incCounter(counter){if((counter[0]=incWord(counter[0]))===0){counter[1]=incWord(counter[1])}return counter}var Encryptor=CTRGladman.Encryptor=CTRGladman.extend({processBlock:function(words,offset){var cipher=this._cipher;var blockSize=cipher.blockSize;var iv=this._iv;var counter=this._counter;if(iv){counter=this._counter=iv.slice(0);this._iv=undefined}incCounter(counter);var keystream=counter.slice(0);cipher.encryptBlock(keystream,0);for(var i=0;i>>2]|=nPaddingBytes<<24-lastBytePos%4*8;data.sigBytes+=nPaddingBytes},unpad:function(data){var nPaddingBytes=data.words[data.sigBytes-1>>>2]&255;data.sigBytes-=nPaddingBytes}};return CryptoJS.pad.Ansix923})})(padAnsix923);var padIso10126={exports:{}};(function(module,exports){(function(root,factory,undef){{module.exports=factory(core.exports,cipherCore.exports)}})(commonjsGlobal,function(CryptoJS){CryptoJS.pad.Iso10126={pad:function(data,blockSize){var blockSizeBytes=blockSize*4;var nPaddingBytes=blockSizeBytes-data.sigBytes%blockSizeBytes;data.concat(CryptoJS.lib.WordArray.random(nPaddingBytes-1)).concat(CryptoJS.lib.WordArray.create([nPaddingBytes<<24],1))},unpad:function(data){var nPaddingBytes=data.words[data.sigBytes-1>>>2]&255;data.sigBytes-=nPaddingBytes}};return CryptoJS.pad.Iso10126})})(padIso10126);var padIso97971={exports:{}};(function(module,exports){(function(root,factory,undef){{module.exports=factory(core.exports,cipherCore.exports)}})(commonjsGlobal,function(CryptoJS){CryptoJS.pad.Iso97971={pad:function(data,blockSize){data.concat(CryptoJS.lib.WordArray.create([2147483648],1));CryptoJS.pad.ZeroPadding.pad(data,blockSize)},unpad:function(data){CryptoJS.pad.ZeroPadding.unpad(data);data.sigBytes--}};return CryptoJS.pad.Iso97971})})(padIso97971);var padZeropadding={exports:{}};(function(module,exports){(function(root,factory,undef){{module.exports=factory(core.exports,cipherCore.exports)}})(commonjsGlobal,function(CryptoJS){CryptoJS.pad.ZeroPadding={pad:function(data,blockSize){var blockSizeBytes=blockSize*4;data.clamp();data.sigBytes+=blockSizeBytes-(data.sigBytes%blockSizeBytes||blockSizeBytes)},unpad:function(data){var dataWords=data.words;var i=data.sigBytes-1;for(var i=data.sigBytes-1;i>=0;i--){if(dataWords[i>>>2]>>>24-i%4*8&255){data.sigBytes=i+1;break}}}};return CryptoJS.pad.ZeroPadding})})(padZeropadding);var padNopadding={exports:{}};(function(module,exports){(function(root,factory,undef){{module.exports=factory(core.exports,cipherCore.exports)}})(commonjsGlobal,function(CryptoJS){CryptoJS.pad.NoPadding={pad:function(){},unpad:function(){}};return CryptoJS.pad.NoPadding})})(padNopadding);var formatHex={exports:{}};(function(module,exports){(function(root,factory,undef){{module.exports=factory(core.exports,cipherCore.exports)}})(commonjsGlobal,function(CryptoJS){(function(undefined$1){var C=CryptoJS;var C_lib=C.lib;var CipherParams=C_lib.CipherParams;var C_enc=C.enc;var Hex=C_enc.Hex;var C_format=C.format;C_format.Hex={stringify:function(cipherParams){return cipherParams.ciphertext.toString(Hex)},parse:function(input){var ciphertext=Hex.parse(input);return CipherParams.create({ciphertext:ciphertext})}}})();return CryptoJS.format.Hex})})(formatHex);var aes={exports:{}};(function(module,exports){(function(root,factory,undef){{module.exports=factory(core.exports,encBase64.exports,md5.exports,evpkdf.exports,cipherCore.exports)}})(commonjsGlobal,function(CryptoJS){(function(){var C=CryptoJS;var C_lib=C.lib;var BlockCipher=C_lib.BlockCipher;var C_algo=C.algo;var SBOX=[];var INV_SBOX=[];var SUB_MIX_0=[];var SUB_MIX_1=[];var SUB_MIX_2=[];var SUB_MIX_3=[];var INV_SUB_MIX_0=[];var INV_SUB_MIX_1=[];var INV_SUB_MIX_2=[];var INV_SUB_MIX_3=[];(function(){var d=[];for(var i=0;i<256;i++){if(i<128){d[i]=i<<1}else{d[i]=i<<1^283}}var x=0;var xi=0;for(var i=0;i<256;i++){var sx=xi^xi<<1^xi<<2^xi<<3^xi<<4;sx=sx>>>8^sx&255^99;SBOX[x]=sx;INV_SBOX[sx]=x;var x2=d[x];var x4=d[x2];var x8=d[x4];var t=d[sx]*257^sx*16843008;SUB_MIX_0[x]=t<<24|t>>>8;SUB_MIX_1[x]=t<<16|t>>>16;SUB_MIX_2[x]=t<<8|t>>>24;SUB_MIX_3[x]=t;var t=x8*16843009^x4*65537^x2*257^x*16843008;INV_SUB_MIX_0[sx]=t<<24|t>>>8;INV_SUB_MIX_1[sx]=t<<16|t>>>16;INV_SUB_MIX_2[sx]=t<<8|t>>>24;INV_SUB_MIX_3[sx]=t;if(!x){x=xi=1}else{x=x2^d[d[d[x8^x2]]];xi^=d[d[xi]]}}})();var RCON=[0,1,2,4,8,16,32,64,128,27,54];var AES=C_algo.AES=BlockCipher.extend({_doReset:function(){var t;if(this._nRounds&&this._keyPriorReset===this._key){return}var key=this._keyPriorReset=this._key;var keyWords=key.words;var keySize=key.sigBytes/4;var nRounds=this._nRounds=keySize+6;var ksRows=(nRounds+1)*4;var keySchedule=this._keySchedule=[];for(var ksRow=0;ksRow>>24;t=SBOX[t>>>24]<<24|SBOX[t>>>16&255]<<16|SBOX[t>>>8&255]<<8|SBOX[t&255];t^=RCON[ksRow/keySize|0]<<24}else if(keySize>6&&ksRow%keySize==4){t=SBOX[t>>>24]<<24|SBOX[t>>>16&255]<<16|SBOX[t>>>8&255]<<8|SBOX[t&255]}keySchedule[ksRow]=keySchedule[ksRow-keySize]^t}}var invKeySchedule=this._invKeySchedule=[];for(var invKsRow=0;invKsRow>>24]]^INV_SUB_MIX_1[SBOX[t>>>16&255]]^INV_SUB_MIX_2[SBOX[t>>>8&255]]^INV_SUB_MIX_3[SBOX[t&255]]}}},encryptBlock:function(M,offset){this._doCryptBlock(M,offset,this._keySchedule,SUB_MIX_0,SUB_MIX_1,SUB_MIX_2,SUB_MIX_3,SBOX)},decryptBlock:function(M,offset){var t=M[offset+1];M[offset+1]=M[offset+3];M[offset+3]=t;this._doCryptBlock(M,offset,this._invKeySchedule,INV_SUB_MIX_0,INV_SUB_MIX_1,INV_SUB_MIX_2,INV_SUB_MIX_3,INV_SBOX);var t=M[offset+1];M[offset+1]=M[offset+3];M[offset+3]=t},_doCryptBlock:function(M,offset,keySchedule,SUB_MIX_0,SUB_MIX_1,SUB_MIX_2,SUB_MIX_3,SBOX){var nRounds=this._nRounds;var s0=M[offset]^keySchedule[0];var s1=M[offset+1]^keySchedule[1];var s2=M[offset+2]^keySchedule[2];var s3=M[offset+3]^keySchedule[3];var ksRow=4;for(var round=1;round>>24]^SUB_MIX_1[s1>>>16&255]^SUB_MIX_2[s2>>>8&255]^SUB_MIX_3[s3&255]^keySchedule[ksRow++];var t1=SUB_MIX_0[s1>>>24]^SUB_MIX_1[s2>>>16&255]^SUB_MIX_2[s3>>>8&255]^SUB_MIX_3[s0&255]^keySchedule[ksRow++];var t2=SUB_MIX_0[s2>>>24]^SUB_MIX_1[s3>>>16&255]^SUB_MIX_2[s0>>>8&255]^SUB_MIX_3[s1&255]^keySchedule[ksRow++];var t3=SUB_MIX_0[s3>>>24]^SUB_MIX_1[s0>>>16&255]^SUB_MIX_2[s1>>>8&255]^SUB_MIX_3[s2&255]^keySchedule[ksRow++];s0=t0;s1=t1;s2=t2;s3=t3}var t0=(SBOX[s0>>>24]<<24|SBOX[s1>>>16&255]<<16|SBOX[s2>>>8&255]<<8|SBOX[s3&255])^keySchedule[ksRow++];var t1=(SBOX[s1>>>24]<<24|SBOX[s2>>>16&255]<<16|SBOX[s3>>>8&255]<<8|SBOX[s0&255])^keySchedule[ksRow++];var t2=(SBOX[s2>>>24]<<24|SBOX[s3>>>16&255]<<16|SBOX[s0>>>8&255]<<8|SBOX[s1&255])^keySchedule[ksRow++];var t3=(SBOX[s3>>>24]<<24|SBOX[s0>>>16&255]<<16|SBOX[s1>>>8&255]<<8|SBOX[s2&255])^keySchedule[ksRow++];M[offset]=t0;M[offset+1]=t1;M[offset+2]=t2;M[offset+3]=t3},keySize:256/32});C.AES=BlockCipher._createHelper(AES)})();return CryptoJS.AES})})(aes);var tripledes={exports:{}};(function(module,exports){(function(root,factory,undef){{module.exports=factory(core.exports,encBase64.exports,md5.exports,evpkdf.exports,cipherCore.exports)}})(commonjsGlobal,function(CryptoJS){(function(){var C=CryptoJS;var C_lib=C.lib;var WordArray=C_lib.WordArray;var BlockCipher=C_lib.BlockCipher;var C_algo=C.algo;var PC1=[57,49,41,33,25,17,9,1,58,50,42,34,26,18,10,2,59,51,43,35,27,19,11,3,60,52,44,36,63,55,47,39,31,23,15,7,62,54,46,38,30,22,14,6,61,53,45,37,29,21,13,5,28,20,12,4];var PC2=[14,17,11,24,1,5,3,28,15,6,21,10,23,19,12,4,26,8,16,7,27,20,13,2,41,52,31,37,47,55,30,40,51,45,33,48,44,49,39,56,34,53,46,42,50,36,29,32];var BIT_SHIFTS=[1,2,4,6,8,10,12,14,15,17,19,21,23,25,27,28];var SBOX_P=[{0:8421888,268435456:32768,536870912:8421378,805306368:2,1073741824:512,1342177280:8421890,1610612736:8389122,1879048192:8388608,2147483648:514,2415919104:8389120,2684354560:33280,2952790016:8421376,3221225472:32770,3489660928:8388610,3758096384:0,4026531840:33282,134217728:0,402653184:8421890,671088640:33282,939524096:32768,1207959552:8421888,1476395008:512,1744830464:8421378,2013265920:2,2281701376:8389120,2550136832:33280,2818572288:8421376,3087007744:8389122,3355443200:8388610,3623878656:32770,3892314112:514,4160749568:8388608,1:32768,268435457:2,536870913:8421888,805306369:8388608,1073741825:8421378,1342177281:33280,1610612737:512,1879048193:8389122,2147483649:8421890,2415919105:8421376,2684354561:8388610,2952790017:33282,3221225473:514,3489660929:8389120,3758096385:32770,4026531841:0,134217729:8421890,402653185:8421376,671088641:8388608,939524097:512,1207959553:32768,1476395009:8388610,1744830465:2,2013265921:33282,2281701377:32770,2550136833:8389122,2818572289:514,3087007745:8421888,3355443201:8389120,3623878657:0,3892314113:33280,4160749569:8421378},{0:1074282512,16777216:16384,33554432:524288,50331648:1074266128,67108864:1073741840,83886080:1074282496,100663296:1073758208,117440512:16,134217728:540672,150994944:1073758224,167772160:1073741824,184549376:540688,201326592:524304,218103808:0,234881024:16400,251658240:1074266112,8388608:1073758208,25165824:540688,41943040:16,58720256:1073758224,75497472:1074282512,92274688:1073741824,109051904:524288,125829120:1074266128,142606336:524304,159383552:0,176160768:16384,192937984:1074266112,209715200:1073741840,226492416:540672,243269632:1074282496,260046848:16400,268435456:0,285212672:1074266128,301989888:1073758224,318767104:1074282496,335544320:1074266112,352321536:16,369098752:540688,385875968:16384,402653184:16400,419430400:524288,436207616:524304,452984832:1073741840,469762048:540672,486539264:1073758208,503316480:1073741824,520093696:1074282512,276824064:540688,293601280:524288,310378496:1074266112,327155712:16384,343932928:1073758208,360710144:1074282512,377487360:16,394264576:1073741824,411041792:1074282496,427819008:1073741840,444596224:1073758224,461373440:524304,478150656:0,494927872:16400,511705088:1074266128,528482304:540672},{0:260,1048576:0,2097152:67109120,3145728:65796,4194304:65540,5242880:67108868,6291456:67174660,7340032:67174400,8388608:67108864,9437184:67174656,10485760:65792,11534336:67174404,12582912:67109124,13631488:65536,14680064:4,15728640:256,524288:67174656,1572864:67174404,2621440:0,3670016:67109120,4718592:67108868,5767168:65536,6815744:65540,7864320:260,8912896:4,9961472:256,11010048:67174400,12058624:65796,13107200:65792,14155776:67109124,15204352:67174660,16252928:67108864,16777216:67174656,17825792:65540,18874368:65536,19922944:67109120,20971520:256,22020096:67174660,23068672:67108868,24117248:0,25165824:67109124,26214400:67108864,27262976:4,28311552:65792,29360128:67174400,30408704:260,31457280:65796,32505856:67174404,17301504:67108864,18350080:260,19398656:67174656,20447232:0,21495808:65540,22544384:67109120,23592960:256,24641536:67174404,25690112:65536,26738688:67174660,27787264:65796,28835840:67108868,29884416:67109124,30932992:67174400,31981568:4,33030144:65792},{0:2151682048,65536:2147487808,131072:4198464,196608:2151677952,262144:0,327680:4198400,393216:2147483712,458752:4194368,524288:2147483648,589824:4194304,655360:64,720896:2147487744,786432:2151678016,851968:4160,917504:4096,983040:2151682112,32768:2147487808,98304:64,163840:2151678016,229376:2147487744,294912:4198400,360448:2151682112,425984:0,491520:2151677952,557056:4096,622592:2151682048,688128:4194304,753664:4160,819200:2147483648,884736:4194368,950272:4198464,1015808:2147483712,1048576:4194368,1114112:4198400,1179648:2147483712,1245184:0,1310720:4160,1376256:2151678016,1441792:2151682048,1507328:2147487808,1572864:2151682112,1638400:2147483648,1703936:2151677952,1769472:4198464,1835008:2147487744,1900544:4194304,1966080:64,2031616:4096,1081344:2151677952,1146880:2151682112,1212416:0,1277952:4198400,1343488:4194368,1409024:2147483648,1474560:2147487808,1540096:64,1605632:2147483712,1671168:4096,1736704:2147487744,1802240:2151678016,1867776:4160,1933312:2151682048,1998848:4194304,2064384:4198464},{0:128,4096:17039360,8192:262144,12288:536870912,16384:537133184,20480:16777344,24576:553648256,28672:262272,32768:16777216,36864:537133056,40960:536871040,45056:553910400,49152:553910272,53248:0,57344:17039488,61440:553648128,2048:17039488,6144:553648256,10240:128,14336:17039360,18432:262144,22528:537133184,26624:553910272,30720:536870912,34816:537133056,38912:0,43008:553910400,47104:16777344,51200:536871040,55296:553648128,59392:16777216,63488:262272,65536:262144,69632:128,73728:536870912,77824:553648256,81920:16777344,86016:553910272,90112:537133184,94208:16777216,98304:553910400,102400:553648128,106496:17039360,110592:537133056,114688:262272,118784:536871040,122880:0,126976:17039488,67584:553648256,71680:16777216,75776:17039360,79872:537133184,83968:536870912,88064:17039488,92160:128,96256:553910272,100352:262272,104448:553910400,108544:0,112640:553648128,116736:16777344,120832:262144,124928:537133056,129024:536871040},{0:268435464,256:8192,512:270532608,768:270540808,1024:268443648,1280:2097152,1536:2097160,1792:268435456,2048:0,2304:268443656,2560:2105344,2816:8,3072:270532616,3328:2105352,3584:8200,3840:270540800,128:270532608,384:270540808,640:8,896:2097152,1152:2105352,1408:268435464,1664:268443648,1920:8200,2176:2097160,2432:8192,2688:268443656,2944:270532616,3200:0,3456:270540800,3712:2105344,3968:268435456,4096:268443648,4352:270532616,4608:270540808,4864:8200,5120:2097152,5376:268435456,5632:268435464,5888:2105344,6144:2105352,6400:0,6656:8,6912:270532608,7168:8192,7424:268443656,7680:270540800,7936:2097160,4224:8,4480:2105344,4736:2097152,4992:268435464,5248:268443648,5504:8200,5760:270540808,6016:270532608,6272:270540800,6528:270532616,6784:8192,7040:2105352,7296:2097160,7552:0,7808:268435456,8064:268443656},{0:1048576,16:33555457,32:1024,48:1049601,64:34604033,80:0,96:1,112:34603009,128:33555456,144:1048577,160:33554433,176:34604032,192:34603008,208:1025,224:1049600,240:33554432,8:34603009,24:0,40:33555457,56:34604032,72:1048576,88:33554433,104:33554432,120:1025,136:1049601,152:33555456,168:34603008,184:1048577,200:1024,216:34604033,232:1,248:1049600,256:33554432,272:1048576,288:33555457,304:34603009,320:1048577,336:33555456,352:34604032,368:1049601,384:1025,400:34604033,416:1049600,432:1,448:0,464:34603008,480:33554433,496:1024,264:1049600,280:33555457,296:34603009,312:1,328:33554432,344:1048576,360:1025,376:34604032,392:33554433,408:34603008,424:0,440:34604033,456:1049601,472:1024,488:33555456,504:1048577},{0:134219808,1:131072,2:134217728,3:32,4:131104,5:134350880,6:134350848,7:2048,8:134348800,9:134219776,10:133120,11:134348832,12:2080,13:0,14:134217760,15:133152,2147483648:2048,2147483649:134350880,2147483650:134219808,2147483651:134217728,2147483652:134348800,2147483653:133120,2147483654:133152,2147483655:32,2147483656:134217760,2147483657:2080,2147483658:131104,2147483659:134350848,2147483660:0,2147483661:134348832,2147483662:134219776,2147483663:131072,16:133152,17:134350848,18:32,19:2048,20:134219776,21:134217760,22:134348832,23:131072,24:0,25:131104,26:134348800,27:134219808,28:134350880,29:133120,30:2080,31:134217728,2147483664:131072,2147483665:2048,2147483666:134348832,2147483667:133152,2147483668:32,2147483669:134348800,2147483670:134217728,2147483671:134219808,2147483672:134350880,2147483673:134217760,2147483674:134219776,2147483675:0,2147483676:133120,2147483677:2080,2147483678:131104,2147483679:134350848}];var SBOX_MASK=[4160749569,528482304,33030144,2064384,129024,8064,504,2147483679];var DES=C_algo.DES=BlockCipher.extend({_doReset:function(){var key=this._key;var keyWords=key.words;var keyBits=[];for(var i=0;i<56;i++){var keyBitPos=PC1[i]-1;keyBits[i]=keyWords[keyBitPos>>>5]>>>31-keyBitPos%32&1}var subKeys=this._subKeys=[];for(var nSubKey=0;nSubKey<16;nSubKey++){var subKey=subKeys[nSubKey]=[];var bitShift=BIT_SHIFTS[nSubKey];for(var i=0;i<24;i++){subKey[i/6|0]|=keyBits[(PC2[i]-1+bitShift)%28]<<31-i%6;subKey[4+(i/6|0)]|=keyBits[28+(PC2[i+24]-1+bitShift)%28]<<31-i%6}subKey[0]=subKey[0]<<1|subKey[0]>>>31;for(var i=1;i<7;i++){subKey[i]=subKey[i]>>>(i-1)*4+3}subKey[7]=subKey[7]<<5|subKey[7]>>>27}var invSubKeys=this._invSubKeys=[];for(var i=0;i<16;i++){invSubKeys[i]=subKeys[15-i]}},encryptBlock:function(M,offset){this._doCryptBlock(M,offset,this._subKeys)},decryptBlock:function(M,offset){this._doCryptBlock(M,offset,this._invSubKeys)},_doCryptBlock:function(M,offset,subKeys){this._lBlock=M[offset];this._rBlock=M[offset+1];exchangeLR.call(this,4,252645135);exchangeLR.call(this,16,65535);exchangeRL.call(this,2,858993459);exchangeRL.call(this,8,16711935);exchangeLR.call(this,1,1431655765);for(var round=0;round<16;round++){var subKey=subKeys[round];var lBlock=this._lBlock;var rBlock=this._rBlock;var f=0;for(var i=0;i<8;i++){f|=SBOX_P[i][((rBlock^subKey[i])&SBOX_MASK[i])>>>0]}this._lBlock=rBlock;this._rBlock=lBlock^f}var t=this._lBlock;this._lBlock=this._rBlock;this._rBlock=t;exchangeLR.call(this,1,1431655765);exchangeRL.call(this,8,16711935);exchangeRL.call(this,2,858993459);exchangeLR.call(this,16,65535);exchangeLR.call(this,4,252645135);M[offset]=this._lBlock;M[offset+1]=this._rBlock},keySize:64/32,ivSize:64/32,blockSize:64/32});function exchangeLR(offset,mask){var t=(this._lBlock>>>offset^this._rBlock)&mask;this._rBlock^=t;this._lBlock^=t<>>offset^this._lBlock)&mask;this._lBlock^=t;this._rBlock^=t<192.")}var key1=keyWords.slice(0,2);var key2=keyWords.length<4?keyWords.slice(0,2):keyWords.slice(2,4);var key3=keyWords.length<6?keyWords.slice(0,2):keyWords.slice(4,6);this._des1=DES.createEncryptor(WordArray.create(key1));this._des2=DES.createEncryptor(WordArray.create(key2));this._des3=DES.createEncryptor(WordArray.create(key3))},encryptBlock:function(M,offset){this._des1.encryptBlock(M,offset);this._des2.decryptBlock(M,offset);this._des3.encryptBlock(M,offset)},decryptBlock:function(M,offset){this._des3.decryptBlock(M,offset);this._des2.encryptBlock(M,offset);this._des1.decryptBlock(M,offset)},keySize:192/32,ivSize:64/32,blockSize:64/32});C.TripleDES=BlockCipher._createHelper(TripleDES)})();return CryptoJS.TripleDES})})(tripledes);var rc4={exports:{}};(function(module,exports){(function(root,factory,undef){{module.exports=factory(core.exports,encBase64.exports,md5.exports,evpkdf.exports,cipherCore.exports)}})(commonjsGlobal,function(CryptoJS){(function(){var C=CryptoJS;var C_lib=C.lib;var StreamCipher=C_lib.StreamCipher;var C_algo=C.algo;var RC4=C_algo.RC4=StreamCipher.extend({_doReset:function(){var key=this._key;var keyWords=key.words;var keySigBytes=key.sigBytes;var S=this._S=[];for(var i=0;i<256;i++){S[i]=i}for(var i=0,j=0;i<256;i++){var keyByteIndex=i%keySigBytes;var keyByte=keyWords[keyByteIndex>>>2]>>>24-keyByteIndex%4*8&255;j=(j+S[i]+keyByte)%256;var t=S[i];S[i]=S[j];S[j]=t}this._i=this._j=0},_doProcessBlock:function(M,offset){M[offset]^=generateKeystreamWord.call(this)},keySize:256/32,ivSize:0});function generateKeystreamWord(){var S=this._S;var i=this._i;var j=this._j;var keystreamWord=0;for(var n=0;n<4;n++){i=(i+1)%256;j=(j+S[i])%256;var t=S[i];S[i]=S[j];S[j]=t;keystreamWord|=S[(S[i]+S[j])%256]<<24-n*8}this._i=i;this._j=j;return keystreamWord}C.RC4=StreamCipher._createHelper(RC4);var RC4Drop=C_algo.RC4Drop=RC4.extend({cfg:RC4.cfg.extend({drop:192}),_doReset:function(){RC4._doReset.call(this);for(var i=this.cfg.drop;i>0;i--){generateKeystreamWord.call(this)}}});C.RC4Drop=StreamCipher._createHelper(RC4Drop)})();return CryptoJS.RC4})})(rc4);var rabbit={exports:{}};(function(module,exports){(function(root,factory,undef){{module.exports=factory(core.exports,encBase64.exports,md5.exports,evpkdf.exports,cipherCore.exports)}})(commonjsGlobal,function(CryptoJS){(function(){var C=CryptoJS;var C_lib=C.lib;var StreamCipher=C_lib.StreamCipher;var C_algo=C.algo;var S=[];var C_=[];var G=[];var Rabbit=C_algo.Rabbit=StreamCipher.extend({_doReset:function(){var K=this._key.words;var iv=this.cfg.iv;for(var i=0;i<4;i++){K[i]=(K[i]<<8|K[i]>>>24)&16711935|(K[i]<<24|K[i]>>>8)&4278255360}var X=this._X=[K[0],K[3]<<16|K[2]>>>16,K[1],K[0]<<16|K[3]>>>16,K[2],K[1]<<16|K[0]>>>16,K[3],K[2]<<16|K[1]>>>16];var C=this._C=[K[2]<<16|K[2]>>>16,K[0]&4294901760|K[1]&65535,K[3]<<16|K[3]>>>16,K[1]&4294901760|K[2]&65535,K[0]<<16|K[0]>>>16,K[2]&4294901760|K[3]&65535,K[1]<<16|K[1]>>>16,K[3]&4294901760|K[0]&65535];this._b=0;for(var i=0;i<4;i++){nextState.call(this)}for(var i=0;i<8;i++){C[i]^=X[i+4&7]}if(iv){var IV=iv.words;var IV_0=IV[0];var IV_1=IV[1];var i0=(IV_0<<8|IV_0>>>24)&16711935|(IV_0<<24|IV_0>>>8)&4278255360;var i2=(IV_1<<8|IV_1>>>24)&16711935|(IV_1<<24|IV_1>>>8)&4278255360;var i1=i0>>>16|i2&4294901760;var i3=i2<<16|i0&65535;C[0]^=i0;C[1]^=i1;C[2]^=i2;C[3]^=i3;C[4]^=i0;C[5]^=i1;C[6]^=i2;C[7]^=i3;for(var i=0;i<4;i++){nextState.call(this)}}},_doProcessBlock:function(M,offset){var X=this._X;nextState.call(this);S[0]=X[0]^X[5]>>>16^X[3]<<16;S[1]=X[2]^X[7]>>>16^X[5]<<16;S[2]=X[4]^X[1]>>>16^X[7]<<16;S[3]=X[6]^X[3]>>>16^X[1]<<16;for(var i=0;i<4;i++){S[i]=(S[i]<<8|S[i]>>>24)&16711935|(S[i]<<24|S[i]>>>8)&4278255360;M[offset+i]^=S[i]}},blockSize:128/32,ivSize:64/32});function nextState(){var X=this._X;var C=this._C;for(var i=0;i<8;i++){C_[i]=C[i]}C[0]=C[0]+1295307597+this._b|0;C[1]=C[1]+3545052371+(C[0]>>>0>>0?1:0)|0;C[2]=C[2]+886263092+(C[1]>>>0>>0?1:0)|0;C[3]=C[3]+1295307597+(C[2]>>>0>>0?1:0)|0;C[4]=C[4]+3545052371+(C[3]>>>0>>0?1:0)|0;C[5]=C[5]+886263092+(C[4]>>>0>>0?1:0)|0;C[6]=C[6]+1295307597+(C[5]>>>0>>0?1:0)|0;C[7]=C[7]+3545052371+(C[6]>>>0>>0?1:0)|0;this._b=C[7]>>>0>>0?1:0;for(var i=0;i<8;i++){var gx=X[i]+C[i];var ga=gx&65535;var gb=gx>>>16;var gh=((ga*ga>>>17)+ga*gb>>>15)+gb*gb;var gl=((gx&4294901760)*gx|0)+((gx&65535)*gx|0);G[i]=gh^gl}X[0]=G[0]+(G[7]<<16|G[7]>>>16)+(G[6]<<16|G[6]>>>16)|0;X[1]=G[1]+(G[0]<<8|G[0]>>>24)+G[7]|0;X[2]=G[2]+(G[1]<<16|G[1]>>>16)+(G[0]<<16|G[0]>>>16)|0;X[3]=G[3]+(G[2]<<8|G[2]>>>24)+G[1]|0;X[4]=G[4]+(G[3]<<16|G[3]>>>16)+(G[2]<<16|G[2]>>>16)|0;X[5]=G[5]+(G[4]<<8|G[4]>>>24)+G[3]|0;X[6]=G[6]+(G[5]<<16|G[5]>>>16)+(G[4]<<16|G[4]>>>16)|0;X[7]=G[7]+(G[6]<<8|G[6]>>>24)+G[5]|0}C.Rabbit=StreamCipher._createHelper(Rabbit)})();return CryptoJS.Rabbit})})(rabbit);var rabbitLegacy={exports:{}};(function(module,exports){(function(root,factory,undef){{module.exports=factory(core.exports,encBase64.exports,md5.exports,evpkdf.exports,cipherCore.exports)}})(commonjsGlobal,function(CryptoJS){(function(){var C=CryptoJS;var C_lib=C.lib;var StreamCipher=C_lib.StreamCipher;var C_algo=C.algo;var S=[];var C_=[];var G=[];var RabbitLegacy=C_algo.RabbitLegacy=StreamCipher.extend({_doReset:function(){var K=this._key.words;var iv=this.cfg.iv;var X=this._X=[K[0],K[3]<<16|K[2]>>>16,K[1],K[0]<<16|K[3]>>>16,K[2],K[1]<<16|K[0]>>>16,K[3],K[2]<<16|K[1]>>>16];var C=this._C=[K[2]<<16|K[2]>>>16,K[0]&4294901760|K[1]&65535,K[3]<<16|K[3]>>>16,K[1]&4294901760|K[2]&65535,K[0]<<16|K[0]>>>16,K[2]&4294901760|K[3]&65535,K[1]<<16|K[1]>>>16,K[3]&4294901760|K[0]&65535];this._b=0;for(var i=0;i<4;i++){nextState.call(this)}for(var i=0;i<8;i++){C[i]^=X[i+4&7]}if(iv){var IV=iv.words;var IV_0=IV[0];var IV_1=IV[1];var i0=(IV_0<<8|IV_0>>>24)&16711935|(IV_0<<24|IV_0>>>8)&4278255360;var i2=(IV_1<<8|IV_1>>>24)&16711935|(IV_1<<24|IV_1>>>8)&4278255360;var i1=i0>>>16|i2&4294901760;var i3=i2<<16|i0&65535;C[0]^=i0;C[1]^=i1;C[2]^=i2;C[3]^=i3;C[4]^=i0;C[5]^=i1;C[6]^=i2;C[7]^=i3;for(var i=0;i<4;i++){nextState.call(this)}}},_doProcessBlock:function(M,offset){var X=this._X;nextState.call(this);S[0]=X[0]^X[5]>>>16^X[3]<<16;S[1]=X[2]^X[7]>>>16^X[5]<<16;S[2]=X[4]^X[1]>>>16^X[7]<<16;S[3]=X[6]^X[3]>>>16^X[1]<<16;for(var i=0;i<4;i++){S[i]=(S[i]<<8|S[i]>>>24)&16711935|(S[i]<<24|S[i]>>>8)&4278255360;M[offset+i]^=S[i]}},blockSize:128/32,ivSize:64/32});function nextState(){var X=this._X;var C=this._C;for(var i=0;i<8;i++){C_[i]=C[i]}C[0]=C[0]+1295307597+this._b|0;C[1]=C[1]+3545052371+(C[0]>>>0>>0?1:0)|0;C[2]=C[2]+886263092+(C[1]>>>0>>0?1:0)|0;C[3]=C[3]+1295307597+(C[2]>>>0>>0?1:0)|0;C[4]=C[4]+3545052371+(C[3]>>>0>>0?1:0)|0;C[5]=C[5]+886263092+(C[4]>>>0>>0?1:0)|0;C[6]=C[6]+1295307597+(C[5]>>>0>>0?1:0)|0;C[7]=C[7]+3545052371+(C[6]>>>0>>0?1:0)|0;this._b=C[7]>>>0>>0?1:0;for(var i=0;i<8;i++){var gx=X[i]+C[i];var ga=gx&65535;var gb=gx>>>16;var gh=((ga*ga>>>17)+ga*gb>>>15)+gb*gb;var gl=((gx&4294901760)*gx|0)+((gx&65535)*gx|0);G[i]=gh^gl}X[0]=G[0]+(G[7]<<16|G[7]>>>16)+(G[6]<<16|G[6]>>>16)|0;X[1]=G[1]+(G[0]<<8|G[0]>>>24)+G[7]|0;X[2]=G[2]+(G[1]<<16|G[1]>>>16)+(G[0]<<16|G[0]>>>16)|0;X[3]=G[3]+(G[2]<<8|G[2]>>>24)+G[1]|0;X[4]=G[4]+(G[3]<<16|G[3]>>>16)+(G[2]<<16|G[2]>>>16)|0;X[5]=G[5]+(G[4]<<8|G[4]>>>24)+G[3]|0;X[6]=G[6]+(G[5]<<16|G[5]>>>16)+(G[4]<<16|G[4]>>>16)|0;X[7]=G[7]+(G[6]<<8|G[6]>>>24)+G[5]|0}C.RabbitLegacy=StreamCipher._createHelper(RabbitLegacy)})();return CryptoJS.RabbitLegacy})})(rabbitLegacy);(function(module,exports){(function(root,factory,undef){{module.exports=factory(core.exports,x64Core.exports,libTypedarrays.exports,encUtf16.exports,encBase64.exports,encBase64url.exports,md5.exports,sha1.exports,sha256.exports,sha224.exports,sha512.exports,sha384.exports,sha3.exports,ripemd160.exports,hmac.exports,pbkdf2.exports,evpkdf.exports,cipherCore.exports,modeCfb.exports,modeCtr.exports,modeCtrGladman.exports,modeOfb.exports,modeEcb.exports,padAnsix923.exports,padIso10126.exports,padIso97971.exports,padZeropadding.exports,padNopadding.exports,formatHex.exports,aes.exports,tripledes.exports,rc4.exports,rabbit.exports,rabbitLegacy.exports)}})(commonjsGlobal,function(CryptoJS){return CryptoJS})})(cryptoJs);var exports$2={},reDigits=/^\d+$/;exports$2.io=io;exports$2.SHA1=function(string){return cryptoJs.exports.SHA1(string).toString()};exports$2.AES={decrypt:function(string,fgh){return cryptoJs.exports.AES.decrypt(string,fgh).toString(cryptoJs.exports.enc.Utf8)},encrypt:function(string,fgh){return cryptoJs.exports.AES.encrypt(string,fgh).toString()}};exports$2.ssplit=function(string,seperator){var components=string.split(seperator);return[components.shift(),components.join(seperator)]};exports$2.activeElement=function(){try{return document.activeElement}catch(e){return}};exports$2.isDigits=function(value){return reDigits.test(value)};exports$2.template=function(str,map){return str&&str.replace(/{(\w+)}/gi,function(outer,inner){return Object.prototype.hasOwnProperty.call(map,inner)?map[inner]:outer})};exports$2.getJSON=function(path,onSuccess,onError){var request=new XMLHttpRequest;request.open("GET",path,true);request.onreadystatechange=function(){if(this.readyState===4){if(this.status>=200&&this.status<400){try{onSuccess&&onSuccess(JSON.parse(this.responseText))}catch(e){onError&&onError()}}else{onError&&onError()}}};request.send();request=null};exports$2.escapeHtml=function(){var pattern=/[&<>"'/]/g,entities={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/"};return function(string){return String(string).replace(pattern,function(s){return entities[s]})}}();var exports$1={};exports$1.html=function(string){this.forEach(function(element){element.innerHTML=string});return this};exports$1.append=function(string){this.forEach(function(element){element.innerHTML+=string});return this};exports$1.first=function(){return this[0]};exports$1.on=function(eventName,callback){this.forEach(function(element){if(element.addEventListener){element.addEventListener(eventName,callback,false)}else if(element.attachEvent){element.attachEvent("on"+eventName,callback)}});return this};exports$1.focus=function(){if(this[0]){this[0].focus()}return this};function ElementArray(){}ElementArray.prototype=new Array;for(var k in exports$1)ElementArray.prototype[k]=exports$1[k];function Dollar(selector){var match,matches=new ElementArray;if(selector!==undefined){if(selector===document){matches.push(document)}else if(selector===window){matches.push(window)}else{if(match=document.querySelectorAll(selector)){for(var i=0;isettings.key.maxLen){return mediator.emit("console:error",templates.messages.key_to_long)}else if(payload.lengthsettings.nick.maxLen){return mediator.emit("console:error",Dollar.template(templates.messages.nick_to_long,{nick_maxLen:settings.nick.maxLen}))}else if(payload.length0&&ttl<3600){mediator.emit("console:info",Dollar.template(templates.messages.torch_is_now,{ttl:ttl}));settings.ttl=ttl*1e3}else{mediator.emit("console:error",Dollar.template(templates.messages.torch_not_set))}},param:function(p){parameters=Object.assign({},parameters,p)},showNotification:function(type,nick,text){var title=type!=="message"?"Cryptalk":nick,icon=type==="message"?"gfx/icon_128x128.png":type==="error"?"gfx/icon_128x128_error.png":"gfx/icon_128x128_info.png";mediator.emit("notification:send",{title:title.substring(0,20),body:text.substring(0,80),icon:icon});if(type==="message"){mediator.emit("audio:play",sounds.message)}},motd:function(message){commands.post("motd",message)},info:function(message){commands.post("info",message)},error:function(message){commands.post("error",message)},server:function(message){commands.post("server",message)},message:function(data){commands.post("message",data.message,data.nick)},clearInput:function(){components.input[0].value=""},clear:function(){components.chat[0].innerHTML=""},lockInput:function(){components.input[0].setAttribute("disabled","disabled");components.inputWrapper[0].className="loading"},unlockInput:function(){components.input[0].removeAttribute("disabled");components.inputWrapper[0].className="";components.input.focus()}},onKeyDown=function(e){var buffer,parts,payload,command;if(!e.ctrlKey&&!e.altKey&&components.input[0]!==Dollar.activeElement()){return components.input.focus()}if(e.keyCode!==13||!(buffer=components.input[0].value)){return}if((buffer[0]||buffer.slice(0,1))==="/"){parts=Dollar.ssplit(buffer.slice(1)," ");command=parts[0];payload=parts[1];mediator.emit("command:"+command,payload,function(retvals,recipients){if(!recipients){return commands.post("error",Dollar.template(templates.messages.unrecognized_command,{commandName:command}))}else{commands.clearInput()}})}else{if(!parameters.room||!parameters.key){return!parameters.room?commands.post("error",templates.messages.msg_no_room):commands.post("error",templates.messages.msg_no_key)}mediator.emit("socket:emit",{data:"message:send",payload:{room:Dollar.SHA1(parameters.room),msg:Dollar.AES.encrypt(buffer,Dollar.SHA1(parameters.room)+parameters.key).toString(),nick:parameters.nick?Dollar.AES.encrypt(parameters.nick,Dollar.SHA1(parameters.room)+parameters.key).toString():false}});commands.clearInput()}};Dollar(document).on("keydown",onKeyDown);components.input.focus();for(var commandName in commands){if(commandName!=="post"){mediator.on("console:"+commandName,commands[commandName])}}mediator.on("console:post",function(data){commands.post(data.type,data.data,data.nick)})}function room(mediator,settings,templates){var room=false,join=function(payload){if(room!==false){mediator.emit("console:error",Dollar.template(templates.messages.already_in_room,{room:room}))}else if(payload.length>=settings.room.maxLen){mediator.emit("console:error",Dollar.template(templates.messages.room_name_too_long))}else if(payload.length","\"","'","/","exports$1","html","forEach","element","innerHTML","append","first","eventName","attachEvent","focus","ElementArray","Array","k","Dollar","selector","match","matches","querySelectorAll","l","host","socket","parameters","payload","hostInfo","connect","toHost","forceNew","force new connection","roomName","decrypted","msg","sanitized","sanitized_payload","reconnect","foo","disconnect","param","p","assign","setKey","clear","setTorch","setNick","nick_maxLen","nick_minLen","cons","sounds","chat","inputWrapper","commands","type","text","tpl","uniqueId","getTime","timestamp","toLocaleTimeString","id","showNotification","parent","child","removeChild","torch","substring","clearInput","lockInput","setAttribute","className","unlockInput","removeAttribute","_require","filepath","onKeyDown","parts","command","ctrlKey","altKey","keyCode","retvals","recipients","commandName","leave","count","wind","location"],"mappings":"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"} \ No newline at end of file +{"version":3,"sources":["client/public/js/cryptalk.js"],"names":["let","index","subs","emits","noop","on","fromId","event","handler","once","i","item","subscription","length","push","emit","off","sub","toSubs","splice","persistent","data","callback","explicitSubs","total","left","loop","answers","done","concat","Castrato","this","nodeId","prototype","wrapper","destroy","castrato","win","mediator","exports","focusCallback","blurCallback","setTitle","t","document","title","getTitle","window","addEventListener","observe","notifications","settings","enabled","native_supported","new_title","original_title","blink_timer","interval","last","now","performance","Date","resetState","clearTimeout","undefined","doBlink","setTimeout","enableNative","Notification","permission","requestPermission","blinkTitleUntilFocus","notify","body","icon","fallback","maxOnePerMs","n","onshow","close","templates","help","default_nick","post","motd","info","server","error","message","messages","key_to_short","key_to_long","key_ok","key_no_host","join_no_host","nick_to_short","nick_to_long","nick_set","msg_no_room","not_in_room","msg_no_key","leave_from_nowhere","torch_is_now","torch_not_set","title_set","muted","unmuted","unrecognized_command","room_name_too_long","room_name_too_short","joined_room","left_room","already_in_room","unable_to_decrypt","socket_error","connecting","connected","disconnected","already_connected","reconnect_no_host","host_available","host_unavailable","person_joined","person_left","person_count","person_single","command_failed","bogus","client","ttl","nick","maxLen","minLen","key","room","commonjsGlobal","globalThis","global","self","commonjsRequire","path","Error","cryptoJs","core","module","root","factory","CryptoJS","Math","undefined$1","crypto","msCrypto","require","err","cryptoSecureRandomInt","getRandomValues","Uint32Array","randomBytes","readInt32LE","create","Object","F","obj","subtype","C","C_lib","lib","Base","extend","overrides","mixIn","hasOwnProperty","init","$super","apply","arguments","instance","properties","propertyName","toString","clone","WordArray","words","sigBytes","encoder","Hex","stringify","wordArray","thisWords","thatWords","thisSigBytes","thatSigBytes","clamp","thatByte","j","ceil","call","slice","random","nBytes","C_enc","enc","hexChars","bite","join","parse","hexStr","hexStrLength","parseInt","substr","Latin1","latin1Chars","String","fromCharCode","latin1Str","latin1StrLength","charCodeAt","Utf8","decodeURIComponent","escape","e","utf8Str","unescape","encodeURIComponent","BufferedBlockAlgorithm","reset","_data","_nDataBytes","_append","_process","doFlush","processedWords","dataWords","dataSigBytes","blockSize","blockSizeBytes","nBlocksReady","max","_minBufferSize","nWordsReady","nBytesReady","min","offset","_doProcessBlock","Hasher","cfg","_doReset","update","messageUpdate","finalize","hash","_doFinalize","_createHelper","hasher","_createHmacHelper","C_algo","HMAC","algo","x64Core","X32WordArray","C_x64","x64","Word","high","low","toX32","x64Words","x64WordsLength","x32Words","x64Word","wordsLength","libTypedarrays","ArrayBuffer","superInit","subInit","typedArray","Uint8Array","Int8Array","Uint8ClampedArray","Int16Array","Uint16Array","Int32Array","Float32Array","Float64Array","buffer","byteOffset","byteLength","typedArrayByteLength","encUtf16","Utf16","Utf16BE","utf16Chars","codePoint","utf16Str","utf16StrLength","Utf16LE","swapEndian","word","encBase64","Base64","map","_map","base64Chars","byte1","byte2","byte3","triplet","charAt","paddingChar","base64Str","base64StrLength","reverseMap","_reverseMap","paddingIndex","indexOf","parseLoop","bits1","bits2","bitsCombined","encBase64url","Base64url","urlSafe","_safe_map","md5","T","abs","sin","MD5","_hash","M","offset_i","M_offset_i","H","M_offset_0","M_offset_1","M_offset_2","M_offset_3","M_offset_4","M_offset_5","M_offset_6","M_offset_7","M_offset_8","M_offset_9","M_offset_10","M_offset_11","M_offset_12","M_offset_13","M_offset_14","M_offset_15","a","b","c","d","FF","GG","HH","II","nBitsTotal","nBitsLeft","nBitsTotalH","floor","nBitsTotalL","H_i","x","s","HmacMD5","sha1","W","SHA1","HmacSHA1","sha256","K","isPrime","sqrtN","sqrt","factor","getFractionalBits","nPrime","pow","SHA256","f","g","h","gamma0x","gamma0","gamma1x","gamma1","ch","maj","sigma0","sigma1","t1","t2","HmacSHA256","sha224","undef","SHA224","HmacSHA224","sha512","X64Word","X64WordArray","X64Word_create","SHA512","H0","H1","H2","H3","H4","H5","H6","H7","H0h","H0l","H1h","H1l","H2h","H2l","H3h","H3l","H4h","H4l","H5h","H5l","H6h","H6l","H7h","H7l","ah","al","bh","bl","cl","dh","dl","eh","el","fh","fl","gh","gl","hh","hl","Wil","Wih","Wi","gamma0xh","gamma0xl","gamma0h","gamma0l","gamma1xh","gamma1xl","gamma1h","gamma1l","Wi7","Wi7h","Wi7l","Wi16","Wi16h","Wi16l","chh","chl","majh","majl","sigma0h","sigma0l","sigma1h","sigma1l","Ki","Kih","Kil","t1l","t1h","t2l","t2h","HmacSHA512","sha384","SHA384","HmacSHA384","sha3","RHO_OFFSETS","PI_INDEXES","ROUND_CONSTANTS","y","newX","newY","LFSR","roundConstantMsw","roundConstantLsw","bitPosition","SHA3","outputLength","state","_state","nBlockSizeLanes","M2i","M2i1","lane","round","tMsw","tLsw","Tx","Tx4","Tx1","Tx1Msw","Tx1Lsw","laneIndex","laneMsw","laneLsw","rhoOffset","TPiLane","T0","state0","TLane","Tx1Lane","Tx2Lane","roundConstant","blockSizeBits","outputLengthBytes","outputLengthLanes","hashWords","HmacSHA3","ripemd160","_zl","_zr","_sl","_sr","_hl","_hr","RIPEMD160","hr","zl","zr","sl","sr","ar","br","cr","dr","er","f1","f2","f3","f4","f5","rotl","z","HmacRIPEMD160","hmac","_hasher","hasherBlockSize","hasherBlockSizeBytes","oKey","_oKey","iKey","_iKey","oKeyWords","iKeyWords","innerHash","pbkdf2","PBKDF2","keySize","iterations","compute","password","salt","derivedKey","blockIndex","derivedKeyWords","blockIndexWords","block","blockWords","blockWordsLength","intermediate","intermediateWords","evpkdf","EvpKDF","cipherCore","Cipher","createEncryptor","_ENC_XFORM_MODE","createDecryptor","_DEC_XFORM_MODE","xformMode","_xformMode","_key","process","dataUpdate","finalProcessedData","ivSize","selectCipherStrategy","PasswordBasedCipher","SerializableCipher","cipher","encrypt","decrypt","ciphertext","StreamCipher","finalProcessedBlocks","C_mode","mode","BlockCipherMode","iv","Encryptor","Decryptor","_cipher","_iv","CBC","processBlock","xorBlock","encryptBlock","_prevBlock","thisBlock","decryptBlock","C_pad","pad","Pkcs7","nPaddingBytes","paddingWord","paddingWords","padding","unpad","BlockCipher","modeCreator","_mode","__creator","CipherParams","cipherParams","formatter","C_format","format","OpenSSLFormatter","OpenSSL","openSSLStr","ciphertextWords","encryptor","cipherCfg","algorithm","_parse","plaintext","C_kdf","kdf","OpenSSLKdf","execute","derivedParams","modeCfb","CFB","generateKeystreamAndEncrypt","keystream","modeCtr","CTR","counter","_counter","modeCtrGladman","CTRGladman","incWord","b1","b2","b3","incCounter","modeOfb","OFB","_keystream","modeEcb","ECB","padAnsix923","AnsiX923","lastBytePos","Ansix923","padIso10126","Iso10126","padIso97971","Iso97971","ZeroPadding","padZeropadding","padNopadding","NoPadding","formatHex","input","aes","SBOX","INV_SBOX","SUB_MIX_0","SUB_MIX_1","SUB_MIX_2","SUB_MIX_3","INV_SUB_MIX_0","INV_SUB_MIX_1","INV_SUB_MIX_2","INV_SUB_MIX_3","xi","sx","x2","x4","x8","RCON","AES","_nRounds","_keyPriorReset","keyWords","nRounds","ksRows","keySchedule","_keySchedule","ksRow","invKeySchedule","_invKeySchedule","invKsRow","_doCryptBlock","s0","s1","s2","s3","t0","t3","tripledes","PC1","PC2","BIT_SHIFTS","SBOX_P","0","268435456","536870912","805306368","1073741824","1342177280","1610612736","1879048192","2147483648","2415919104","2684354560","2952790016","3221225472","3489660928","3758096384","4026531840","134217728","402653184","671088640","939524096","1207959552","1476395008","1744830464","2013265920","2281701376","2550136832","2818572288","3087007744","3355443200","3623878656","3892314112","4160749568","1","268435457","536870913","805306369","1073741825","1342177281","1610612737","1879048193","2147483649","2415919105","2684354561","2952790017","3221225473","3489660929","3758096385","4026531841","134217729","402653185","671088641","939524097","1207959553","1476395009","1744830465","2013265921","2281701377","2550136833","2818572289","3087007745","3355443201","3623878657","3892314113","4160749569","16777216","33554432","50331648","67108864","83886080","100663296","117440512","150994944","167772160","184549376","201326592","218103808","234881024","251658240","8388608","25165824","41943040","58720256","75497472","92274688","109051904","125829120","142606336","159383552","176160768","192937984","209715200","226492416","243269632","260046848","285212672","301989888","318767104","335544320","352321536","369098752","385875968","419430400","436207616","452984832","469762048","486539264","503316480","520093696","276824064","293601280","310378496","327155712","343932928","360710144","377487360","394264576","411041792","427819008","444596224","461373440","478150656","494927872","511705088","528482304","1048576","2097152","3145728","4194304","5242880","6291456","7340032","9437184","10485760","11534336","12582912","13631488","14680064","15728640","524288","1572864","2621440","3670016","4718592","5767168","6815744","7864320","8912896","9961472","11010048","12058624","13107200","14155776","15204352","16252928","17825792","18874368","19922944","20971520","22020096","23068672","24117248","26214400","27262976","28311552","29360128","30408704","31457280","32505856","17301504","18350080","19398656","20447232","21495808","22544384","23592960","24641536","25690112","26738688","27787264","28835840","29884416","30932992","31981568","33030144","65536","131072","196608","262144","327680","393216","458752","589824","655360","720896","786432","851968","917504","983040","32768","98304","163840","229376","294912","360448","425984","491520","557056","622592","688128","753664","819200","884736","950272","1015808","1114112","1179648","1245184","1310720","1376256","1441792","1507328","1638400","1703936","1769472","1835008","1900544","1966080","2031616","1081344","1146880","1212416","1277952","1343488","1409024","1474560","1540096","1605632","1671168","1736704","1802240","1867776","1933312","1998848","2064384","4096","8192","12288","16384","20480","24576","28672","36864","40960","45056","49152","53248","57344","61440","2048","6144","10240","14336","18432","22528","26624","30720","34816","38912","43008","47104","51200","55296","59392","63488","69632","73728","77824","81920","86016","90112","94208","102400","106496","110592","114688","118784","122880","126976","67584","71680","75776","79872","83968","88064","92160","96256","100352","104448","108544","112640","116736","120832","124928","129024","256","512","768","1024","1280","1536","1792","2304","2560","2816","3072","3328","3584","3840","128","384","640","896","1152","1408","1664","1920","2176","2432","2688","2944","3200","3456","3712","3968","4352","4608","4864","5120","5376","5632","5888","6400","6656","6912","7168","7424","7680","7936","4224","4480","4736","4992","5248","5504","5760","6016","6272","6528","6784","7040","7296","7552","7808","8064","16","32","48","64","80","96","112","144","160","176","192","208","224","240","8","24","40","56","72","88","104","120","136","152","168","184","200","216","232","248","272","288","304","320","336","352","368","400","416","432","448","464","480","496","264","280","296","312","328","344","360","376","392","408","424","440","456","472","488","504","2","3","4","5","6","7","9","10","11","12","13","14","15","2147483650","2147483651","2147483652","2147483653","2147483654","2147483655","2147483656","2147483657","2147483658","2147483659","2147483660","2147483661","2147483662","2147483663","17","18","19","20","21","22","23","25","26","27","28","29","30","31","2147483664","2147483665","2147483666","2147483667","2147483668","2147483669","2147483670","2147483671","2147483672","2147483673","2147483674","2147483675","2147483676","2147483677","2147483678","2147483679","SBOX_MASK","DES","keyBits","keyBitPos","subKeys","_subKeys","nSubKey","subKey","bitShift","invSubKeys","_invSubKeys","_lBlock","_rBlock","exchangeLR","exchangeRL","lBlock","rBlock","mask","TripleDES","key1","key2","key3","_des1","_des2","_des3","rc4","RC4","keySigBytes","S","_S","keyByteIndex","keyByte","_i","_j","generateKeystreamWord","keystreamWord","RC4Drop","drop","rabbit","C_","G","Rabbit","X","_X","_C","_b","nextState","IV","IV_0","IV_1","i0","i2","i1","i3","gx","ga","gb","rabbitLegacy","RabbitLegacy","exports$2","reDigits","io","string","fgh","ssplit","seperator","components","split","shift","activeElement","isDigits","value","test","template","str","replace","outer","inner","getJSON","onSuccess","onError","request","XMLHttpRequest","open","onreadystatechange","readyState","status","JSON","responseText","send","escapeHtml","pattern","entities","&","<",">","\"","'","/","exports$1","html","forEach","element","innerHTML","append","first","eventName","attachEvent","focus","ElementArray","Array","k","Dollar","selector","match","matches","querySelectorAll","l","host","socket","parameters","payload","hostInfo","connect","toHost","forceNew","force new connection","roomName","decrypted","msg","sanitized","sanitized_payload","reconnect","foo","disconnect","param","p","assign","setKey","clear","setTorch","setNick","nick_maxLen","nick_minLen","cons","sounds","chat","inputWrapper","commands","type","text","tpl","uniqueId","getTime","timestamp","toLocaleTimeString","id","showNotification","parent","child","removeChild","torch","substring","clearInput","lockInput","setAttribute","className","unlockInput","removeAttribute","onKeyDown","parts","command","ctrlKey","altKey","keyCode","retvals","recipients","commandName","leave","count","wind","location"],"mappings":"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"} \ No newline at end of file diff --git a/client/source/console.js b/client/source/console.js index 0e3ef0c..b987ee4 100644 --- a/client/source/console.js +++ b/client/source/console.js @@ -128,20 +128,6 @@ export default function(mediator,settings,templates, sounds) { components.input[0].removeAttribute('disabled'); components.inputWrapper[0].className = ''; components.input.focus(); - }, - - _require: function (filepath, done) { - commands.lockInput(); - commands.post('info', 'Requiring ' + filepath + '...'); - require([filepath], function () { - commands.post('info', 'Successfully required ' + filepath + '.'); - commands.unlockInput(); - done(); - }, function (e) { - commands.post('error', 'An error occurred while trying to load "' + filepath + '":\n' + e); - commands.unlockInput(); - done(); - }); } }, @@ -217,13 +203,11 @@ export default function(mediator,settings,templates, sounds) { // Connect events for (var commandName in commands) { - if (commandName !== '_require' && commandName !== 'post') { + if (commandName !== 'post') { mediator.on('console:' + commandName, commands[commandName]); } } - mediator.on('console:require', commands._require); - mediator.on('console:post', function (data) { commands.post(data.type, data.data, data.nick); }); diff --git a/package-lock.json b/package-lock.json index c862e3e..a75a94a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,3745 +1,3548 @@ -{ - "name": "cryptalk", - "version": "1.2.3", - "lockfileVersion": 2, - "requires": true, - "packages": { - "": { - "name": "cryptalk", - "version": "1.2.3", - "license": "MIT", - "os": [ - "darwin", - "linux", - "win32" - ], - "dependencies": { - "serve": "^12.0.1", - "socket.io": "^4.3.1" - }, - "bin": { - "cryptalk": "server/server.js" - }, - "devDependencies": { - "@rollup/plugin-commonjs": "^21.0.1", - "@rollup/plugin-node-resolve": "^13.0.6", - "crypto-js": "^4.1.1", - "eslint": "^8.1.0", - "rollup": "^2.59.0", - "uglify-js": "^3.14.3" - } - }, - "node_modules/@eslint/eslintrc": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.0.3.tgz", - "integrity": "sha512-DHI1wDPoKCBPoLZA3qDR91+3te/wDSc1YhKg3jR8NxKKRJq2hwHwcWv31cSwSYvIBrmbENoYMWcenW8uproQqg==", - "dev": true, - "dependencies": { - "ajv": "^6.12.4", - "debug": "^4.3.2", - "espree": "^9.0.0", - "globals": "^13.9.0", - "ignore": "^4.0.6", - "import-fresh": "^3.2.1", - "js-yaml": "^3.13.1", - "minimatch": "^3.0.4", - "strip-json-comments": "^3.1.1" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, - "node_modules/@eslint/eslintrc/node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "dependencies": { - "sprintf-js": "~1.0.2" - } - }, - "node_modules/@eslint/eslintrc/node_modules/js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/@eslint/eslintrc/node_modules/strip-json-comments": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", - "dev": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@humanwhocodes/config-array": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.6.0.tgz", - "integrity": "sha512-JQlEKbcgEUjBFhLIF4iqM7u/9lwgHRBcpHrmUNCALK0Q3amXN6lxdoXLnF0sm11E9VqTmBALR87IlUg1bZ8A9A==", - "dev": true, - "dependencies": { - "@humanwhocodes/object-schema": "^1.2.0", - "debug": "^4.1.1", - "minimatch": "^3.0.4" - }, - "engines": { - "node": ">=10.10.0" - } - }, - "node_modules/@humanwhocodes/object-schema": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", - "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", - "dev": true - }, - "node_modules/@rollup/plugin-commonjs": { - "version": "21.0.1", - "resolved": "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-21.0.1.tgz", - "integrity": "sha512-EA+g22lbNJ8p5kuZJUYyhhDK7WgJckW5g4pNN7n4mAFUM96VuwUnNT3xr2Db2iCZPI1pJPbGyfT5mS9T1dHfMg==", - "dev": true, - "dependencies": { - "@rollup/pluginutils": "^3.1.0", - "commondir": "^1.0.1", - "estree-walker": "^2.0.1", - "glob": "^7.1.6", - "is-reference": "^1.2.1", - "magic-string": "^0.25.7", - "resolve": "^1.17.0" - }, - "engines": { - "node": ">= 8.0.0" - }, - "peerDependencies": { - "rollup": "^2.38.3" - } - }, - "node_modules/@rollup/plugin-commonjs/node_modules/estree-walker": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", - "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", - "dev": true - }, - "node_modules/@rollup/plugin-node-resolve": { - "version": "13.0.6", - "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-13.0.6.tgz", - "integrity": "sha512-sFsPDMPd4gMqnh2gS0uIxELnoRUp5kBl5knxD2EO0778G1oOJv4G1vyT2cpWz75OU2jDVcXhjVUuTAczGyFNKA==", - "dev": true, - "dependencies": { - "@rollup/pluginutils": "^3.1.0", - "@types/resolve": "1.17.1", - "builtin-modules": "^3.1.0", - "deepmerge": "^4.2.2", - "is-module": "^1.0.0", - "resolve": "^1.19.0" - }, - "engines": { - "node": ">= 10.0.0" - }, - "peerDependencies": { - "rollup": "^2.42.0" - } - }, - "node_modules/@rollup/pluginutils": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.1.0.tgz", - "integrity": "sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==", - "dev": true, - "dependencies": { - "@types/estree": "0.0.39", - "estree-walker": "^1.0.1", - "picomatch": "^2.2.2" - }, - "engines": { - "node": ">= 8.0.0" - }, - "peerDependencies": { - "rollup": "^1.20.0||^2.0.0" - } - }, - "node_modules/@types/component-emitter": { - "version": "1.2.10", - "resolved": "https://registry.npmjs.org/@types/component-emitter/-/component-emitter-1.2.10.tgz", - "integrity": "sha512-bsjleuRKWmGqajMerkzox19aGbscQX5rmmvvXl3wlIp5gMG1HgkiwPxsN5p070fBDKTNSPgojVbuY1+HWMbFhg==" - }, - "node_modules/@types/cookie": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.4.1.tgz", - "integrity": "sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q==" - }, - "node_modules/@types/cors": { - "version": "2.8.12", - "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.12.tgz", - "integrity": "sha512-vt+kDhq/M2ayberEtJcIN/hxXy1Pk+59g2FV/ZQceeaTyCtCucjL2Q7FXlFjtWn4n15KCr1NE2lNNFhp0lEThw==" - }, - "node_modules/@types/estree": { - "version": "0.0.39", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.39.tgz", - "integrity": "sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==", - "dev": true - }, - "node_modules/@types/node": { - "version": "16.11.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-16.11.1.tgz", - "integrity": "sha512-PYGcJHL9mwl1Ek3PLiYgyEKtwTMmkMw4vbiyz/ps3pfdRYLVv+SN7qHVAImrjdAXxgluDEw6Ph4lyv+m9UpRmA==" - }, - "node_modules/@types/resolve": { - "version": "1.17.1", - "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.17.1.tgz", - "integrity": "sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw==", - "dev": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@zeit/schemas": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/@zeit/schemas/-/schemas-2.6.0.tgz", - "integrity": "sha512-uUrgZ8AxS+Lio0fZKAipJjAh415JyrOZowliZAzmnJSsf7piVL5w+G0+gFJ0KSu3QRhvui/7zuvpLz03YjXAhg==" - }, - "node_modules/accepts": { - "version": "1.3.7", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", - "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", - "dependencies": { - "mime-types": "~2.1.24", - "negotiator": "0.6.2" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/acorn": { - "version": "8.5.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.5.0.tgz", - "integrity": "sha512-yXbYeFy+jUuYd3/CDcg2NkIYE991XYX/bje7LmjJigUciaeO1JR4XxXgCIV1/Zc/dRuFEyw1L0pbA+qynJkW5Q==", - "dev": true, - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/acorn-jsx": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", - "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", - "dev": true, - "peerDependencies": { - "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" - } - }, - "node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/ansi-align": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-2.0.0.tgz", - "integrity": "sha1-w2rsy6VjuJzrVW82kPCx2eNUf38=", - "dependencies": { - "string-width": "^2.0.0" - } - }, - "node_modules/ansi-colors": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", - "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "engines": { - "node": ">=4" - } - }, - "node_modules/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==", - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/arch": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/arch/-/arch-2.2.0.tgz", - "integrity": "sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/arg": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/arg/-/arg-2.0.0.tgz", - "integrity": "sha512-XxNTUzKnz1ctK3ZIcI2XUPlD96wbHP2nGqkPKpvk/HNRlPveYrXIVSTk9m3LcqOgDPg3B1nMvdV/K8wZd7PG4w==" - }, - "node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true - }, - "node_modules/balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" - }, - "node_modules/base64-arraybuffer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-1.0.1.tgz", - "integrity": "sha512-vFIUq7FdLtjZMhATwDul5RZWv2jpXQ09Pd6jcVEOvIsqCWTRFD/ONHNfyOS8dA/Ippi5dsIgpyKWKZaAKZltbA==", - "engines": { - "node": ">= 0.6.0" - } - }, - "node_modules/base64id": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/base64id/-/base64id-2.0.0.tgz", - "integrity": "sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==", - "engines": { - "node": "^4.5.0 || >= 5.9" - } - }, - "node_modules/boxen": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/boxen/-/boxen-1.3.0.tgz", - "integrity": "sha512-TNPjfTr432qx7yOjQyaXm3dSR0MH9vXp7eT1BFSl/C51g+EFnOR9hTg1IreahGBmDNCehscshe45f+C1TBZbLw==", - "dependencies": { - "ansi-align": "^2.0.0", - "camelcase": "^4.0.0", - "chalk": "^2.0.1", - "cli-boxes": "^1.0.0", - "string-width": "^2.0.0", - "term-size": "^1.2.0", - "widest-line": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/builtin-modules": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.2.0.tgz", - "integrity": "sha512-lGzLKcioL90C7wMczpkY0n/oART3MbBa8R9OFGE1rJxoVI86u4WAGfEk8Wjv10eKSyTHVGkSo3bvBylCEtk7LA==", - "dev": true, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/bytes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", - "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/camelcase": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", - "engines": { - "node": ">=4" - } - }, - "node_modules/chalk": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz", - "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==", - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/cli-boxes": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-1.0.0.tgz", - "integrity": "sha1-T6kXw+WclKAEzWH47lCdplFocUM=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/clipboardy": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/clipboardy/-/clipboardy-2.3.0.tgz", - "integrity": "sha512-mKhiIL2DrQIsuXMgBgnfEHOZOryC7kY7YO//TN6c63wlEm3NG5tz+YgY5rVi29KCmq/QQjKYvM7a19+MDOTHOQ==", - "dependencies": { - "arch": "^2.1.1", - "execa": "^1.0.0", - "is-wsl": "^2.1.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/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==", - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" - }, - "node_modules/commondir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", - "dev": true - }, - "node_modules/component-emitter": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", - "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==" - }, - "node_modules/compressible": { - "version": "2.0.18", - "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", - "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", - "dependencies": { - "mime-db": ">= 1.43.0 < 2" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/compression": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.3.tgz", - "integrity": "sha512-HSjyBG5N1Nnz7tF2+O7A9XUhyjru71/fwgNb7oIsEVHR0WShfs2tIS/EySLgiTe98aOK18YDlMXpzjCXY/n9mg==", - "dependencies": { - "accepts": "~1.3.5", - "bytes": "3.0.0", - "compressible": "~2.0.14", - "debug": "2.6.9", - "on-headers": "~1.0.1", - "safe-buffer": "5.1.2", - "vary": "~1.1.2" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/compression/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/compression/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" - }, - "node_modules/content-disposition": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz", - "integrity": "sha1-DPaLud318r55YcOoUXjLhdunjLQ=", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/cookie": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.1.tgz", - "integrity": "sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/cors": { - "version": "2.8.5", - "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", - "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", - "dependencies": { - "object-assign": "^4", - "vary": "^1" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/cross-spawn": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", - "dependencies": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - }, - "engines": { - "node": ">=4.8" - } - }, - "node_modules/crypto-js": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/crypto-js/-/crypto-js-4.1.1.tgz", - "integrity": "sha512-o2JlM7ydqd3Qk9CA0L4NL6mTzU2sdx96a+oOfPu8Mkl/PK51vSyoi8/rQ8NknZtk44vq15lmhAj9CIAGwgeWKw==", - "dev": true - }, - "node_modules/debug": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", - "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/deep-extend": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", - "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/deep-is": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", - "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", - "dev": true - }, - "node_modules/deepmerge": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz", - "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", - "dev": true, - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "dependencies": { - "once": "^1.4.0" - } - }, - "node_modules/engine.io": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.0.0.tgz", - "integrity": "sha512-Ui7yl3JajEIaACg8MOUwWvuuwU7jepZqX3BKs1ho7NQRuP4LhN4XIykXhp8bEy+x/DhA0LBZZXYSCkZDqrwMMg==", - "dependencies": { - "@types/cookie": "^0.4.1", - "@types/cors": "^2.8.12", - "@types/node": ">=10.0.0", - "accepts": "~1.3.4", - "base64id": "2.0.0", - "cookie": "~0.4.1", - "cors": "~2.8.5", - "debug": "~4.3.1", - "engine.io-parser": "~5.0.0", - "ws": "~8.2.3" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/engine.io-parser": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.0.1.tgz", - "integrity": "sha512-j4p3WwJrG2k92VISM0op7wiq60vO92MlF3CRGxhKHy9ywG1/Dkc72g0dXeDQ+//hrcDn8gqQzoEkdO9FN0d9AA==", - "dependencies": { - "base64-arraybuffer": "~1.0.1" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/enquirer": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", - "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", - "dev": true, - "dependencies": { - "ansi-colors": "^4.1.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/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=", - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/eslint": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.1.0.tgz", - "integrity": "sha512-JZvNneArGSUsluHWJ8g8MMs3CfIEzwaLx9KyH4tZ2i+R2/rPWzL8c0zg3rHdwYVpN/1sB9gqnjHwz9HoeJpGHw==", - "dev": true, - "dependencies": { - "@eslint/eslintrc": "^1.0.3", - "@humanwhocodes/config-array": "^0.6.0", - "ajv": "^6.10.0", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.2", - "debug": "^4.3.2", - "doctrine": "^3.0.0", - "enquirer": "^2.3.5", - "escape-string-regexp": "^4.0.0", - "eslint-scope": "^6.0.0", - "eslint-utils": "^3.0.0", - "eslint-visitor-keys": "^3.0.0", - "espree": "^9.0.0", - "esquery": "^1.4.0", - "esutils": "^2.0.2", - "fast-deep-equal": "^3.1.3", - "file-entry-cache": "^6.0.1", - "functional-red-black-tree": "^1.0.1", - "glob-parent": "^6.0.1", - "globals": "^13.6.0", - "ignore": "^4.0.6", - "import-fresh": "^3.0.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "js-yaml": "^4.1.0", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.4.1", - "lodash.merge": "^4.6.2", - "minimatch": "^3.0.4", - "natural-compare": "^1.4.0", - "optionator": "^0.9.1", - "progress": "^2.0.0", - "regexpp": "^3.2.0", - "semver": "^7.2.1", - "strip-ansi": "^6.0.0", - "strip-json-comments": "^3.1.0", - "text-table": "^0.2.0", - "v8-compile-cache": "^2.0.3" - }, - "bin": { - "eslint": "bin/eslint.js" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/eslint-scope": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-6.0.0.tgz", - "integrity": "sha512-uRDL9MWmQCkaFus8RF5K9/L/2fn+80yoW3jkD53l4shjCh26fCtvJGasxjUqP5OT87SYTxCVA3BwTUzuELx9kA==", - "dev": true, - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^5.2.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, - "node_modules/eslint-utils": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", - "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", - "dev": true, - "dependencies": { - "eslint-visitor-keys": "^2.0.0" - }, - "engines": { - "node": "^10.0.0 || ^12.0.0 || >= 14.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/mysticatea" - }, - "peerDependencies": { - "eslint": ">=5" - } - }, - "node_modules/eslint-utils/node_modules/eslint-visitor-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", - "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/eslint-visitor-keys": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.0.0.tgz", - "integrity": "sha512-mJOZa35trBTb3IyRmo8xmKBZlxf+N7OnUl4+ZhJHs/r+0770Wh/LEACE2pqMGMe27G/4y8P2bYGk4J70IC5k1Q==", - "dev": true, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, - "node_modules/eslint/node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/eslint/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/eslint/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/eslint/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/eslint/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/eslint/node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/eslint/node_modules/escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/eslint/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/eslint/node_modules/path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/eslint/node_modules/semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/eslint/node_modules/shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "dependencies": { - "shebang-regex": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/eslint/node_modules/shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/eslint/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/eslint/node_modules/strip-json-comments": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", - "dev": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/eslint/node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/eslint/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/espree": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.0.0.tgz", - "integrity": "sha512-r5EQJcYZ2oaGbeR0jR0fFVijGOcwai07/690YRXLINuhmVeRY4UKSAsQPe/0BNuDgwP7Ophoc1PRsr2E3tkbdQ==", - "dev": true, - "dependencies": { - "acorn": "^8.5.0", - "acorn-jsx": "^5.3.1", - "eslint-visitor-keys": "^3.0.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, - "node_modules/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, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/esquery": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", - "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", - "dev": true, - "dependencies": { - "estraverse": "^5.1.0" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", - "dev": true, - "dependencies": { - "estraverse": "^5.2.0" - }, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/estree-walker": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-1.0.1.tgz", - "integrity": "sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==", - "dev": true - }, - "node_modules/esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/execa": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", - "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", - "dependencies": { - "cross-spawn": "^6.0.0", - "get-stream": "^4.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" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" - }, - "node_modules/fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" - }, - "node_modules/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 - }, - "node_modules/fast-url-parser": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/fast-url-parser/-/fast-url-parser-1.1.3.tgz", - "integrity": "sha1-9K8+qfNNiicc9YrSs3WfQx8LMY0=", - "dependencies": { - "punycode": "^1.3.2" - } - }, - "node_modules/fast-url-parser/node_modules/punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=" - }, - "node_modules/file-entry-cache": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", - "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", - "dev": true, - "dependencies": { - "flat-cache": "^3.0.4" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - } - }, - "node_modules/flat-cache": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", - "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", - "dev": true, - "dependencies": { - "flatted": "^3.1.0", - "rimraf": "^3.0.2" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - } - }, - "node_modules/flatted": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.2.tgz", - "integrity": "sha512-JaTY/wtrcSyvXJl4IMFHPKyFur1sE9AUqc0QnhOaJ0CxHtAoIV8pYDzeEfAaNEtGkOfq4gr3LBFmdXW5mOQFnA==", - "dev": true - }, - "node_modules/fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true - }, - "node_modules/fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "dev": true, - "hasInstallScript": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true - }, - "node_modules/functional-red-black-tree": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", - "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", - "dev": true - }, - "node_modules/get-stream": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", - "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", - "dependencies": { - "pump": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/glob": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", - "dev": true, - "dependencies": { - "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" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", - "dev": true, - "dependencies": { - "is-glob": "^4.0.3" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/globals": { - "version": "13.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.12.0.tgz", - "integrity": "sha512-uS8X6lSKN2JumVoXrbUz+uG4BYG+eiawqm3qFcT7ammfbUHeCBoJMlHcec/S3krSk73/AE/f0szYFmgAA3kYZg==", - "dev": true, - "dependencies": { - "type-fest": "^0.20.2" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "dependencies": { - "function-bind": "^1.1.1" - }, - "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "engines": { - "node": ">=4" - } - }, - "node_modules/ignore": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", - "dev": true, - "engines": { - "node": ">= 4" - } - }, - "node_modules/import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", - "dev": true, - "dependencies": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", - "dev": true, - "engines": { - "node": ">=0.8.19" - } - }, - "node_modules/inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "dev": true, - "dependencies": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "node_modules/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true - }, - "node_modules/ini": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" - }, - "node_modules/is-core-module": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.0.tgz", - "integrity": "sha512-vd15qHsaqrRL7dtH6QNuy0ndJmRDrS9HAM1CAiSifNUFv4x1a0CCVsj18hJ1mShxIG6T2i1sO78MkP56r0nYRw==", - "dev": true, - "dependencies": { - "has": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-docker": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", - "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", - "bin": { - "is-docker": "cli.js" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/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, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/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=", - "engines": { - "node": ">=4" - } - }, - "node_modules/is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dev": true, - "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/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 - }, - "node_modules/is-reference": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/is-reference/-/is-reference-1.2.1.tgz", - "integrity": "sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ==", - "dev": true, - "dependencies": { - "@types/estree": "*" - } - }, - "node_modules/is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-wsl": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", - "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", - "dependencies": { - "is-docker": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" - }, - "node_modules/js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", - "dev": true, - "dependencies": { - "argparse": "^2.0.1" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" - }, - "node_modules/json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", - "dev": true - }, - "node_modules/levn": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", - "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", - "dev": true, - "dependencies": { - "prelude-ls": "^1.2.1", - "type-check": "~0.4.0" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/lodash.merge": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", - "dev": true - }, - "node_modules/lru-cache": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", - "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", - "dependencies": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" - } - }, - "node_modules/magic-string": { - "version": "0.25.7", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.7.tgz", - "integrity": "sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA==", - "dev": true, - "dependencies": { - "sourcemap-codec": "^1.4.4" - } - }, - "node_modules/mime-db": { - "version": "1.50.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.50.0.tgz", - "integrity": "sha512-9tMZCDlYHqeERXEHO9f/hKfNXhre5dK2eE/krIvUjZbS2KPcqGDfNShIWS1uW9XOTKQKqK6qbeOci18rbfW77A==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mime-types": { - "version": "2.1.33", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.33.tgz", - "integrity": "sha512-plLElXp7pRDd0bNZHw+nMd52vRYjLwQjygaNg7ddJ2uJtTlmnTCjWuPKxVu6//AdaRuME84SvLW91sIkBqGT0g==", - "dependencies": { - "mime-db": "1.50.0" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" - }, - "node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - }, - "node_modules/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 - }, - "node_modules/negotiator": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", - "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/nice-try": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", - "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==" - }, - "node_modules/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=", - "dependencies": { - "path-key": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/on-headers": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", - "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dependencies": { - "wrappy": "1" - } - }, - "node_modules/optionator": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", - "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", - "dev": true, - "dependencies": { - "deep-is": "^0.1.3", - "fast-levenshtein": "^2.0.6", - "levn": "^0.4.1", - "prelude-ls": "^1.2.1", - "type-check": "^0.4.0", - "word-wrap": "^1.2.3" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/p-finally": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", - "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", - "engines": { - "node": ">=4" - } - }, - "node_modules/parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", - "dev": true, - "dependencies": { - "callsites": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/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=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/path-is-inside": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", - "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=" - }, - "node_modules/path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", - "engines": { - "node": ">=4" - } - }, - "node_modules/path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, - "node_modules/path-to-regexp": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-2.2.1.tgz", - "integrity": "sha512-gu9bD6Ta5bwGrrU8muHzVOBFFREpp2iRkVfhBJahwJ6p6Xw20SjT0MxLnwkjOibQmGSYhiUnf2FLe7k+jcFmGQ==" - }, - "node_modules/picomatch": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz", - "integrity": "sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==", - "dev": true, - "engines": { - "node": ">=8.6" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/prelude-ls": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", - "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", - "dev": true, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/progress": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", - "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", - "dev": true, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/pseudomap": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=" - }, - "node_modules/pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "dependencies": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "node_modules/punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "engines": { - "node": ">=6" - } - }, - "node_modules/range-parser": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", - "integrity": "sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4=", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/rc": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", - "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", - "dependencies": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - }, - "bin": { - "rc": "cli.js" - } - }, - "node_modules/regexpp": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", - "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", - "dev": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/mysticatea" - } - }, - "node_modules/registry-auth-token": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-3.3.2.tgz", - "integrity": "sha512-JL39c60XlzCVgNrO+qq68FoNb56w/m7JYvGR2jT5iR1xBrUA3Mfx5Twk5rqTThPmQKMWydGmq8oFtDlxfrmxnQ==", - "dependencies": { - "rc": "^1.1.6", - "safe-buffer": "^5.0.1" - } - }, - "node_modules/registry-url": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-3.1.0.tgz", - "integrity": "sha1-PU74cPc93h138M+aOBQyRE4XSUI=", - "dependencies": { - "rc": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/resolve": { - "version": "1.20.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz", - "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==", - "dev": true, - "dependencies": { - "is-core-module": "^2.2.0", - "path-parse": "^1.0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/rollup": { - "version": "2.59.0", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.59.0.tgz", - "integrity": "sha512-l7s90JQhCQ6JyZjKgo7Lq1dKh2RxatOM+Jr6a9F7WbS9WgKbocyUSeLmZl8evAse7y96Ae98L2k1cBOwWD8nHw==", - "dev": true, - "bin": { - "rollup": "dist/bin/rollup" - }, - "engines": { - "node": ">=10.0.0" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - } - }, - "node_modules/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==" - }, - "node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/serve": { - "version": "12.0.1", - "resolved": "https://registry.npmjs.org/serve/-/serve-12.0.1.tgz", - "integrity": "sha512-CQ4ikLpxg/wmNM7yivulpS6fhjRiFG6OjmP8ty3/c1SBnSk23fpKmLAV4HboTA2KrZhkUPlDfjDhnRmAjQ5Phw==", - "dependencies": { - "@zeit/schemas": "2.6.0", - "ajv": "6.12.6", - "arg": "2.0.0", - "boxen": "1.3.0", - "chalk": "2.4.1", - "clipboardy": "2.3.0", - "compression": "1.7.3", - "serve-handler": "6.1.3", - "update-check": "1.5.2" - }, - "bin": { - "serve": "bin/serve.js" - } - }, - "node_modules/serve-handler": { - "version": "6.1.3", - "resolved": "https://registry.npmjs.org/serve-handler/-/serve-handler-6.1.3.tgz", - "integrity": "sha512-FosMqFBNrLyeiIDvP1zgO6YoTzFYHxLDEIavhlmQ+knB2Z7l1t+kGLHkZIDN7UVWqQAmKI3D20A6F6jo3nDd4w==", - "dependencies": { - "bytes": "3.0.0", - "content-disposition": "0.5.2", - "fast-url-parser": "1.1.3", - "mime-types": "2.1.18", - "minimatch": "3.0.4", - "path-is-inside": "1.0.2", - "path-to-regexp": "2.2.1", - "range-parser": "1.2.0" - } - }, - "node_modules/serve-handler/node_modules/mime-db": { - "version": "1.33.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.33.0.tgz", - "integrity": "sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/serve-handler/node_modules/mime-types": { - "version": "2.1.18", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz", - "integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==", - "dependencies": { - "mime-db": "~1.33.0" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/shebang-command": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", - "dependencies": { - "shebang-regex": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/shebang-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/signal-exit": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.5.tgz", - "integrity": "sha512-KWcOiKeQj6ZyXx7zq4YxSMgHRlod4czeBQZrPb8OKcohcqAXShm7E20kEMle9WBt26hFcAf0qLOcp5zmY7kOqQ==" - }, - "node_modules/socket.io": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.3.1.tgz", - "integrity": "sha512-HC5w5Olv2XZ0XJ4gOLGzzHEuOCfj3G0SmoW3jLHYYh34EVsIr3EkW9h6kgfW+K3TFEcmYy8JcPWe//KUkBp5jA==", - "dependencies": { - "accepts": "~1.3.4", - "base64id": "~2.0.0", - "debug": "~4.3.2", - "engine.io": "~6.0.0", - "socket.io-adapter": "~2.3.2", - "socket.io-parser": "~4.0.4" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/socket.io-adapter": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.3.2.tgz", - "integrity": "sha512-PBZpxUPYjmoogY0aoaTmo1643JelsaS1CiAwNjRVdrI0X9Seuc19Y2Wife8k88avW6haG8cznvwbubAZwH4Mtg==" - }, - "node_modules/socket.io-parser": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.0.4.tgz", - "integrity": "sha512-t+b0SS+IxG7Rxzda2EVvyBZbvFPBCjJoyHuE0P//7OAsN23GItzDRdWa6ALxZI/8R5ygK7jAR6t028/z+7295g==", - "dependencies": { - "@types/component-emitter": "^1.2.10", - "component-emitter": "~1.3.0", - "debug": "~4.3.1" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/sourcemap-codec": { - "version": "1.4.8", - "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", - "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", - "dev": true - }, - "node_modules/sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", - "dev": true - }, - "node_modules/string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dependencies": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dependencies": { - "ansi-regex": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/strip-eof": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", - "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/term-size": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/term-size/-/term-size-1.2.0.tgz", - "integrity": "sha1-RYuDiH8oj8Vtb/+/rSYuJmOO+mk=", - "dependencies": { - "execa": "^0.7.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/term-size/node_modules/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=", - "dependencies": { - "lru-cache": "^4.0.1", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - }, - "node_modules/term-size/node_modules/execa": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", - "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", - "dependencies": { - "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" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/term-size/node_modules/get-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", - "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", - "engines": { - "node": ">=4" - } - }, - "node_modules/text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", - "dev": true - }, - "node_modules/type-check": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", - "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", - "dev": true, - "dependencies": { - "prelude-ls": "^1.2.1" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/uglify-js": { - "version": "3.14.3", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.14.3.tgz", - "integrity": "sha512-mic3aOdiq01DuSVx0TseaEzMIVqebMZ0Z3vaeDhFEh9bsc24hV1TFvN74reA2vs08D0ZWfNjAcJ3UbVLaBss+g==", - "dev": true, - "bin": { - "uglifyjs": "bin/uglifyjs" - }, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/update-check": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/update-check/-/update-check-1.5.2.tgz", - "integrity": "sha512-1TrmYLuLj/5ZovwUS7fFd1jMH3NnFDN1y1A8dboedIDt7zs/zJMo6TwwlhYKkSeEwzleeiSBV5/3c9ufAQWDaQ==", - "dependencies": { - "registry-auth-token": "3.3.2", - "registry-url": "3.1.0" - } - }, - "node_modules/uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dependencies": { - "punycode": "^2.1.0" - } - }, - "node_modules/v8-compile-cache": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz", - "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==", - "dev": true - }, - "node_modules/vary": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "which": "bin/which" - } - }, - "node_modules/widest-line": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-2.0.1.tgz", - "integrity": "sha512-Ba5m9/Fa4Xt9eb2ELXt77JxVDV8w7qQrH0zS/TWSJdLyAwQjWoOzpzj5lwVftDz6n/EOu3tNACS84v509qwnJA==", - "dependencies": { - "string-width": "^2.1.1" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/word-wrap": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", - "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" - }, - "node_modules/ws": { - "version": "8.2.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.2.3.tgz", - "integrity": "sha512-wBuoj1BDpC6ZQ1B7DWQBYVLphPWkm8i9Y0/3YdHjHKHiohOJ1ws+3OccDWtH+PoC9DZD5WOTrJvNbWvjS6JWaA==", - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, - "node_modules/yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=" - } - }, - "dependencies": { - "@eslint/eslintrc": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.0.3.tgz", - "integrity": "sha512-DHI1wDPoKCBPoLZA3qDR91+3te/wDSc1YhKg3jR8NxKKRJq2hwHwcWv31cSwSYvIBrmbENoYMWcenW8uproQqg==", - "dev": true, - "requires": { - "ajv": "^6.12.4", - "debug": "^4.3.2", - "espree": "^9.0.0", - "globals": "^13.9.0", - "ignore": "^4.0.6", - "import-fresh": "^3.2.1", - "js-yaml": "^3.13.1", - "minimatch": "^3.0.4", - "strip-json-comments": "^3.1.1" - }, - "dependencies": { - "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" - } - }, - "js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, - "strip-json-comments": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", - "dev": true - } - } - }, - "@humanwhocodes/config-array": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.6.0.tgz", - "integrity": "sha512-JQlEKbcgEUjBFhLIF4iqM7u/9lwgHRBcpHrmUNCALK0Q3amXN6lxdoXLnF0sm11E9VqTmBALR87IlUg1bZ8A9A==", - "dev": true, - "requires": { - "@humanwhocodes/object-schema": "^1.2.0", - "debug": "^4.1.1", - "minimatch": "^3.0.4" - } - }, - "@humanwhocodes/object-schema": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", - "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", - "dev": true - }, - "@rollup/plugin-commonjs": { - "version": "21.0.1", - "resolved": "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-21.0.1.tgz", - "integrity": "sha512-EA+g22lbNJ8p5kuZJUYyhhDK7WgJckW5g4pNN7n4mAFUM96VuwUnNT3xr2Db2iCZPI1pJPbGyfT5mS9T1dHfMg==", - "dev": true, - "requires": { - "@rollup/pluginutils": "^3.1.0", - "commondir": "^1.0.1", - "estree-walker": "^2.0.1", - "glob": "^7.1.6", - "is-reference": "^1.2.1", - "magic-string": "^0.25.7", - "resolve": "^1.17.0" - }, - "dependencies": { - "estree-walker": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", - "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", - "dev": true - } - } - }, - "@rollup/plugin-node-resolve": { - "version": "13.0.6", - "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-13.0.6.tgz", - "integrity": "sha512-sFsPDMPd4gMqnh2gS0uIxELnoRUp5kBl5knxD2EO0778G1oOJv4G1vyT2cpWz75OU2jDVcXhjVUuTAczGyFNKA==", - "dev": true, - "requires": { - "@rollup/pluginutils": "^3.1.0", - "@types/resolve": "1.17.1", - "builtin-modules": "^3.1.0", - "deepmerge": "^4.2.2", - "is-module": "^1.0.0", - "resolve": "^1.19.0" - } - }, - "@rollup/pluginutils": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.1.0.tgz", - "integrity": "sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==", - "dev": true, - "requires": { - "@types/estree": "0.0.39", - "estree-walker": "^1.0.1", - "picomatch": "^2.2.2" - } - }, - "@types/component-emitter": { - "version": "1.2.10", - "resolved": "https://registry.npmjs.org/@types/component-emitter/-/component-emitter-1.2.10.tgz", - "integrity": "sha512-bsjleuRKWmGqajMerkzox19aGbscQX5rmmvvXl3wlIp5gMG1HgkiwPxsN5p070fBDKTNSPgojVbuY1+HWMbFhg==" - }, - "@types/cookie": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.4.1.tgz", - "integrity": "sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q==" - }, - "@types/cors": { - "version": "2.8.12", - "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.12.tgz", - "integrity": "sha512-vt+kDhq/M2ayberEtJcIN/hxXy1Pk+59g2FV/ZQceeaTyCtCucjL2Q7FXlFjtWn4n15KCr1NE2lNNFhp0lEThw==" - }, - "@types/estree": { - "version": "0.0.39", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.39.tgz", - "integrity": "sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==", - "dev": true - }, - "@types/node": { - "version": "16.11.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-16.11.1.tgz", - "integrity": "sha512-PYGcJHL9mwl1Ek3PLiYgyEKtwTMmkMw4vbiyz/ps3pfdRYLVv+SN7qHVAImrjdAXxgluDEw6Ph4lyv+m9UpRmA==" - }, - "@types/resolve": { - "version": "1.17.1", - "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.17.1.tgz", - "integrity": "sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw==", - "dev": true, - "requires": { - "@types/node": "*" - } - }, - "@zeit/schemas": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/@zeit/schemas/-/schemas-2.6.0.tgz", - "integrity": "sha512-uUrgZ8AxS+Lio0fZKAipJjAh415JyrOZowliZAzmnJSsf7piVL5w+G0+gFJ0KSu3QRhvui/7zuvpLz03YjXAhg==" - }, - "accepts": { - "version": "1.3.7", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", - "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", - "requires": { - "mime-types": "~2.1.24", - "negotiator": "0.6.2" - } - }, - "acorn": { - "version": "8.5.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.5.0.tgz", - "integrity": "sha512-yXbYeFy+jUuYd3/CDcg2NkIYE991XYX/bje7LmjJigUciaeO1JR4XxXgCIV1/Zc/dRuFEyw1L0pbA+qynJkW5Q==", - "dev": true - }, - "acorn-jsx": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", - "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", - "dev": true, - "requires": {} - }, - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ansi-align": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-2.0.0.tgz", - "integrity": "sha1-w2rsy6VjuJzrVW82kPCx2eNUf38=", - "requires": { - "string-width": "^2.0.0" - } - }, - "ansi-colors": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", - "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", - "dev": true - }, - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=" - }, - "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==", - "requires": { - "color-convert": "^1.9.0" - } - }, - "arch": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/arch/-/arch-2.2.0.tgz", - "integrity": "sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ==" - }, - "arg": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/arg/-/arg-2.0.0.tgz", - "integrity": "sha512-XxNTUzKnz1ctK3ZIcI2XUPlD96wbHP2nGqkPKpvk/HNRlPveYrXIVSTk9m3LcqOgDPg3B1nMvdV/K8wZd7PG4w==" - }, - "argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true - }, - "balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" - }, - "base64-arraybuffer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-1.0.1.tgz", - "integrity": "sha512-vFIUq7FdLtjZMhATwDul5RZWv2jpXQ09Pd6jcVEOvIsqCWTRFD/ONHNfyOS8dA/Ippi5dsIgpyKWKZaAKZltbA==" - }, - "base64id": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/base64id/-/base64id-2.0.0.tgz", - "integrity": "sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==" - }, - "boxen": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/boxen/-/boxen-1.3.0.tgz", - "integrity": "sha512-TNPjfTr432qx7yOjQyaXm3dSR0MH9vXp7eT1BFSl/C51g+EFnOR9hTg1IreahGBmDNCehscshe45f+C1TBZbLw==", - "requires": { - "ansi-align": "^2.0.0", - "camelcase": "^4.0.0", - "chalk": "^2.0.1", - "cli-boxes": "^1.0.0", - "string-width": "^2.0.0", - "term-size": "^1.2.0", - "widest-line": "^2.0.0" - } - }, - "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" - } - }, - "builtin-modules": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.2.0.tgz", - "integrity": "sha512-lGzLKcioL90C7wMczpkY0n/oART3MbBa8R9OFGE1rJxoVI86u4WAGfEk8Wjv10eKSyTHVGkSo3bvBylCEtk7LA==", - "dev": true - }, - "bytes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", - "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=" - }, - "callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true - }, - "camelcase": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=" - }, - "chalk": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz", - "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "cli-boxes": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-1.0.0.tgz", - "integrity": "sha1-T6kXw+WclKAEzWH47lCdplFocUM=" - }, - "clipboardy": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/clipboardy/-/clipboardy-2.3.0.tgz", - "integrity": "sha512-mKhiIL2DrQIsuXMgBgnfEHOZOryC7kY7YO//TN6c63wlEm3NG5tz+YgY5rVi29KCmq/QQjKYvM7a19+MDOTHOQ==", - "requires": { - "arch": "^2.1.1", - "execa": "^1.0.0", - "is-wsl": "^2.1.1" - } - }, - "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==", - "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=" - }, - "commondir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", - "dev": true - }, - "component-emitter": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", - "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==" - }, - "compressible": { - "version": "2.0.18", - "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", - "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", - "requires": { - "mime-db": ">= 1.43.0 < 2" - } - }, - "compression": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.3.tgz", - "integrity": "sha512-HSjyBG5N1Nnz7tF2+O7A9XUhyjru71/fwgNb7oIsEVHR0WShfs2tIS/EySLgiTe98aOK18YDlMXpzjCXY/n9mg==", - "requires": { - "accepts": "~1.3.5", - "bytes": "3.0.0", - "compressible": "~2.0.14", - "debug": "2.6.9", - "on-headers": "~1.0.1", - "safe-buffer": "5.1.2", - "vary": "~1.1.2" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - } - } - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" - }, - "content-disposition": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz", - "integrity": "sha1-DPaLud318r55YcOoUXjLhdunjLQ=" - }, - "cookie": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.1.tgz", - "integrity": "sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA==" - }, - "cors": { - "version": "2.8.5", - "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", - "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", - "requires": { - "object-assign": "^4", - "vary": "^1" - } - }, - "cross-spawn": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", - "requires": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - }, - "crypto-js": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/crypto-js/-/crypto-js-4.1.1.tgz", - "integrity": "sha512-o2JlM7ydqd3Qk9CA0L4NL6mTzU2sdx96a+oOfPu8Mkl/PK51vSyoi8/rQ8NknZtk44vq15lmhAj9CIAGwgeWKw==", - "dev": true - }, - "debug": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", - "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", - "requires": { - "ms": "2.1.2" - } - }, - "deep-extend": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", - "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==" - }, - "deep-is": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", - "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", - "dev": true - }, - "deepmerge": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz", - "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==", - "dev": true - }, - "doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", - "dev": true, - "requires": { - "esutils": "^2.0.2" - } - }, - "end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "requires": { - "once": "^1.4.0" - } - }, - "engine.io": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.0.0.tgz", - "integrity": "sha512-Ui7yl3JajEIaACg8MOUwWvuuwU7jepZqX3BKs1ho7NQRuP4LhN4XIykXhp8bEy+x/DhA0LBZZXYSCkZDqrwMMg==", - "requires": { - "@types/cookie": "^0.4.1", - "@types/cors": "^2.8.12", - "@types/node": ">=10.0.0", - "accepts": "~1.3.4", - "base64id": "2.0.0", - "cookie": "~0.4.1", - "cors": "~2.8.5", - "debug": "~4.3.1", - "engine.io-parser": "~5.0.0", - "ws": "~8.2.3" - } - }, - "engine.io-parser": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.0.1.tgz", - "integrity": "sha512-j4p3WwJrG2k92VISM0op7wiq60vO92MlF3CRGxhKHy9ywG1/Dkc72g0dXeDQ+//hrcDn8gqQzoEkdO9FN0d9AA==", - "requires": { - "base64-arraybuffer": "~1.0.1" - } - }, - "enquirer": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", - "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", - "dev": true, - "requires": { - "ansi-colors": "^4.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=" - }, - "eslint": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.1.0.tgz", - "integrity": "sha512-JZvNneArGSUsluHWJ8g8MMs3CfIEzwaLx9KyH4tZ2i+R2/rPWzL8c0zg3rHdwYVpN/1sB9gqnjHwz9HoeJpGHw==", - "dev": true, - "requires": { - "@eslint/eslintrc": "^1.0.3", - "@humanwhocodes/config-array": "^0.6.0", - "ajv": "^6.10.0", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.2", - "debug": "^4.3.2", - "doctrine": "^3.0.0", - "enquirer": "^2.3.5", - "escape-string-regexp": "^4.0.0", - "eslint-scope": "^6.0.0", - "eslint-utils": "^3.0.0", - "eslint-visitor-keys": "^3.0.0", - "espree": "^9.0.0", - "esquery": "^1.4.0", - "esutils": "^2.0.2", - "fast-deep-equal": "^3.1.3", - "file-entry-cache": "^6.0.1", - "functional-red-black-tree": "^1.0.1", - "glob-parent": "^6.0.1", - "globals": "^13.6.0", - "ignore": "^4.0.6", - "import-fresh": "^3.0.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "js-yaml": "^4.1.0", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.4.1", - "lodash.merge": "^4.6.2", - "minimatch": "^3.0.4", - "natural-compare": "^1.4.0", - "optionator": "^0.9.1", - "progress": "^2.0.0", - "regexpp": "^3.2.0", - "semver": "^7.2.1", - "strip-ansi": "^6.0.0", - "strip-json-comments": "^3.1.0", - "text-table": "^0.2.0", - "v8-compile-cache": "^2.0.3" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "requires": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - } - }, - "escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true - }, - "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "requires": { - "shebang-regex": "^3.0.0" - } - }, - "shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - }, - "strip-json-comments": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - } - } - }, - "eslint-scope": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-6.0.0.tgz", - "integrity": "sha512-uRDL9MWmQCkaFus8RF5K9/L/2fn+80yoW3jkD53l4shjCh26fCtvJGasxjUqP5OT87SYTxCVA3BwTUzuELx9kA==", - "dev": true, - "requires": { - "esrecurse": "^4.3.0", - "estraverse": "^5.2.0" - } - }, - "eslint-utils": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", - "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", - "dev": true, - "requires": { - "eslint-visitor-keys": "^2.0.0" - }, - "dependencies": { - "eslint-visitor-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", - "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", - "dev": true - } - } - }, - "eslint-visitor-keys": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.0.0.tgz", - "integrity": "sha512-mJOZa35trBTb3IyRmo8xmKBZlxf+N7OnUl4+ZhJHs/r+0770Wh/LEACE2pqMGMe27G/4y8P2bYGk4J70IC5k1Q==", - "dev": true - }, - "espree": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.0.0.tgz", - "integrity": "sha512-r5EQJcYZ2oaGbeR0jR0fFVijGOcwai07/690YRXLINuhmVeRY4UKSAsQPe/0BNuDgwP7Ophoc1PRsr2E3tkbdQ==", - "dev": true, - "requires": { - "acorn": "^8.5.0", - "acorn-jsx": "^5.3.1", - "eslint-visitor-keys": "^3.0.0" - } - }, - "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 - }, - "esquery": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", - "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", - "dev": true, - "requires": { - "estraverse": "^5.1.0" - } - }, - "esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", - "dev": true, - "requires": { - "estraverse": "^5.2.0" - } - }, - "estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true - }, - "estree-walker": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-1.0.1.tgz", - "integrity": "sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==", - "dev": true - }, - "esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true - }, - "execa": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", - "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", - "requires": { - "cross-spawn": "^6.0.0", - "get-stream": "^4.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" - } - }, - "fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" - }, - "fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" - }, - "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 - }, - "fast-url-parser": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/fast-url-parser/-/fast-url-parser-1.1.3.tgz", - "integrity": "sha1-9K8+qfNNiicc9YrSs3WfQx8LMY0=", - "requires": { - "punycode": "^1.3.2" - }, - "dependencies": { - "punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=" - } - } - }, - "file-entry-cache": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", - "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", - "dev": true, - "requires": { - "flat-cache": "^3.0.4" - } - }, - "flat-cache": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", - "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", - "dev": true, - "requires": { - "flatted": "^3.1.0", - "rimraf": "^3.0.2" - } - }, - "flatted": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.2.tgz", - "integrity": "sha512-JaTY/wtrcSyvXJl4IMFHPKyFur1sE9AUqc0QnhOaJ0CxHtAoIV8pYDzeEfAaNEtGkOfq4gr3LBFmdXW5mOQFnA==", - "dev": true - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true - }, - "fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "dev": true, - "optional": 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 - }, - "functional-red-black-tree": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", - "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", - "dev": true - }, - "get-stream": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", - "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", - "requires": { - "pump": "^3.0.0" - } - }, - "glob": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", - "dev": 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" - } - }, - "glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", - "dev": true, - "requires": { - "is-glob": "^4.0.3" - } - }, - "globals": { - "version": "13.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.12.0.tgz", - "integrity": "sha512-uS8X6lSKN2JumVoXrbUz+uG4BYG+eiawqm3qFcT7ammfbUHeCBoJMlHcec/S3krSk73/AE/f0szYFmgAA3kYZg==", - "dev": true, - "requires": { - "type-fest": "^0.20.2" - } - }, - "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-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" - }, - "ignore": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", - "dev": true - }, - "import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", - "dev": true, - "requires": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - } - }, - "imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", - "dev": true - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "dev": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true - }, - "ini": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" - }, - "is-core-module": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.0.tgz", - "integrity": "sha512-vd15qHsaqrRL7dtH6QNuy0ndJmRDrS9HAM1CAiSifNUFv4x1a0CCVsj18hJ1mShxIG6T2i1sO78MkP56r0nYRw==", - "dev": true, - "requires": { - "has": "^1.0.3" - } - }, - "is-docker": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", - "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==" - }, - "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-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=" - }, - "is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dev": true, - "requires": { - "is-extglob": "^2.1.1" - } - }, - "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-reference": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/is-reference/-/is-reference-1.2.1.tgz", - "integrity": "sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ==", - "dev": true, - "requires": { - "@types/estree": "*" - } - }, - "is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=" - }, - "is-wsl": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", - "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", - "requires": { - "is-docker": "^2.0.0" - } - }, - "isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" - }, - "js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", - "dev": true, - "requires": { - "argparse": "^2.0.1" - } - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" - }, - "json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", - "dev": true - }, - "levn": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", - "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", - "dev": true, - "requires": { - "prelude-ls": "^1.2.1", - "type-check": "~0.4.0" - } - }, - "lodash.merge": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", - "dev": true - }, - "lru-cache": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", - "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", - "requires": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" - } - }, - "magic-string": { - "version": "0.25.7", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.7.tgz", - "integrity": "sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA==", - "dev": true, - "requires": { - "sourcemap-codec": "^1.4.4" - } - }, - "mime-db": { - "version": "1.50.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.50.0.tgz", - "integrity": "sha512-9tMZCDlYHqeERXEHO9f/hKfNXhre5dK2eE/krIvUjZbS2KPcqGDfNShIWS1uW9XOTKQKqK6qbeOci18rbfW77A==" - }, - "mime-types": { - "version": "2.1.33", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.33.tgz", - "integrity": "sha512-plLElXp7pRDd0bNZHw+nMd52vRYjLwQjygaNg7ddJ2uJtTlmnTCjWuPKxVu6//AdaRuME84SvLW91sIkBqGT0g==", - "requires": { - "mime-db": "1.50.0" - } - }, - "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": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - }, - "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 - }, - "negotiator": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", - "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==" - }, - "nice-try": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", - "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==" - }, - "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=", - "requires": { - "path-key": "^2.0.0" - } - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" - }, - "on-headers": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", - "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==" - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "requires": { - "wrappy": "1" - } - }, - "optionator": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", - "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", - "dev": true, - "requires": { - "deep-is": "^0.1.3", - "fast-levenshtein": "^2.0.6", - "levn": "^0.4.1", - "prelude-ls": "^1.2.1", - "type-check": "^0.4.0", - "word-wrap": "^1.2.3" - } - }, - "p-finally": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", - "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=" - }, - "parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", - "dev": true, - "requires": { - "callsites": "^3.0.0" - } - }, - "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=", - "dev": true - }, - "path-is-inside": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", - "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=" - }, - "path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=" - }, - "path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, - "path-to-regexp": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-2.2.1.tgz", - "integrity": "sha512-gu9bD6Ta5bwGrrU8muHzVOBFFREpp2iRkVfhBJahwJ6p6Xw20SjT0MxLnwkjOibQmGSYhiUnf2FLe7k+jcFmGQ==" - }, - "picomatch": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz", - "integrity": "sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==", - "dev": true - }, - "prelude-ls": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", - "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", - "dev": true - }, - "progress": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", - "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", - "dev": true - }, - "pseudomap": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=" - }, - "pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" - }, - "range-parser": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", - "integrity": "sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4=" - }, - "rc": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", - "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", - "requires": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - } - }, - "regexpp": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", - "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", - "dev": true - }, - "registry-auth-token": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-3.3.2.tgz", - "integrity": "sha512-JL39c60XlzCVgNrO+qq68FoNb56w/m7JYvGR2jT5iR1xBrUA3Mfx5Twk5rqTThPmQKMWydGmq8oFtDlxfrmxnQ==", - "requires": { - "rc": "^1.1.6", - "safe-buffer": "^5.0.1" - } - }, - "registry-url": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-3.1.0.tgz", - "integrity": "sha1-PU74cPc93h138M+aOBQyRE4XSUI=", - "requires": { - "rc": "^1.0.1" - } - }, - "resolve": { - "version": "1.20.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz", - "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==", - "dev": true, - "requires": { - "is-core-module": "^2.2.0", - "path-parse": "^1.0.6" - } - }, - "resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true - }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - }, - "rollup": { - "version": "2.59.0", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.59.0.tgz", - "integrity": "sha512-l7s90JQhCQ6JyZjKgo7Lq1dKh2RxatOM+Jr6a9F7WbS9WgKbocyUSeLmZl8evAse7y96Ae98L2k1cBOwWD8nHw==", - "dev": true, - "requires": { - "fsevents": "~2.3.2" - } - }, - "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==" - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" - }, - "serve": { - "version": "12.0.1", - "resolved": "https://registry.npmjs.org/serve/-/serve-12.0.1.tgz", - "integrity": "sha512-CQ4ikLpxg/wmNM7yivulpS6fhjRiFG6OjmP8ty3/c1SBnSk23fpKmLAV4HboTA2KrZhkUPlDfjDhnRmAjQ5Phw==", - "requires": { - "@zeit/schemas": "2.6.0", - "ajv": "6.12.6", - "arg": "2.0.0", - "boxen": "1.3.0", - "chalk": "2.4.1", - "clipboardy": "2.3.0", - "compression": "1.7.3", - "serve-handler": "6.1.3", - "update-check": "1.5.2" - } - }, - "serve-handler": { - "version": "6.1.3", - "resolved": "https://registry.npmjs.org/serve-handler/-/serve-handler-6.1.3.tgz", - "integrity": "sha512-FosMqFBNrLyeiIDvP1zgO6YoTzFYHxLDEIavhlmQ+knB2Z7l1t+kGLHkZIDN7UVWqQAmKI3D20A6F6jo3nDd4w==", - "requires": { - "bytes": "3.0.0", - "content-disposition": "0.5.2", - "fast-url-parser": "1.1.3", - "mime-types": "2.1.18", - "minimatch": "3.0.4", - "path-is-inside": "1.0.2", - "path-to-regexp": "2.2.1", - "range-parser": "1.2.0" - }, - "dependencies": { - "mime-db": { - "version": "1.33.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.33.0.tgz", - "integrity": "sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ==" - }, - "mime-types": { - "version": "2.1.18", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz", - "integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==", - "requires": { - "mime-db": "~1.33.0" - } - } - } - }, - "shebang-command": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", - "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=" - }, - "signal-exit": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.5.tgz", - "integrity": "sha512-KWcOiKeQj6ZyXx7zq4YxSMgHRlod4czeBQZrPb8OKcohcqAXShm7E20kEMle9WBt26hFcAf0qLOcp5zmY7kOqQ==" - }, - "socket.io": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.3.1.tgz", - "integrity": "sha512-HC5w5Olv2XZ0XJ4gOLGzzHEuOCfj3G0SmoW3jLHYYh34EVsIr3EkW9h6kgfW+K3TFEcmYy8JcPWe//KUkBp5jA==", - "requires": { - "accepts": "~1.3.4", - "base64id": "~2.0.0", - "debug": "~4.3.2", - "engine.io": "~6.0.0", - "socket.io-adapter": "~2.3.2", - "socket.io-parser": "~4.0.4" - } - }, - "socket.io-adapter": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.3.2.tgz", - "integrity": "sha512-PBZpxUPYjmoogY0aoaTmo1643JelsaS1CiAwNjRVdrI0X9Seuc19Y2Wife8k88avW6haG8cznvwbubAZwH4Mtg==" - }, - "socket.io-parser": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.0.4.tgz", - "integrity": "sha512-t+b0SS+IxG7Rxzda2EVvyBZbvFPBCjJoyHuE0P//7OAsN23GItzDRdWa6ALxZI/8R5ygK7jAR6t028/z+7295g==", - "requires": { - "@types/component-emitter": "^1.2.10", - "component-emitter": "~1.3.0", - "debug": "~4.3.1" - } - }, - "sourcemap-codec": { - "version": "1.4.8", - "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", - "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", - "dev": true - }, - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", - "dev": true - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "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=", - "requires": { - "ansi-regex": "^3.0.0" - } - }, - "strip-eof": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", - "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=" - }, - "strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=" - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "requires": { - "has-flag": "^3.0.0" - } - }, - "term-size": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/term-size/-/term-size-1.2.0.tgz", - "integrity": "sha1-RYuDiH8oj8Vtb/+/rSYuJmOO+mk=", - "requires": { - "execa": "^0.7.0" - }, - "dependencies": { - "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=", - "requires": { - "lru-cache": "^4.0.1", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - }, - "execa": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", - "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", - "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" - } - }, - "get-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", - "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=" - } - } - }, - "text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", - "dev": true - }, - "type-check": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", - "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", - "dev": true, - "requires": { - "prelude-ls": "^1.2.1" - } - }, - "type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true - }, - "uglify-js": { - "version": "3.14.3", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.14.3.tgz", - "integrity": "sha512-mic3aOdiq01DuSVx0TseaEzMIVqebMZ0Z3vaeDhFEh9bsc24hV1TFvN74reA2vs08D0ZWfNjAcJ3UbVLaBss+g==", - "dev": true - }, - "update-check": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/update-check/-/update-check-1.5.2.tgz", - "integrity": "sha512-1TrmYLuLj/5ZovwUS7fFd1jMH3NnFDN1y1A8dboedIDt7zs/zJMo6TwwlhYKkSeEwzleeiSBV5/3c9ufAQWDaQ==", - "requires": { - "registry-auth-token": "3.3.2", - "registry-url": "3.1.0" - } - }, - "uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "requires": { - "punycode": "^2.1.0" - } - }, - "v8-compile-cache": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz", - "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==", - "dev": true - }, - "vary": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=" - }, - "which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "requires": { - "isexe": "^2.0.0" - } - }, - "widest-line": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-2.0.1.tgz", - "integrity": "sha512-Ba5m9/Fa4Xt9eb2ELXt77JxVDV8w7qQrH0zS/TWSJdLyAwQjWoOzpzj5lwVftDz6n/EOu3tNACS84v509qwnJA==", - "requires": { - "string-width": "^2.1.1" - } - }, - "word-wrap": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", - "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", - "dev": true - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" - }, - "ws": { - "version": "8.2.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.2.3.tgz", - "integrity": "sha512-wBuoj1BDpC6ZQ1B7DWQBYVLphPWkm8i9Y0/3YdHjHKHiohOJ1ws+3OccDWtH+PoC9DZD5WOTrJvNbWvjS6JWaA==", - "requires": {} - }, - "yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=" - } - } -} +{ + "name": "cryptalk", + "version": "1.2.4", + "lockfileVersion": 2, + "requires": true, + "packages": { + "": { + "name": "cryptalk", + "version": "1.2.4", + "license": "MIT", + "os": [ + "darwin", + "linux", + "win32" + ], + "dependencies": { + "serve": "^13.0.2", + "socket.io": "^4.3.1" + }, + "bin": { + "cryptalk": "server/server.js" + }, + "devDependencies": { + "@rollup/plugin-commonjs": "^21.0.1", + "@rollup/plugin-node-resolve": "^13.0.6", + "crypto-js": "^4.1.1", + "eslint": "^8.1.0", + "rollup": "^2.59.0", + "uglify-js": "^3.14.3" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.0.4.tgz", + "integrity": "sha512-h8Vx6MdxwWI2WM8/zREHMoqdgLNXEL4QX3MWSVMdyNJGvXVOs+6lp+m2hc3FnuMHDc4poxFNI20vCk0OmI4G0Q==", + "dev": true, + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.0.0", + "globals": "^13.9.0", + "ignore": "^4.0.6", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.0.4", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/@humanwhocodes/config-array": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.6.0.tgz", + "integrity": "sha512-JQlEKbcgEUjBFhLIF4iqM7u/9lwgHRBcpHrmUNCALK0Q3amXN6lxdoXLnF0sm11E9VqTmBALR87IlUg1bZ8A9A==", + "dev": true, + "dependencies": { + "@humanwhocodes/object-schema": "^1.2.0", + "debug": "^4.1.1", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=10.10.0" + } + }, + "node_modules/@humanwhocodes/object-schema": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", + "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", + "dev": true + }, + "node_modules/@rollup/plugin-commonjs": { + "version": "21.0.1", + "resolved": "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-21.0.1.tgz", + "integrity": "sha512-EA+g22lbNJ8p5kuZJUYyhhDK7WgJckW5g4pNN7n4mAFUM96VuwUnNT3xr2Db2iCZPI1pJPbGyfT5mS9T1dHfMg==", + "dev": true, + "dependencies": { + "@rollup/pluginutils": "^3.1.0", + "commondir": "^1.0.1", + "estree-walker": "^2.0.1", + "glob": "^7.1.6", + "is-reference": "^1.2.1", + "magic-string": "^0.25.7", + "resolve": "^1.17.0" + }, + "engines": { + "node": ">= 8.0.0" + }, + "peerDependencies": { + "rollup": "^2.38.3" + } + }, + "node_modules/@rollup/plugin-node-resolve": { + "version": "13.0.6", + "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-13.0.6.tgz", + "integrity": "sha512-sFsPDMPd4gMqnh2gS0uIxELnoRUp5kBl5knxD2EO0778G1oOJv4G1vyT2cpWz75OU2jDVcXhjVUuTAczGyFNKA==", + "dev": true, + "dependencies": { + "@rollup/pluginutils": "^3.1.0", + "@types/resolve": "1.17.1", + "builtin-modules": "^3.1.0", + "deepmerge": "^4.2.2", + "is-module": "^1.0.0", + "resolve": "^1.19.0" + }, + "engines": { + "node": ">= 10.0.0" + }, + "peerDependencies": { + "rollup": "^2.42.0" + } + }, + "node_modules/@rollup/pluginutils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.1.0.tgz", + "integrity": "sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==", + "dev": true, + "dependencies": { + "@types/estree": "0.0.39", + "estree-walker": "^1.0.1", + "picomatch": "^2.2.2" + }, + "engines": { + "node": ">= 8.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0" + } + }, + "node_modules/@rollup/pluginutils/node_modules/estree-walker": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-1.0.1.tgz", + "integrity": "sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==", + "dev": true + }, + "node_modules/@types/component-emitter": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/@types/component-emitter/-/component-emitter-1.2.11.tgz", + "integrity": "sha512-SRXjM+tfsSlA9VuG8hGO2nft2p8zjXCK1VcC6N4NXbBbYbSia9kzCChYQajIjzIqOOOuh5Ock6MmV2oux4jDZQ==" + }, + "node_modules/@types/cookie": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.4.1.tgz", + "integrity": "sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q==" + }, + "node_modules/@types/cors": { + "version": "2.8.12", + "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.12.tgz", + "integrity": "sha512-vt+kDhq/M2ayberEtJcIN/hxXy1Pk+59g2FV/ZQceeaTyCtCucjL2Q7FXlFjtWn4n15KCr1NE2lNNFhp0lEThw==" + }, + "node_modules/@types/estree": { + "version": "0.0.39", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.39.tgz", + "integrity": "sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==", + "dev": true + }, + "node_modules/@types/node": { + "version": "16.11.6", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.11.6.tgz", + "integrity": "sha512-ua7PgUoeQFjmWPcoo9khiPum3Pd60k4/2ZGXt18sm2Slk0W0xZTqt5Y0Ny1NyBiN1EVQ/+FaF9NcY4Qe6rwk5w==" + }, + "node_modules/@types/resolve": { + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.17.1.tgz", + "integrity": "sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@zeit/schemas": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@zeit/schemas/-/schemas-2.6.0.tgz", + "integrity": "sha512-uUrgZ8AxS+Lio0fZKAipJjAh415JyrOZowliZAzmnJSsf7piVL5w+G0+gFJ0KSu3QRhvui/7zuvpLz03YjXAhg==" + }, + "node_modules/accepts": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", + "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", + "dependencies": { + "mime-types": "~2.1.24", + "negotiator": "0.6.2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/acorn": { + "version": "8.5.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.5.0.tgz", + "integrity": "sha512-yXbYeFy+jUuYd3/CDcg2NkIYE991XYX/bje7LmjJigUciaeO1JR4XxXgCIV1/Zc/dRuFEyw1L0pbA+qynJkW5Q==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true, + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ansi-align": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.1.tgz", + "integrity": "sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==", + "dependencies": { + "string-width": "^4.1.0" + } + }, + "node_modules/ansi-colors": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", + "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/arch": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/arch/-/arch-2.2.0.tgz", + "integrity": "sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/arg": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/arg/-/arg-2.0.0.tgz", + "integrity": "sha512-XxNTUzKnz1ctK3ZIcI2XUPlD96wbHP2nGqkPKpvk/HNRlPveYrXIVSTk9m3LcqOgDPg3B1nMvdV/K8wZd7PG4w==" + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "node_modules/base64-arraybuffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-1.0.1.tgz", + "integrity": "sha512-vFIUq7FdLtjZMhATwDul5RZWv2jpXQ09Pd6jcVEOvIsqCWTRFD/ONHNfyOS8dA/Ippi5dsIgpyKWKZaAKZltbA==", + "engines": { + "node": ">= 0.6.0" + } + }, + "node_modules/base64id": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/base64id/-/base64id-2.0.0.tgz", + "integrity": "sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==", + "engines": { + "node": "^4.5.0 || >= 5.9" + } + }, + "node_modules/boxen": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/boxen/-/boxen-5.1.2.tgz", + "integrity": "sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==", + "dependencies": { + "ansi-align": "^3.0.0", + "camelcase": "^6.2.0", + "chalk": "^4.1.0", + "cli-boxes": "^2.2.1", + "string-width": "^4.2.2", + "type-fest": "^0.20.2", + "widest-line": "^3.1.0", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/builtin-modules": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.2.0.tgz", + "integrity": "sha512-lGzLKcioL90C7wMczpkY0n/oART3MbBa8R9OFGE1rJxoVI86u4WAGfEk8Wjv10eKSyTHVGkSo3bvBylCEtk7LA==", + "dev": true, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/bytes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.2.0.tgz", + "integrity": "sha512-c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/cli-boxes": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.1.tgz", + "integrity": "sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==", + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/clipboardy": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/clipboardy/-/clipboardy-2.3.0.tgz", + "integrity": "sha512-mKhiIL2DrQIsuXMgBgnfEHOZOryC7kY7YO//TN6c63wlEm3NG5tz+YgY5rVi29KCmq/QQjKYvM7a19+MDOTHOQ==", + "dependencies": { + "arch": "^2.1.1", + "execa": "^1.0.0", + "is-wsl": "^2.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", + "dev": true + }, + "node_modules/component-emitter": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", + "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==" + }, + "node_modules/compressible": { + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", + "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", + "dependencies": { + "mime-db": ">= 1.43.0 < 2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/compression": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.3.tgz", + "integrity": "sha512-HSjyBG5N1Nnz7tF2+O7A9XUhyjru71/fwgNb7oIsEVHR0WShfs2tIS/EySLgiTe98aOK18YDlMXpzjCXY/n9mg==", + "dependencies": { + "accepts": "~1.3.5", + "bytes": "3.0.0", + "compressible": "~2.0.14", + "debug": "2.6.9", + "on-headers": "~1.0.1", + "safe-buffer": "5.1.2", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/compression/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/compression/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + }, + "node_modules/content-disposition": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz", + "integrity": "sha1-DPaLud318r55YcOoUXjLhdunjLQ=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.1.tgz", + "integrity": "sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cors": { + "version": "2.8.5", + "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", + "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", + "dependencies": { + "object-assign": "^4", + "vary": "^1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/crypto-js": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/crypto-js/-/crypto-js-4.1.1.tgz", + "integrity": "sha512-o2JlM7ydqd3Qk9CA0L4NL6mTzU2sdx96a+oOfPu8Mkl/PK51vSyoi8/rQ8NknZtk44vq15lmhAj9CIAGwgeWKw==", + "dev": true + }, + "node_modules/debug": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", + "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/deep-extend": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true + }, + "node_modules/deepmerge": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz", + "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "node_modules/end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "dependencies": { + "once": "^1.4.0" + } + }, + "node_modules/engine.io": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.0.1.tgz", + "integrity": "sha512-Y53UaciUh2Rmx5MiogtMxOQcfh7pnemday+Bb4QDg0Wjmnvo/VTvuEyNGQgYmh8L7VOe8Je1QuiqjLNDelMqLA==", + "dependencies": { + "@types/cookie": "^0.4.1", + "@types/cors": "^2.8.12", + "@types/node": ">=10.0.0", + "accepts": "~1.3.4", + "base64id": "2.0.0", + "cookie": "~0.4.1", + "cors": "~2.8.5", + "debug": "~4.3.1", + "engine.io-parser": "~5.0.0", + "ws": "~8.2.3" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/engine.io-parser": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.0.1.tgz", + "integrity": "sha512-j4p3WwJrG2k92VISM0op7wiq60vO92MlF3CRGxhKHy9ywG1/Dkc72g0dXeDQ+//hrcDn8gqQzoEkdO9FN0d9AA==", + "dependencies": { + "base64-arraybuffer": "~1.0.1" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/enquirer": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", + "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", + "dev": true, + "dependencies": { + "ansi-colors": "^4.1.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.2.0.tgz", + "integrity": "sha512-erw7XmM+CLxTOickrimJ1SiF55jiNlVSp2qqm0NuBWPtHYQCegD5ZMaW0c3i5ytPqL+SSLaCxdvQXFPLJn+ABw==", + "dev": true, + "dependencies": { + "@eslint/eslintrc": "^1.0.4", + "@humanwhocodes/config-array": "^0.6.0", + "ajv": "^6.10.0", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "enquirer": "^2.3.5", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^6.0.0", + "eslint-utils": "^3.0.0", + "eslint-visitor-keys": "^3.0.0", + "espree": "^9.0.0", + "esquery": "^1.4.0", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "functional-red-black-tree": "^1.0.1", + "glob-parent": "^6.0.1", + "globals": "^13.6.0", + "ignore": "^4.0.6", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.0.4", + "natural-compare": "^1.4.0", + "optionator": "^0.9.1", + "progress": "^2.0.0", + "regexpp": "^3.2.0", + "semver": "^7.2.1", + "strip-ansi": "^6.0.1", + "strip-json-comments": "^3.1.0", + "text-table": "^0.2.0", + "v8-compile-cache": "^2.0.3" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-scope": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-6.0.0.tgz", + "integrity": "sha512-uRDL9MWmQCkaFus8RF5K9/L/2fn+80yoW3jkD53l4shjCh26fCtvJGasxjUqP5OT87SYTxCVA3BwTUzuELx9kA==", + "dev": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/eslint-utils": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", + "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", + "dev": true, + "dependencies": { + "eslint-visitor-keys": "^2.0.0" + }, + "engines": { + "node": "^10.0.0 || ^12.0.0 || >= 14.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + }, + "peerDependencies": { + "eslint": ">=5" + } + }, + "node_modules/eslint-utils/node_modules/eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.0.0.tgz", + "integrity": "sha512-mJOZa35trBTb3IyRmo8xmKBZlxf+N7OnUl4+ZhJHs/r+0770Wh/LEACE2pqMGMe27G/4y8P2bYGk4J70IC5k1Q==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/espree": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.0.0.tgz", + "integrity": "sha512-r5EQJcYZ2oaGbeR0jR0fFVijGOcwai07/690YRXLINuhmVeRY4UKSAsQPe/0BNuDgwP7Ophoc1PRsr2E3tkbdQ==", + "dev": true, + "dependencies": { + "acorn": "^8.5.0", + "acorn-jsx": "^5.3.1", + "eslint-visitor-keys": "^3.0.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/esquery": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", + "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", + "dev": true, + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", + "dev": true + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/execa": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", + "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", + "dependencies": { + "cross-spawn": "^6.0.0", + "get-stream": "^4.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" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/execa/node_modules/cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "dependencies": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + }, + "engines": { + "node": ">=4.8" + } + }, + "node_modules/execa/node_modules/path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "engines": { + "node": ">=4" + } + }, + "node_modules/execa/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/execa/node_modules/shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "dependencies": { + "shebang-regex": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/execa/node_modules/shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/execa/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" + }, + "node_modules/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 + }, + "node_modules/fast-url-parser": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/fast-url-parser/-/fast-url-parser-1.1.3.tgz", + "integrity": "sha1-9K8+qfNNiicc9YrSs3WfQx8LMY0=", + "dependencies": { + "punycode": "^1.3.2" + } + }, + "node_modules/file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "dev": true, + "dependencies": { + "flat-cache": "^3.0.4" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/flat-cache": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", + "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", + "dev": true, + "dependencies": { + "flatted": "^3.1.0", + "rimraf": "^3.0.2" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/flatted": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.2.tgz", + "integrity": "sha512-JaTY/wtrcSyvXJl4IMFHPKyFur1sE9AUqc0QnhOaJ0CxHtAoIV8pYDzeEfAaNEtGkOfq4gr3LBFmdXW5mOQFnA==", + "dev": true + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true + }, + "node_modules/fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true + }, + "node_modules/functional-red-black-tree": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", + "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", + "dev": true + }, + "node_modules/get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/glob": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", + "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", + "dev": true, + "dependencies": { + "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" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/globals": { + "version": "13.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.12.0.tgz", + "integrity": "sha512-uS8X6lSKN2JumVoXrbUz+uG4BYG+eiawqm3qFcT7ammfbUHeCBoJMlHcec/S3krSk73/AE/f0szYFmgAA3kYZg==", + "dev": true, + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/ignore": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "dev": true, + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dev": true, + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" + }, + "node_modules/is-core-module": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.0.tgz", + "integrity": "sha512-vd15qHsaqrRL7dtH6QNuy0ndJmRDrS9HAM1CAiSifNUFv4x1a0CCVsj18hJ1mShxIG6T2i1sO78MkP56r0nYRw==", + "dev": true, + "dependencies": { + "has": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/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, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/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 + }, + "node_modules/is-reference": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/is-reference/-/is-reference-1.2.1.tgz", + "integrity": "sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ==", + "dev": true, + "dependencies": { + "@types/estree": "*" + } + }, + "node_modules/is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dependencies": { + "is-docker": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" + }, + "node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", + "dev": true + }, + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true + }, + "node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/magic-string": { + "version": "0.25.7", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.7.tgz", + "integrity": "sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA==", + "dev": true, + "dependencies": { + "sourcemap-codec": "^1.4.4" + } + }, + "node_modules/mime-db": { + "version": "1.50.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.50.0.tgz", + "integrity": "sha512-9tMZCDlYHqeERXEHO9f/hKfNXhre5dK2eE/krIvUjZbS2KPcqGDfNShIWS1uW9XOTKQKqK6qbeOci18rbfW77A==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.33", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.33.tgz", + "integrity": "sha512-plLElXp7pRDd0bNZHw+nMd52vRYjLwQjygaNg7ddJ2uJtTlmnTCjWuPKxVu6//AdaRuME84SvLW91sIkBqGT0g==", + "dependencies": { + "mime-db": "1.50.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" + }, + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "node_modules/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 + }, + "node_modules/negotiator": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", + "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/nice-try": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", + "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==" + }, + "node_modules/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=", + "dependencies": { + "path-key": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/npm-run-path/node_modules/path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "engines": { + "node": ">=4" + } + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/on-headers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", + "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/optionator": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", + "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "dev": true, + "dependencies": { + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.3" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", + "engines": { + "node": ">=4" + } + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/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=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-is-inside": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", + "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=" + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true + }, + "node_modules/path-to-regexp": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-2.2.1.tgz", + "integrity": "sha512-gu9bD6Ta5bwGrrU8muHzVOBFFREpp2iRkVfhBJahwJ6p6Xw20SjT0MxLnwkjOibQmGSYhiUnf2FLe7k+jcFmGQ==" + }, + "node_modules/picomatch": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz", + "integrity": "sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==", + "dev": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/progress": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=" + }, + "node_modules/range-parser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", + "integrity": "sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/rc": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "dependencies": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "bin": { + "rc": "cli.js" + } + }, + "node_modules/rc/node_modules/strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/regexpp": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", + "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + } + }, + "node_modules/registry-auth-token": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-3.3.2.tgz", + "integrity": "sha512-JL39c60XlzCVgNrO+qq68FoNb56w/m7JYvGR2jT5iR1xBrUA3Mfx5Twk5rqTThPmQKMWydGmq8oFtDlxfrmxnQ==", + "dependencies": { + "rc": "^1.1.6", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/registry-url": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-3.1.0.tgz", + "integrity": "sha1-PU74cPc93h138M+aOBQyRE4XSUI=", + "dependencies": { + "rc": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/resolve": { + "version": "1.20.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz", + "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==", + "dev": true, + "dependencies": { + "is-core-module": "^2.2.0", + "path-parse": "^1.0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rollup": { + "version": "2.59.0", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.59.0.tgz", + "integrity": "sha512-l7s90JQhCQ6JyZjKgo7Lq1dKh2RxatOM+Jr6a9F7WbS9WgKbocyUSeLmZl8evAse7y96Ae98L2k1cBOwWD8nHw==", + "dev": true, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=10.0.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/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==" + }, + "node_modules/semver": { + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/serve": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/serve/-/serve-13.0.2.tgz", + "integrity": "sha512-71R6fKvNgKrqARAag6lYJNnxDzpH7DCNrMuvPY5PLVaC2PDhJsGTj/34o4o4tPWhTuLgEXqvgnAWbATQ9zGZTQ==", + "dependencies": { + "@zeit/schemas": "2.6.0", + "ajv": "6.12.6", + "arg": "2.0.0", + "boxen": "5.1.2", + "chalk": "2.4.1", + "clipboardy": "2.3.0", + "compression": "1.7.3", + "serve-handler": "6.1.3", + "update-check": "1.5.2" + }, + "bin": { + "serve": "bin/serve.js" + } + }, + "node_modules/serve-handler": { + "version": "6.1.3", + "resolved": "https://registry.npmjs.org/serve-handler/-/serve-handler-6.1.3.tgz", + "integrity": "sha512-FosMqFBNrLyeiIDvP1zgO6YoTzFYHxLDEIavhlmQ+knB2Z7l1t+kGLHkZIDN7UVWqQAmKI3D20A6F6jo3nDd4w==", + "dependencies": { + "bytes": "3.0.0", + "content-disposition": "0.5.2", + "fast-url-parser": "1.1.3", + "mime-types": "2.1.18", + "minimatch": "3.0.4", + "path-is-inside": "1.0.2", + "path-to-regexp": "2.2.1", + "range-parser": "1.2.0" + } + }, + "node_modules/serve-handler/node_modules/mime-db": { + "version": "1.33.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.33.0.tgz", + "integrity": "sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-handler/node_modules/mime-types": { + "version": "2.1.18", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz", + "integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==", + "dependencies": { + "mime-db": "~1.33.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve/node_modules/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==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/serve/node_modules/chalk": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz", + "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/serve/node_modules/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==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/serve/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + }, + "node_modules/serve/node_modules/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=", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/serve/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "engines": { + "node": ">=4" + } + }, + "node_modules/serve/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/signal-exit": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.5.tgz", + "integrity": "sha512-KWcOiKeQj6ZyXx7zq4YxSMgHRlod4czeBQZrPb8OKcohcqAXShm7E20kEMle9WBt26hFcAf0qLOcp5zmY7kOqQ==" + }, + "node_modules/socket.io": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.3.1.tgz", + "integrity": "sha512-HC5w5Olv2XZ0XJ4gOLGzzHEuOCfj3G0SmoW3jLHYYh34EVsIr3EkW9h6kgfW+K3TFEcmYy8JcPWe//KUkBp5jA==", + "dependencies": { + "accepts": "~1.3.4", + "base64id": "~2.0.0", + "debug": "~4.3.2", + "engine.io": "~6.0.0", + "socket.io-adapter": "~2.3.2", + "socket.io-parser": "~4.0.4" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/socket.io-adapter": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.3.2.tgz", + "integrity": "sha512-PBZpxUPYjmoogY0aoaTmo1643JelsaS1CiAwNjRVdrI0X9Seuc19Y2Wife8k88avW6haG8cznvwbubAZwH4Mtg==" + }, + "node_modules/socket.io-parser": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.0.4.tgz", + "integrity": "sha512-t+b0SS+IxG7Rxzda2EVvyBZbvFPBCjJoyHuE0P//7OAsN23GItzDRdWa6ALxZI/8R5ygK7jAR6t028/z+7295g==", + "dependencies": { + "@types/component-emitter": "^1.2.10", + "component-emitter": "~1.3.0", + "debug": "~4.3.1" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/sourcemap-codec": { + "version": "1.4.8", + "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", + "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", + "dev": true + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-eof": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", + "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", + "dev": true + }, + "node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/uglify-js": { + "version": "3.14.3", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.14.3.tgz", + "integrity": "sha512-mic3aOdiq01DuSVx0TseaEzMIVqebMZ0Z3vaeDhFEh9bsc24hV1TFvN74reA2vs08D0ZWfNjAcJ3UbVLaBss+g==", + "dev": true, + "bin": { + "uglifyjs": "bin/uglifyjs" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/update-check": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/update-check/-/update-check-1.5.2.tgz", + "integrity": "sha512-1TrmYLuLj/5ZovwUS7fFd1jMH3NnFDN1y1A8dboedIDt7zs/zJMo6TwwlhYKkSeEwzleeiSBV5/3c9ufAQWDaQ==", + "dependencies": { + "registry-auth-token": "3.3.2", + "registry-url": "3.1.0" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/uri-js/node_modules/punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "engines": { + "node": ">=6" + } + }, + "node_modules/v8-compile-cache": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz", + "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==", + "dev": true + }, + "node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/widest-line": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz", + "integrity": "sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==", + "dependencies": { + "string-width": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/word-wrap": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", + "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + }, + "node_modules/ws": { + "version": "8.2.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.2.3.tgz", + "integrity": "sha512-wBuoj1BDpC6ZQ1B7DWQBYVLphPWkm8i9Y0/3YdHjHKHiohOJ1ws+3OccDWtH+PoC9DZD5WOTrJvNbWvjS6JWaA==", + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + } + }, + "dependencies": { + "@eslint/eslintrc": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.0.4.tgz", + "integrity": "sha512-h8Vx6MdxwWI2WM8/zREHMoqdgLNXEL4QX3MWSVMdyNJGvXVOs+6lp+m2hc3FnuMHDc4poxFNI20vCk0OmI4G0Q==", + "dev": true, + "requires": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.0.0", + "globals": "^13.9.0", + "ignore": "^4.0.6", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.0.4", + "strip-json-comments": "^3.1.1" + } + }, + "@humanwhocodes/config-array": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.6.0.tgz", + "integrity": "sha512-JQlEKbcgEUjBFhLIF4iqM7u/9lwgHRBcpHrmUNCALK0Q3amXN6lxdoXLnF0sm11E9VqTmBALR87IlUg1bZ8A9A==", + "dev": true, + "requires": { + "@humanwhocodes/object-schema": "^1.2.0", + "debug": "^4.1.1", + "minimatch": "^3.0.4" + } + }, + "@humanwhocodes/object-schema": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", + "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", + "dev": true + }, + "@rollup/plugin-commonjs": { + "version": "21.0.1", + "resolved": "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-21.0.1.tgz", + "integrity": "sha512-EA+g22lbNJ8p5kuZJUYyhhDK7WgJckW5g4pNN7n4mAFUM96VuwUnNT3xr2Db2iCZPI1pJPbGyfT5mS9T1dHfMg==", + "dev": true, + "requires": { + "@rollup/pluginutils": "^3.1.0", + "commondir": "^1.0.1", + "estree-walker": "^2.0.1", + "glob": "^7.1.6", + "is-reference": "^1.2.1", + "magic-string": "^0.25.7", + "resolve": "^1.17.0" + } + }, + "@rollup/plugin-node-resolve": { + "version": "13.0.6", + "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-13.0.6.tgz", + "integrity": "sha512-sFsPDMPd4gMqnh2gS0uIxELnoRUp5kBl5knxD2EO0778G1oOJv4G1vyT2cpWz75OU2jDVcXhjVUuTAczGyFNKA==", + "dev": true, + "requires": { + "@rollup/pluginutils": "^3.1.0", + "@types/resolve": "1.17.1", + "builtin-modules": "^3.1.0", + "deepmerge": "^4.2.2", + "is-module": "^1.0.0", + "resolve": "^1.19.0" + } + }, + "@rollup/pluginutils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.1.0.tgz", + "integrity": "sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==", + "dev": true, + "requires": { + "@types/estree": "0.0.39", + "estree-walker": "^1.0.1", + "picomatch": "^2.2.2" + }, + "dependencies": { + "estree-walker": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-1.0.1.tgz", + "integrity": "sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==", + "dev": true + } + } + }, + "@types/component-emitter": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/@types/component-emitter/-/component-emitter-1.2.11.tgz", + "integrity": "sha512-SRXjM+tfsSlA9VuG8hGO2nft2p8zjXCK1VcC6N4NXbBbYbSia9kzCChYQajIjzIqOOOuh5Ock6MmV2oux4jDZQ==" + }, + "@types/cookie": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.4.1.tgz", + "integrity": "sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q==" + }, + "@types/cors": { + "version": "2.8.12", + "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.12.tgz", + "integrity": "sha512-vt+kDhq/M2ayberEtJcIN/hxXy1Pk+59g2FV/ZQceeaTyCtCucjL2Q7FXlFjtWn4n15KCr1NE2lNNFhp0lEThw==" + }, + "@types/estree": { + "version": "0.0.39", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.39.tgz", + "integrity": "sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==", + "dev": true + }, + "@types/node": { + "version": "16.11.6", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.11.6.tgz", + "integrity": "sha512-ua7PgUoeQFjmWPcoo9khiPum3Pd60k4/2ZGXt18sm2Slk0W0xZTqt5Y0Ny1NyBiN1EVQ/+FaF9NcY4Qe6rwk5w==" + }, + "@types/resolve": { + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.17.1.tgz", + "integrity": "sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, + "@zeit/schemas": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@zeit/schemas/-/schemas-2.6.0.tgz", + "integrity": "sha512-uUrgZ8AxS+Lio0fZKAipJjAh415JyrOZowliZAzmnJSsf7piVL5w+G0+gFJ0KSu3QRhvui/7zuvpLz03YjXAhg==" + }, + "accepts": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", + "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", + "requires": { + "mime-types": "~2.1.24", + "negotiator": "0.6.2" + } + }, + "acorn": { + "version": "8.5.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.5.0.tgz", + "integrity": "sha512-yXbYeFy+jUuYd3/CDcg2NkIYE991XYX/bje7LmjJigUciaeO1JR4XxXgCIV1/Zc/dRuFEyw1L0pbA+qynJkW5Q==", + "dev": true + }, + "acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true, + "requires": {} + }, + "ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "requires": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "ansi-align": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.1.tgz", + "integrity": "sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==", + "requires": { + "string-width": "^4.1.0" + } + }, + "ansi-colors": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", + "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", + "dev": true + }, + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "requires": { + "color-convert": "^2.0.1" + } + }, + "arch": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/arch/-/arch-2.2.0.tgz", + "integrity": "sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ==" + }, + "arg": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/arg/-/arg-2.0.0.tgz", + "integrity": "sha512-XxNTUzKnz1ctK3ZIcI2XUPlD96wbHP2nGqkPKpvk/HNRlPveYrXIVSTk9m3LcqOgDPg3B1nMvdV/K8wZd7PG4w==" + }, + "argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, + "balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "base64-arraybuffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-1.0.1.tgz", + "integrity": "sha512-vFIUq7FdLtjZMhATwDul5RZWv2jpXQ09Pd6jcVEOvIsqCWTRFD/ONHNfyOS8dA/Ippi5dsIgpyKWKZaAKZltbA==" + }, + "base64id": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/base64id/-/base64id-2.0.0.tgz", + "integrity": "sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==" + }, + "boxen": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/boxen/-/boxen-5.1.2.tgz", + "integrity": "sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==", + "requires": { + "ansi-align": "^3.0.0", + "camelcase": "^6.2.0", + "chalk": "^4.1.0", + "cli-boxes": "^2.2.1", + "string-width": "^4.2.2", + "type-fest": "^0.20.2", + "widest-line": "^3.1.0", + "wrap-ansi": "^7.0.0" + } + }, + "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" + } + }, + "builtin-modules": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.2.0.tgz", + "integrity": "sha512-lGzLKcioL90C7wMczpkY0n/oART3MbBa8R9OFGE1rJxoVI86u4WAGfEk8Wjv10eKSyTHVGkSo3bvBylCEtk7LA==", + "dev": true + }, + "bytes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=" + }, + "callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true + }, + "camelcase": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.2.0.tgz", + "integrity": "sha512-c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg==" + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "cli-boxes": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.1.tgz", + "integrity": "sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==" + }, + "clipboardy": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/clipboardy/-/clipboardy-2.3.0.tgz", + "integrity": "sha512-mKhiIL2DrQIsuXMgBgnfEHOZOryC7kY7YO//TN6c63wlEm3NG5tz+YgY5rVi29KCmq/QQjKYvM7a19+MDOTHOQ==", + "requires": { + "arch": "^2.1.1", + "execa": "^1.0.0", + "is-wsl": "^2.1.1" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", + "dev": true + }, + "component-emitter": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", + "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==" + }, + "compressible": { + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", + "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", + "requires": { + "mime-db": ">= 1.43.0 < 2" + } + }, + "compression": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.3.tgz", + "integrity": "sha512-HSjyBG5N1Nnz7tF2+O7A9XUhyjru71/fwgNb7oIsEVHR0WShfs2tIS/EySLgiTe98aOK18YDlMXpzjCXY/n9mg==", + "requires": { + "accepts": "~1.3.5", + "bytes": "3.0.0", + "compressible": "~2.0.14", + "debug": "2.6.9", + "on-headers": "~1.0.1", + "safe-buffer": "5.1.2", + "vary": "~1.1.2" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + } + } + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + }, + "content-disposition": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz", + "integrity": "sha1-DPaLud318r55YcOoUXjLhdunjLQ=" + }, + "cookie": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.1.tgz", + "integrity": "sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA==" + }, + "cors": { + "version": "2.8.5", + "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", + "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", + "requires": { + "object-assign": "^4", + "vary": "^1" + } + }, + "cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "requires": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + } + }, + "crypto-js": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/crypto-js/-/crypto-js-4.1.1.tgz", + "integrity": "sha512-o2JlM7ydqd3Qk9CA0L4NL6mTzU2sdx96a+oOfPu8Mkl/PK51vSyoi8/rQ8NknZtk44vq15lmhAj9CIAGwgeWKw==", + "dev": true + }, + "debug": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", + "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", + "requires": { + "ms": "2.1.2" + } + }, + "deep-extend": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==" + }, + "deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true + }, + "deepmerge": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz", + "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==", + "dev": true + }, + "doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "requires": { + "esutils": "^2.0.2" + } + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "requires": { + "once": "^1.4.0" + } + }, + "engine.io": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.0.1.tgz", + "integrity": "sha512-Y53UaciUh2Rmx5MiogtMxOQcfh7pnemday+Bb4QDg0Wjmnvo/VTvuEyNGQgYmh8L7VOe8Je1QuiqjLNDelMqLA==", + "requires": { + "@types/cookie": "^0.4.1", + "@types/cors": "^2.8.12", + "@types/node": ">=10.0.0", + "accepts": "~1.3.4", + "base64id": "2.0.0", + "cookie": "~0.4.1", + "cors": "~2.8.5", + "debug": "~4.3.1", + "engine.io-parser": "~5.0.0", + "ws": "~8.2.3" + } + }, + "engine.io-parser": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.0.1.tgz", + "integrity": "sha512-j4p3WwJrG2k92VISM0op7wiq60vO92MlF3CRGxhKHy9ywG1/Dkc72g0dXeDQ+//hrcDn8gqQzoEkdO9FN0d9AA==", + "requires": { + "base64-arraybuffer": "~1.0.1" + } + }, + "enquirer": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", + "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", + "dev": true, + "requires": { + "ansi-colors": "^4.1.1" + } + }, + "escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true + }, + "eslint": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.2.0.tgz", + "integrity": "sha512-erw7XmM+CLxTOickrimJ1SiF55jiNlVSp2qqm0NuBWPtHYQCegD5ZMaW0c3i5ytPqL+SSLaCxdvQXFPLJn+ABw==", + "dev": true, + "requires": { + "@eslint/eslintrc": "^1.0.4", + "@humanwhocodes/config-array": "^0.6.0", + "ajv": "^6.10.0", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "enquirer": "^2.3.5", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^6.0.0", + "eslint-utils": "^3.0.0", + "eslint-visitor-keys": "^3.0.0", + "espree": "^9.0.0", + "esquery": "^1.4.0", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "functional-red-black-tree": "^1.0.1", + "glob-parent": "^6.0.1", + "globals": "^13.6.0", + "ignore": "^4.0.6", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.0.4", + "natural-compare": "^1.4.0", + "optionator": "^0.9.1", + "progress": "^2.0.0", + "regexpp": "^3.2.0", + "semver": "^7.2.1", + "strip-ansi": "^6.0.1", + "strip-json-comments": "^3.1.0", + "text-table": "^0.2.0", + "v8-compile-cache": "^2.0.3" + } + }, + "eslint-scope": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-6.0.0.tgz", + "integrity": "sha512-uRDL9MWmQCkaFus8RF5K9/L/2fn+80yoW3jkD53l4shjCh26fCtvJGasxjUqP5OT87SYTxCVA3BwTUzuELx9kA==", + "dev": true, + "requires": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + } + }, + "eslint-utils": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", + "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", + "dev": true, + "requires": { + "eslint-visitor-keys": "^2.0.0" + }, + "dependencies": { + "eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "dev": true + } + } + }, + "eslint-visitor-keys": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.0.0.tgz", + "integrity": "sha512-mJOZa35trBTb3IyRmo8xmKBZlxf+N7OnUl4+ZhJHs/r+0770Wh/LEACE2pqMGMe27G/4y8P2bYGk4J70IC5k1Q==", + "dev": true + }, + "espree": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.0.0.tgz", + "integrity": "sha512-r5EQJcYZ2oaGbeR0jR0fFVijGOcwai07/690YRXLINuhmVeRY4UKSAsQPe/0BNuDgwP7Ophoc1PRsr2E3tkbdQ==", + "dev": true, + "requires": { + "acorn": "^8.5.0", + "acorn-jsx": "^5.3.1", + "eslint-visitor-keys": "^3.0.0" + } + }, + "esquery": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", + "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", + "dev": true, + "requires": { + "estraverse": "^5.1.0" + } + }, + "esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "requires": { + "estraverse": "^5.2.0" + } + }, + "estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true + }, + "estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", + "dev": true + }, + "esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true + }, + "execa": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", + "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", + "requires": { + "cross-spawn": "^6.0.0", + "get-stream": "^4.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" + }, + "dependencies": { + "cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "requires": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=" + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + }, + "shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "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=" + }, + "which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "requires": { + "isexe": "^2.0.0" + } + } + } + }, + "fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" + }, + "fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" + }, + "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 + }, + "fast-url-parser": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/fast-url-parser/-/fast-url-parser-1.1.3.tgz", + "integrity": "sha1-9K8+qfNNiicc9YrSs3WfQx8LMY0=", + "requires": { + "punycode": "^1.3.2" + } + }, + "file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "dev": true, + "requires": { + "flat-cache": "^3.0.4" + } + }, + "flat-cache": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", + "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", + "dev": true, + "requires": { + "flatted": "^3.1.0", + "rimraf": "^3.0.2" + } + }, + "flatted": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.2.tgz", + "integrity": "sha512-JaTY/wtrcSyvXJl4IMFHPKyFur1sE9AUqc0QnhOaJ0CxHtAoIV8pYDzeEfAaNEtGkOfq4gr3LBFmdXW5mOQFnA==", + "dev": true + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true + }, + "fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "dev": true, + "optional": 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 + }, + "functional-red-black-tree": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", + "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", + "dev": true + }, + "get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "requires": { + "pump": "^3.0.0" + } + }, + "glob": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", + "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", + "dev": 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" + } + }, + "glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "requires": { + "is-glob": "^4.0.3" + } + }, + "globals": { + "version": "13.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.12.0.tgz", + "integrity": "sha512-uS8X6lSKN2JumVoXrbUz+uG4BYG+eiawqm3qFcT7ammfbUHeCBoJMlHcec/S3krSk73/AE/f0szYFmgAA3kYZg==", + "dev": true, + "requires": { + "type-fest": "^0.20.2" + } + }, + "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-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + }, + "ignore": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "dev": true + }, + "import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, + "requires": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + } + }, + "imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "dev": true + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dev": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" + }, + "is-core-module": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.0.tgz", + "integrity": "sha512-vd15qHsaqrRL7dtH6QNuy0ndJmRDrS9HAM1CAiSifNUFv4x1a0CCVsj18hJ1mShxIG6T2i1sO78MkP56r0nYRw==", + "dev": true, + "requires": { + "has": "^1.0.3" + } + }, + "is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==" + }, + "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-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" + }, + "is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "requires": { + "is-extglob": "^2.1.1" + } + }, + "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-reference": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/is-reference/-/is-reference-1.2.1.tgz", + "integrity": "sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ==", + "dev": true, + "requires": { + "@types/estree": "*" + } + }, + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=" + }, + "is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "requires": { + "is-docker": "^2.0.0" + } + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" + }, + "js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "requires": { + "argparse": "^2.0.1" + } + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" + }, + "json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", + "dev": true + }, + "levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "requires": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + } + }, + "lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true + }, + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "requires": { + "yallist": "^4.0.0" + } + }, + "magic-string": { + "version": "0.25.7", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.7.tgz", + "integrity": "sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA==", + "dev": true, + "requires": { + "sourcemap-codec": "^1.4.4" + } + }, + "mime-db": { + "version": "1.50.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.50.0.tgz", + "integrity": "sha512-9tMZCDlYHqeERXEHO9f/hKfNXhre5dK2eE/krIvUjZbS2KPcqGDfNShIWS1uW9XOTKQKqK6qbeOci18rbfW77A==" + }, + "mime-types": { + "version": "2.1.33", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.33.tgz", + "integrity": "sha512-plLElXp7pRDd0bNZHw+nMd52vRYjLwQjygaNg7ddJ2uJtTlmnTCjWuPKxVu6//AdaRuME84SvLW91sIkBqGT0g==", + "requires": { + "mime-db": "1.50.0" + } + }, + "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": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "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 + }, + "negotiator": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", + "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==" + }, + "nice-try": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", + "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==" + }, + "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=", + "requires": { + "path-key": "^2.0.0" + }, + "dependencies": { + "path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=" + } + } + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + }, + "on-headers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", + "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==" + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "requires": { + "wrappy": "1" + } + }, + "optionator": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", + "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "dev": true, + "requires": { + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.3" + } + }, + "p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=" + }, + "parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "requires": { + "callsites": "^3.0.0" + } + }, + "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=", + "dev": true + }, + "path-is-inside": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", + "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=" + }, + "path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true + }, + "path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true + }, + "path-to-regexp": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-2.2.1.tgz", + "integrity": "sha512-gu9bD6Ta5bwGrrU8muHzVOBFFREpp2iRkVfhBJahwJ6p6Xw20SjT0MxLnwkjOibQmGSYhiUnf2FLe7k+jcFmGQ==" + }, + "picomatch": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz", + "integrity": "sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==", + "dev": true + }, + "prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true + }, + "progress": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", + "dev": true + }, + "pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=" + }, + "range-parser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", + "integrity": "sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4=" + }, + "rc": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "requires": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "dependencies": { + "strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=" + } + } + }, + "regexpp": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", + "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", + "dev": true + }, + "registry-auth-token": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-3.3.2.tgz", + "integrity": "sha512-JL39c60XlzCVgNrO+qq68FoNb56w/m7JYvGR2jT5iR1xBrUA3Mfx5Twk5rqTThPmQKMWydGmq8oFtDlxfrmxnQ==", + "requires": { + "rc": "^1.1.6", + "safe-buffer": "^5.0.1" + } + }, + "registry-url": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-3.1.0.tgz", + "integrity": "sha1-PU74cPc93h138M+aOBQyRE4XSUI=", + "requires": { + "rc": "^1.0.1" + } + }, + "resolve": { + "version": "1.20.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz", + "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==", + "dev": true, + "requires": { + "is-core-module": "^2.2.0", + "path-parse": "^1.0.6" + } + }, + "resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true + }, + "rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + }, + "rollup": { + "version": "2.59.0", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.59.0.tgz", + "integrity": "sha512-l7s90JQhCQ6JyZjKgo7Lq1dKh2RxatOM+Jr6a9F7WbS9WgKbocyUSeLmZl8evAse7y96Ae98L2k1cBOwWD8nHw==", + "dev": true, + "requires": { + "fsevents": "~2.3.2" + } + }, + "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==" + }, + "semver": { + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + }, + "serve": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/serve/-/serve-13.0.2.tgz", + "integrity": "sha512-71R6fKvNgKrqARAag6lYJNnxDzpH7DCNrMuvPY5PLVaC2PDhJsGTj/34o4o4tPWhTuLgEXqvgnAWbATQ9zGZTQ==", + "requires": { + "@zeit/schemas": "2.6.0", + "ajv": "6.12.6", + "arg": "2.0.0", + "boxen": "5.1.2", + "chalk": "2.4.1", + "clipboardy": "2.3.0", + "compression": "1.7.3", + "serve-handler": "6.1.3", + "update-check": "1.5.2" + }, + "dependencies": { + "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==", + "requires": { + "color-convert": "^1.9.0" + } + }, + "chalk": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz", + "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==", + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.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==", + "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=" + }, + "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=" + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "serve-handler": { + "version": "6.1.3", + "resolved": "https://registry.npmjs.org/serve-handler/-/serve-handler-6.1.3.tgz", + "integrity": "sha512-FosMqFBNrLyeiIDvP1zgO6YoTzFYHxLDEIavhlmQ+knB2Z7l1t+kGLHkZIDN7UVWqQAmKI3D20A6F6jo3nDd4w==", + "requires": { + "bytes": "3.0.0", + "content-disposition": "0.5.2", + "fast-url-parser": "1.1.3", + "mime-types": "2.1.18", + "minimatch": "3.0.4", + "path-is-inside": "1.0.2", + "path-to-regexp": "2.2.1", + "range-parser": "1.2.0" + }, + "dependencies": { + "mime-db": { + "version": "1.33.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.33.0.tgz", + "integrity": "sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ==" + }, + "mime-types": { + "version": "2.1.18", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz", + "integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==", + "requires": { + "mime-db": "~1.33.0" + } + } + } + }, + "shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "requires": { + "shebang-regex": "^3.0.0" + } + }, + "shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true + }, + "signal-exit": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.5.tgz", + "integrity": "sha512-KWcOiKeQj6ZyXx7zq4YxSMgHRlod4czeBQZrPb8OKcohcqAXShm7E20kEMle9WBt26hFcAf0qLOcp5zmY7kOqQ==" + }, + "socket.io": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.3.1.tgz", + "integrity": "sha512-HC5w5Olv2XZ0XJ4gOLGzzHEuOCfj3G0SmoW3jLHYYh34EVsIr3EkW9h6kgfW+K3TFEcmYy8JcPWe//KUkBp5jA==", + "requires": { + "accepts": "~1.3.4", + "base64id": "~2.0.0", + "debug": "~4.3.2", + "engine.io": "~6.0.0", + "socket.io-adapter": "~2.3.2", + "socket.io-parser": "~4.0.4" + } + }, + "socket.io-adapter": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.3.2.tgz", + "integrity": "sha512-PBZpxUPYjmoogY0aoaTmo1643JelsaS1CiAwNjRVdrI0X9Seuc19Y2Wife8k88avW6haG8cznvwbubAZwH4Mtg==" + }, + "socket.io-parser": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.0.4.tgz", + "integrity": "sha512-t+b0SS+IxG7Rxzda2EVvyBZbvFPBCjJoyHuE0P//7OAsN23GItzDRdWa6ALxZI/8R5ygK7jAR6t028/z+7295g==", + "requires": { + "@types/component-emitter": "^1.2.10", + "component-emitter": "~1.3.0", + "debug": "~4.3.1" + } + }, + "sourcemap-codec": { + "version": "1.4.8", + "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", + "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", + "dev": true + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "requires": { + "ansi-regex": "^5.0.1" + } + }, + "strip-eof": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", + "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=" + }, + "strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "requires": { + "has-flag": "^4.0.0" + } + }, + "text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", + "dev": true + }, + "type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "requires": { + "prelude-ls": "^1.2.1" + } + }, + "type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==" + }, + "uglify-js": { + "version": "3.14.3", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.14.3.tgz", + "integrity": "sha512-mic3aOdiq01DuSVx0TseaEzMIVqebMZ0Z3vaeDhFEh9bsc24hV1TFvN74reA2vs08D0ZWfNjAcJ3UbVLaBss+g==", + "dev": true + }, + "update-check": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/update-check/-/update-check-1.5.2.tgz", + "integrity": "sha512-1TrmYLuLj/5ZovwUS7fFd1jMH3NnFDN1y1A8dboedIDt7zs/zJMo6TwwlhYKkSeEwzleeiSBV5/3c9ufAQWDaQ==", + "requires": { + "registry-auth-token": "3.3.2", + "registry-url": "3.1.0" + } + }, + "uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "requires": { + "punycode": "^2.1.0" + }, + "dependencies": { + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" + } + } + }, + "v8-compile-cache": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz", + "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==", + "dev": true + }, + "vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=" + }, + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + }, + "widest-line": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz", + "integrity": "sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==", + "requires": { + "string-width": "^4.0.0" + } + }, + "word-wrap": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", + "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", + "dev": true + }, + "wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + }, + "ws": { + "version": "8.2.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.2.3.tgz", + "integrity": "sha512-wBuoj1BDpC6ZQ1B7DWQBYVLphPWkm8i9Y0/3YdHjHKHiohOJ1ws+3OccDWtH+PoC9DZD5WOTrJvNbWvjS6JWaA==", + "requires": {} + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + } + } +} diff --git a/package.json b/package.json index cf39001..c46977f 100644 --- a/package.json +++ b/package.json @@ -1,13 +1,14 @@ { "name": "cryptalk", - "version": "1.2.3", + "version": "1.2.4", "description": "Encrypted HTML5/Node.JS instant chat", "main": "server/server.js", "preferGlobal": true, "private": false, "scripts": { "test": "echo \"No tests written yet\" && exit 0", - "build": "npm run test:lint && npx rollup -c rollup.config.js && npm run build:minify && npm run build:cleanup", + "build": "npm update && npm outdated && npm run test:lint && npx rollup -c rollup.config.js && npm run build:minify && npm run build:cleanup", + "build:ci": "npm run test:lint && npx rollup -c rollup.config.js && npm run build:minify && npm run build:cleanup", "build:minify": "uglifyjs client/public/js/cryptalk.js --source-map -o client/public/js/cryptalk.min.js", "build:cleanup": "(rm client/public/js/cryptalk.js || del client\\public\\js\\cryptalk.js)", "test:lint": "eslint ./client/source/**/*.js ./server/*.js", @@ -38,7 +39,7 @@ }, "bin": "./server/server.js", "dependencies": { - "serve": "^12.0.1", + "serve": "^13.0.2", "socket.io": "^4.3.1" }, "os": [