UNPKG

w-component-vue

Version:
2 lines (1 loc) 33.2 kB
const I="function"==typeof Buffer,l="function"==typeof TextDecoder?new TextDecoder:void 0,d=("function"==typeof TextEncoder&&new TextEncoder,Array.prototype.slice.call("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=")),c=(I=>{let l={};return d.forEach(((I,d)=>l[I]=d)),l})(),i=/^(?:[A-Za-z\d+\/]{4})*?(?:[A-Za-z\d+\/]{2}(?:==)?|[A-Za-z\d+\/]{3}=?)?$/,Z=String.fromCharCode.bind(String),m="function"==typeof Uint8Array.from?Uint8Array.from.bind(Uint8Array):I=>new Uint8Array(Array.prototype.slice.call(I,0)),X=I=>I.replace(/[^A-Za-z0-9\+\/]/g,""),b=I=>{let l,c,i,Z,m="";const X=I.length%3;for(let X=0;X<I.length;){if((c=I.charCodeAt(X++))>255||(i=I.charCodeAt(X++))>255||(Z=I.charCodeAt(X++))>255)throw new TypeError("invalid character found");l=c<<16|i<<8|Z,m+=d[l>>18&63]+d[l>>12&63]+d[l>>6&63]+d[63&l]}return X?m.slice(0,X-3)+"===".substring(X):m},C=/[\xC0-\xDF][\x80-\xBF]|[\xE0-\xEF][\x80-\xBF]{2}|[\xF0-\xF7][\x80-\xBF]{3}/g,y=I=>{switch(I.length){case 4:var l=((7&I.charCodeAt(0))<<18|(63&I.charCodeAt(1))<<12|(63&I.charCodeAt(2))<<6|63&I.charCodeAt(3))-65536;return Z(55296+(l>>>10))+Z(56320+(1023&l));case 3:return Z((15&I.charCodeAt(0))<<12|(63&I.charCodeAt(1))<<6|63&I.charCodeAt(2));default:return Z((31&I.charCodeAt(0))<<6|63&I.charCodeAt(1))}},g=I=>I.replace(C,y),n=I=>{if(I=I.replace(/\s+/g,""),!i.test(I))throw new TypeError("malformed base64.");I+="==".slice(2-(3&I.length));let l,d,m,X="";for(let i=0;i<I.length;)l=c[I.charAt(i++)]<<18|c[I.charAt(i++)]<<12|(d=c[I.charAt(i++)])<<6|(m=c[I.charAt(i++)]),X+=64===d?Z(l>>16&255):64===m?Z(l>>16&255,l>>8&255):Z(l>>16&255,l>>8&255,255&l);return X},t="function"==typeof atob?I=>atob(X(I)):I?I=>Buffer.from(I,"base64").toString("binary"):n,o=I?I=>m(Buffer.from(I,"base64")):I=>m(t(I).split("").map((I=>I.charCodeAt(0)))),W=I?I=>Buffer.from(I,"base64").toString("utf8"):l?I=>l.decode(o(I)):I=>g(t(I)),G=I=>X(I.replace(/[-_]/g,(I=>"-"==I?"+":"/"))),K=I=>W(G(I)),u=K;var p={};!function(I){var l=Object.prototype.hasOwnProperty,d="~";function c(){}function i(I,l,d){this.fn=I,this.context=l,this.once=d||!1}function Z(I,l,c,Z,m){if("function"!=typeof c)throw new TypeError("The listener must be a function");var X=new i(c,Z||I,m),b=d?d+l:l;return I._events[b]?I._events[b].fn?I._events[b]=[I._events[b],X]:I._events[b].push(X):(I._events[b]=X,I._eventsCount++),I}function m(I,l){0==--I._eventsCount?I._events=new c:delete I._events[l]}function X(){this._events=new c,this._eventsCount=0}Object.create&&(c.prototype=Object.create(null),(new c).__proto__||(d=!1)),X.prototype.eventNames=function(){var I,c,i=[];if(0===this._eventsCount)return i;for(c in I=this._events)l.call(I,c)&&i.push(d?c.slice(1):c);return Object.getOwnPropertySymbols?i.concat(Object.getOwnPropertySymbols(I)):i},X.prototype.listeners=function(I){var l=d?d+I:I,c=this._events[l];if(!c)return[];if(c.fn)return[c.fn];for(var i=0,Z=c.length,m=new Array(Z);i<Z;i++)m[i]=c[i].fn;return m},X.prototype.listenerCount=function(I){var l=d?d+I:I,c=this._events[l];return c?c.fn?1:c.length:0},X.prototype.emit=function(I,l,c,i,Z,m){var X=d?d+I:I;if(!this._events[X])return!1;var b,C,y=this._events[X],g=arguments.length;if(y.fn){switch(y.once&&this.removeListener(I,y.fn,void 0,!0),g){case 1:return y.fn.call(y.context),!0;case 2:return y.fn.call(y.context,l),!0;case 3:return y.fn.call(y.context,l,c),!0;case 4:return y.fn.call(y.context,l,c,i),!0;case 5:return y.fn.call(y.context,l,c,i,Z),!0;case 6:return y.fn.call(y.context,l,c,i,Z,m),!0}for(C=1,b=new Array(g-1);C<g;C++)b[C-1]=arguments[C];y.fn.apply(y.context,b)}else{var n,t=y.length;for(C=0;C<t;C++)switch(y[C].once&&this.removeListener(I,y[C].fn,void 0,!0),g){case 1:y[C].fn.call(y[C].context);break;case 2:y[C].fn.call(y[C].context,l);break;case 3:y[C].fn.call(y[C].context,l,c);break;case 4:y[C].fn.call(y[C].context,l,c,i);break;default:if(!b)for(n=1,b=new Array(g-1);n<g;n++)b[n-1]=arguments[n];y[C].fn.apply(y[C].context,b)}}return!0},X.prototype.on=function(I,l,d){return Z(this,I,l,d,!1)},X.prototype.once=function(I,l,d){return Z(this,I,l,d,!0)},X.prototype.removeListener=function(I,l,c,i){var Z=d?d+I:I;if(!this._events[Z])return this;if(!l)return m(this,Z),this;var X=this._events[Z];if(X.fn)X.fn!==l||i&&!X.once||c&&X.context!==c||m(this,Z);else{for(var b=0,C=[],y=X.length;b<y;b++)(X[b].fn!==l||i&&!X[b].once||c&&X[b].context!==c)&&C.push(X[b]);C.length?this._events[Z]=1===C.length?C[0]:C:m(this,Z)}return this},X.prototype.removeAllListeners=function(I){var l;return I?(l=d?d+I:I,this._events[l]&&m(this,l)):(this._events=new c,this._eventsCount=0),this},X.prototype.off=X.prototype.removeListener,X.prototype.addListener=X.prototype.on,X.prefixed=d,X.EventEmitter=X,I.exports=X}({get exports(){return p},set exports(I){p=I}});var e=p;let J;!function(){if("browser"!==("undefined"!=typeof window&&void 0!==window.document?"browser":"nodejs"))return null;let I=u("CgoKInVzZSBzdHJpY3QiO3ZhciB0PUFycmF5LmlzQXJyYXkscj0ib2JqZWN0Ij09dHlwZW9mIGdsb2JhbCYmZ2xvYmFsJiZnbG9iYWwuT2JqZWN0PT09T2JqZWN0JiZnbG9iYWwsZT0ib2JqZWN0Ij09dHlwZW9mIHNlbGYmJnNlbGYmJnNlbGYuT2JqZWN0PT09T2JqZWN0JiZzZWxmLG49cnx8ZXx8RnVuY3Rpb24oInJldHVybiB0aGlzIikoKSxvPW4uU3ltYm9sLHU9T2JqZWN0LnByb3RvdHlwZSxjPXUuaGFzT3duUHJvcGVydHksYT11LnRvU3RyaW5nLGk9bz9vLnRvU3RyaW5nVGFnOnZvaWQgMDt2YXIgZj1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nO3ZhciBsPSJbb2JqZWN0IE51bGxdIixzPSJbb2JqZWN0IFVuZGVmaW5lZF0iLHA9bz9vLnRvU3RyaW5nVGFnOnZvaWQgMDtmdW5jdGlvbiBiKHQpe3JldHVybiBudWxsPT10P3ZvaWQgMD09PXQ/czpsOnAmJnAgaW4gT2JqZWN0KHQpP2Z1bmN0aW9uKHQpe3ZhciByPWMuY2FsbCh0LGkpLGU9dFtpXTt0cnl7dFtpXT12b2lkIDA7dmFyIG49ITB9Y2F0Y2godCl7fXZhciBvPWEuY2FsbCh0KTtyZXR1cm4gbiYmKHI/dFtpXT1lOmRlbGV0ZSB0W2ldKSxvfSh0KTpmdW5jdGlvbih0KXtyZXR1cm4gZi5jYWxsKHQpfSh0KX1mdW5jdGlvbiB5KHQpe3JldHVybiBudWxsIT10JiYib2JqZWN0Ij09dHlwZW9mIHR9dmFyIHY9IltvYmplY3QgU3ltYm9sXSI7ZnVuY3Rpb24gaCh0KXtyZXR1cm4ic3ltYm9sIj09dHlwZW9mIHR8fHkodCkmJmIodCk9PXZ9dmFyIGo9L1wufFxbKD86W15bXF1dKnwoWyInXSkoPzooPyFcMSlbXlxcXXxcXC4pKj9cMSlcXS8sZD0vXlx3KiQvO2Z1bmN0aW9uIF8odCl7dmFyIHI9dHlwZW9mIHQ7cmV0dXJuIG51bGwhPXQmJigib2JqZWN0Ij09cnx8ImZ1bmN0aW9uIj09cil9dmFyIGc9IltvYmplY3QgQXN5bmNGdW5jdGlvbl0iLE89IltvYmplY3QgRnVuY3Rpb25dIix3PSJbb2JqZWN0IEdlbmVyYXRvckZ1bmN0aW9uXSIsbT0iW29iamVjdCBQcm94eV0iO2Z1bmN0aW9uIEEodCl7aWYoIV8odCkpcmV0dXJuITE7dmFyIHI9Yih0KTtyZXR1cm4gcj09T3x8cj09d3x8cj09Z3x8cj09bX12YXIgeCxTPW5bIl9fY29yZS1qc19zaGFyZWRfXyJdLHo9KHg9L1teLl0rJC8uZXhlYyhTJiZTLmtleXMmJlMua2V5cy5JRV9QUk9UT3x8IiIpKT8iU3ltYm9sKHNyYylfMS4iK3g6IiI7dmFyIFA9RnVuY3Rpb24ucHJvdG90eXBlLnRvU3RyaW5nO2Z1bmN0aW9uIEkodCl7aWYobnVsbCE9dCl7dHJ5e3JldHVybiBQLmNhbGwodCl9Y2F0Y2godCl7fXRyeXtyZXR1cm4gdCsiIn1jYXRjaCh0KXt9fXJldHVybiIifXZhciBFPS9eXFtvYmplY3QgLis/Q29uc3RydWN0b3JcXSQvLEY9RnVuY3Rpb24ucHJvdG90eXBlLFU9T2JqZWN0LnByb3RvdHlwZSxNPUYudG9TdHJpbmcsJD1VLmhhc093blByb3BlcnR5LEI9UmVnRXhwKCJeIitNLmNhbGwoJCkucmVwbGFjZSgvW1xcXiQuKis/KClbXF17fXxdL2csIlxcJCYiKS5yZXBsYWNlKC9oYXNPd25Qcm9wZXJ0eXwoZnVuY3Rpb24pLio/KD89XFxcKCl8IGZvciAuKz8oPz1cXFxdKS9nLCIkMS4qPyIpKyIkIik7ZnVuY3Rpb24gVCh0KXtyZXR1cm4hKCFfKHQpfHwocj10LHomJnogaW4gcikpJiYoQSh0KT9COkUpLnRlc3QoSSh0KSk7dmFyIHJ9ZnVuY3Rpb24gayh0LHIpe3ZhciBlPWZ1bmN0aW9uKHQscil7cmV0dXJuIG51bGw9PXQ/dm9pZCAwOnRbcl19KHQscik7cmV0dXJuIFQoZSk/ZTp2b2lkIDB9dmFyIEM9ayhPYmplY3QsImNyZWF0ZSIpO3ZhciBEPU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHk7dmFyIE49T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTtmdW5jdGlvbiBSKHQpe3ZhciByPS0xLGU9bnVsbD09dD8wOnQubGVuZ3RoO2Zvcih0aGlzLmNsZWFyKCk7KytyPGU7KXt2YXIgbj10W3JdO3RoaXMuc2V0KG5bMF0sblsxXSl9fWZ1bmN0aW9uIFYodCxyKXtyZXR1cm4gdD09PXJ8fHQhPXQmJnIhPXJ9ZnVuY3Rpb24gVyh0LHIpe2Zvcih2YXIgZT10Lmxlbmd0aDtlLS07KWlmKFYodFtlXVswXSxyKSlyZXR1cm4gZTtyZXR1cm4tMX1SLnByb3RvdHlwZS5jbGVhcj1mdW5jdGlvbigpe3RoaXMuX19kYXRhX189Qz9DKG51bGwpOnt9LHRoaXMuc2l6ZT0wfSxSLnByb3RvdHlwZS5kZWxldGU9ZnVuY3Rpb24odCl7dmFyIHI9dGhpcy5oYXModCkmJmRlbGV0ZSB0aGlzLl9fZGF0YV9fW3RdO3JldHVybiB0aGlzLnNpemUtPXI/MTowLHJ9LFIucHJvdG90eXBlLmdldD1mdW5jdGlvbih0KXt2YXIgcj10aGlzLl9fZGF0YV9fO2lmKEMpe3ZhciBlPXJbdF07cmV0dXJuIl9fbG9kYXNoX2hhc2hfdW5kZWZpbmVkX18iPT09ZT92b2lkIDA6ZX1yZXR1cm4gRC5jYWxsKHIsdCk/clt0XTp2b2lkIDB9LFIucHJvdG90eXBlLmhhcz1mdW5jdGlvbih0KXt2YXIgcj10aGlzLl9fZGF0YV9fO3JldHVybiBDP3ZvaWQgMCE9PXJbdF06Ti5jYWxsKHIsdCl9LFIucHJvdG90eXBlLnNldD1mdW5jdGlvbih0LHIpe3ZhciBlPXRoaXMuX19kYXRhX187cmV0dXJuIHRoaXMuc2l6ZSs9dGhpcy5oYXModCk/MDoxLGVbdF09QyYmdm9pZCAwPT09cj8iX19sb2Rhc2hfaGFzaF91bmRlZmluZWRfXyI6cix0aGlzfTt2YXIgTD1BcnJheS5wcm90b3R5cGUuc3BsaWNlO2Z1bmN0aW9uIHEodCl7dmFyIHI9LTEsZT1udWxsPT10PzA6dC5sZW5ndGg7Zm9yKHRoaXMuY2xlYXIoKTsrK3I8ZTspe3ZhciBuPXRbcl07dGhpcy5zZXQoblswXSxuWzFdKX19cS5wcm90b3R5cGUuY2xlYXI9ZnVuY3Rpb24oKXt0aGlzLl9fZGF0YV9fPVtdLHRoaXMuc2l6ZT0wfSxxLnByb3RvdHlwZS5kZWxldGU9ZnVuY3Rpb24odCl7dmFyIHI9dGhpcy5fX2RhdGFfXyxlPVcocix0KTtyZXR1cm4hKGU8MCkmJihlPT1yLmxlbmd0aC0xP3IucG9wKCk6TC5jYWxsKHIsZSwxKSwtLXRoaXMuc2l6ZSwhMCl9LHEucHJvdG90eXBlLmdldD1mdW5jdGlvbih0KXt2YXIgcj10aGlzLl9fZGF0YV9fLGU9VyhyLHQpO3JldHVybiBlPDA/dm9pZCAwOnJbZV1bMV19LHEucHJvdG90eXBlLmhhcz1mdW5jdGlvbih0KXtyZXR1cm4gVyh0aGlzLl9fZGF0YV9fLHQpPi0xfSxxLnByb3RvdHlwZS5zZXQ9ZnVuY3Rpb24odCxyKXt2YXIgZT10aGlzLl9fZGF0YV9fLG49VyhlLHQpO3JldHVybiBuPDA/KCsrdGhpcy5zaXplLGUucHVzaChbdCxyXSkpOmVbbl1bMV09cix0aGlzfTt2YXIgRz1rKG4sIk1hcCIpO2Z1bmN0aW9uIEsodCxyKXt2YXIgZSxuLG89dC5fX2RhdGFfXztyZXR1cm4oInN0cmluZyI9PShuPXR5cGVvZihlPXIpKXx8Im51bWJlciI9PW58fCJzeW1ib2wiPT1ufHwiYm9vbGVhbiI9PW4/Il9fcHJvdG9fXyIhPT1lOm51bGw9PT1lKT9vWyJzdHJpbmciPT10eXBlb2Ygcj8ic3RyaW5nIjoiaGFzaCJdOm8ubWFwfWZ1bmN0aW9uIEgodCl7dmFyIHI9LTEsZT1udWxsPT10PzA6dC5sZW5ndGg7Zm9yKHRoaXMuY2xlYXIoKTsrK3I8ZTspe3ZhciBuPXRbcl07dGhpcy5zZXQoblswXSxuWzFdKX19SC5wcm90b3R5cGUuY2xlYXI9ZnVuY3Rpb24oKXt0aGlzLnNpemU9MCx0aGlzLl9fZGF0YV9fPXtoYXNoOm5ldyBSLG1hcDpuZXcoR3x8cSksc3RyaW5nOm5ldyBSfX0sSC5wcm90b3R5cGUuZGVsZXRlPWZ1bmN0aW9uKHQpe3ZhciByPUsodGhpcyx0KS5kZWxldGUodCk7cmV0dXJuIHRoaXMuc2l6ZS09cj8xOjAscn0sSC5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKHQpe3JldHVybiBLKHRoaXMsdCkuZ2V0KHQpfSxILnByb3RvdHlwZS5oYXM9ZnVuY3Rpb24odCl7cmV0dXJuIEsodGhpcyx0KS5oYXModCl9LEgucHJvdG90eXBlLnNldD1mdW5jdGlvbih0LHIpe3ZhciBlPUsodGhpcyx0KSxuPWUuc2l6ZTtyZXR1cm4gZS5zZXQodCxyKSx0aGlzLnNpemUrPWUuc2l6ZT09bj8wOjEsdGhpc307dmFyIEo9IkV4cGVjdGVkIGEgZnVuY3Rpb24iO2Z1bmN0aW9uIFEodCxyKXtpZigiZnVuY3Rpb24iIT10eXBlb2YgdHx8bnVsbCE9ciYmImZ1bmN0aW9uIiE9dHlwZW9mIHIpdGhyb3cgbmV3IFR5cGVFcnJvcihKKTt2YXIgZT1mdW5jdGlvbigpe3ZhciBuPWFyZ3VtZW50cyxvPXI/ci5hcHBseSh0aGlzLG4pOm5bMF0sdT1lLmNhY2hlO2lmKHUuaGFzKG8pKXJldHVybiB1LmdldChvKTt2YXIgYz10LmFwcGx5KHRoaXMsbik7cmV0dXJuIGUuY2FjaGU9dS5zZXQobyxjKXx8dSxjfTtyZXR1cm4gZS5jYWNoZT1uZXcoUS5DYWNoZXx8SCksZX1RLkNhY2hlPUg7dmFyIFgsWSxaLHR0PS9bXi5bXF1dK3xcWyg/OigtP1xkKyg/OlwuXGQrKT8pfChbIiddKSgoPzooPyFcMilbXlxcXXxcXC4pKj8pXDIpXF18KD89KD86XC58XFtcXSkoPzpcLnxcW1xdfCQpKS9nLHJ0PS9cXChcXCk/L2csZXQ9KFg9ZnVuY3Rpb24odCl7dmFyIHI9W107cmV0dXJuIDQ2PT09dC5jaGFyQ29kZUF0KDApJiZyLnB1c2goIiIpLHQucmVwbGFjZSh0dCwoZnVuY3Rpb24odCxlLG4sbyl7ci5wdXNoKG4/by5yZXBsYWNlKHJ0LCIkMSIpOmV8fHQpfSkpLHJ9LFk9UShYLChmdW5jdGlvbih0KXtyZXR1cm4gNTAwPT09Wi5zaXplJiZaLmNsZWFyKCksdH0pKSxaPVkuY2FjaGUsWSksbnQ9ZXQ7dmFyIG90PTEvMCx1dD1vP28ucHJvdG90eXBlOnZvaWQgMCxjdD11dD91dC50b1N0cmluZzp2b2lkIDA7ZnVuY3Rpb24gYXQocil7aWYoInN0cmluZyI9PXR5cGVvZiByKXJldHVybiByO2lmKHQocikpcmV0dXJuIGZ1bmN0aW9uKHQscil7Zm9yKHZhciBlPS0xLG49bnVsbD09dD8wOnQubGVuZ3RoLG89QXJyYXkobik7KytlPG47KW9bZV09cih0W2VdLGUsdCk7cmV0dXJuIG99KHIsYXQpKyIiO2lmKGgocikpcmV0dXJuIGN0P2N0LmNhbGwocik6IiI7dmFyIGU9cisiIjtyZXR1cm4iMCI9PWUmJjEvcj09LW90PyItMCI6ZX1mdW5jdGlvbiBpdChyLGUpe3JldHVybiB0KHIpP3I6ZnVuY3Rpb24ocixlKXtpZih0KHIpKXJldHVybiExO3ZhciBuPXR5cGVvZiByO3JldHVybiEoIm51bWJlciIhPW4mJiJzeW1ib2wiIT1uJiYiYm9vbGVhbiIhPW4mJm51bGwhPXImJiFoKHIpKXx8ZC50ZXN0KHIpfHwhai50ZXN0KHIpfHxudWxsIT1lJiZyIGluIE9iamVjdChlKX0ocixlKT9bcl06bnQoZnVuY3Rpb24odCl7cmV0dXJuIG51bGw9PXQ/IiI6YXQodCl9KHIpKX12YXIgZnQ9MS8wO2Z1bmN0aW9uIGx0KHQpe2lmKCJzdHJpbmciPT10eXBlb2YgdHx8aCh0KSlyZXR1cm4gdDt2YXIgcj10KyIiO3JldHVybiIwIj09ciYmMS90PT0tZnQ/Ii0wIjpyfWZ1bmN0aW9uIHN0KHQscixlKXt2YXIgbj1udWxsPT10P3ZvaWQgMDpmdW5jdGlvbih0LHIpe2Zvcih2YXIgZT0wLG49KHI9aXQocix0KSkubGVuZ3RoO251bGwhPXQmJmU8bjspdD10W2x0KHJbZSsrXSldO3JldHVybiBlJiZlPT1uP3Q6dm9pZCAwfSh0LHIpO3JldHVybiB2b2lkIDA9PT1uP2U6bn12YXIgcHQ9T2JqZWN0LnByb3RvdHlwZTtmdW5jdGlvbiBidCh0KXt2YXIgcj10JiZ0LmNvbnN0cnVjdG9yO3JldHVybiB0PT09KCJmdW5jdGlvbiI9PXR5cGVvZiByJiZyLnByb3RvdHlwZXx8cHQpfWZ1bmN0aW9uIHl0KHQscil7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiB0KHIoZSkpfX12YXIgdnQ9eXQoT2JqZWN0LmtleXMsT2JqZWN0KSxodD1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O2Z1bmN0aW9uIGp0KHQpe2lmKCFidCh0KSlyZXR1cm4gdnQodCk7dmFyIHI9W107Zm9yKHZhciBlIGluIE9iamVjdCh0KSlodC5jYWxsKHQsZSkmJiJjb25zdHJ1Y3RvciIhPWUmJnIucHVzaChlKTtyZXR1cm4gcn12YXIgZHQ9ayhuLCJEYXRhVmlldyIpLF90PWsobiwiUHJvbWlzZSIpLGd0PWsobiwiU2V0IiksT3Q9ayhuLCJXZWFrTWFwIiksd3Q9IltvYmplY3QgTWFwXSIsbXQ9IltvYmplY3QgUHJvbWlzZV0iLEF0PSJbb2JqZWN0IFNldF0iLHh0PSJbb2JqZWN0IFdlYWtNYXBdIixTdD0iW29iamVjdCBEYXRhVmlld10iLHp0PUkoZHQpLFB0PUkoRyksSXQ9SShfdCksRXQ9SShndCksRnQ9SShPdCksVXQ9YjsoZHQmJlV0KG5ldyBkdChuZXcgQXJyYXlCdWZmZXIoMSkpKSE9U3R8fEcmJlV0KG5ldyBHKSE9d3R8fF90JiZVdChfdC5yZXNvbHZlKCkpIT1tdHx8Z3QmJlV0KG5ldyBndCkhPUF0fHxPdCYmVXQobmV3IE90KSE9eHQpJiYoVXQ9ZnVuY3Rpb24odCl7dmFyIHI9Yih0KSxlPSJbb2JqZWN0IE9iamVjdF0iPT1yP3QuY29uc3RydWN0b3I6dm9pZCAwLG49ZT9JKGUpOiIiO2lmKG4pc3dpdGNoKG4pe2Nhc2UgenQ6cmV0dXJuIFN0O2Nhc2UgUHQ6cmV0dXJuIHd0O2Nhc2UgSXQ6cmV0dXJuIG10O2Nhc2UgRXQ6cmV0dXJuIEF0O2Nhc2UgRnQ6cmV0dXJuIHh0fXJldHVybiByfSk7dmFyIE10PVV0LCR0PTkwMDcxOTkyNTQ3NDA5OTE7ZnVuY3Rpb24gQnQodCl7cmV0dXJuIm51bWJlciI9PXR5cGVvZiB0JiZ0Pi0xJiZ0JTE9PTAmJnQ8PSR0fWZ1bmN0aW9uIFR0KHQpe3JldHVybiBudWxsIT10JiZCdCh0Lmxlbmd0aCkmJiFBKHQpfXZhciBrdD0iW29iamVjdCBTdHJpbmddIjt2YXIgQ3QsRHQ9KEN0PSJsZW5ndGgiLGZ1bmN0aW9uKHQpe3JldHVybiBudWxsPT10P3ZvaWQgMDp0W0N0XX0pLE50PVJlZ0V4cCgiW1xcdTIwMGRcXHVkODAwLVxcdWRmZmZcXHUwMzAwLVxcdTAzNmZcXHVmZTIwLVxcdWZlMmZcXHUyMGQwLVxcdTIwZmZcXHVmZTBlXFx1ZmUwZl0iKTt2YXIgUnQ9IlxcdWQ4MDAtXFx1ZGZmZiIsVnQ9IlsiK1J0KyJdIixXdD0iW1xcdTAzMDAtXFx1MDM2ZlxcdWZlMjAtXFx1ZmUyZlxcdTIwZDAtXFx1MjBmZl0iLEx0PSJcXHVkODNjW1xcdWRmZmItXFx1ZGZmZl0iLHF0PSJbXiIrUnQrIl0iLEd0PSIoPzpcXHVkODNjW1xcdWRkZTYtXFx1ZGRmZl0pezJ9IixLdD0iW1xcdWQ4MDAtXFx1ZGJmZl1bXFx1ZGMwMC1cXHVkZmZmXSIsSHQ9Iig/OiIrV3QrInwiK0x0KyIpIisiPyIsSnQ9IltcXHVmZTBlXFx1ZmUwZl0/IixRdD1KdCtIdCsoIig/OlxcdTIwMGQoPzoiK1txdCxHdCxLdF0uam9pbigifCIpKyIpIitKdCtIdCsiKSoiKSxYdD0iKD86IitbcXQrV3QrIj8iLFd0LEd0LEt0LFZ0XS5qb2luKCJ8IikrIikiLFl0PVJlZ0V4cChMdCsiKD89IitMdCsiKXwiK1h0K1F0LCJnIik7ZnVuY3Rpb24gWnQodCl7cmV0dXJuIGZ1bmN0aW9uKHQpe3JldHVybiBOdC50ZXN0KHQpfSh0KT9mdW5jdGlvbih0KXtmb3IodmFyIHI9WXQubGFzdEluZGV4PTA7WXQudGVzdCh0KTspKytyO3JldHVybiByfSh0KTpEdCh0KX12YXIgdHI9IltvYmplY3QgTWFwXSIscnI9IltvYmplY3QgU2V0XSI7ZnVuY3Rpb24gZXIocil7aWYobnVsbD09cilyZXR1cm4gMDtpZihUdChyKSlyZXR1cm4ic3RyaW5nIj09dHlwZW9mKGU9cil8fCF0KGUpJiZ5KGUpJiZiKGUpPT1rdD9adChyKTpyLmxlbmd0aDt2YXIgZSxuPU10KHIpO3JldHVybiBuPT10cnx8bj09cnI/ci5zaXplOmp0KHIpLmxlbmd0aH12YXIgbnI9TWF0aC5jZWlsLG9yPU1hdGgubWF4O3ZhciB1cj05MDA3MTk5MjU0NzQwOTkxLGNyPS9eKD86MHxbMS05XVxkKikkLztmdW5jdGlvbiBhcih0LHIpe3ZhciBlPXR5cGVvZiB0O3JldHVybiEhKHI9bnVsbD09cj91cjpyKSYmKCJudW1iZXIiPT1lfHwic3ltYm9sIiE9ZSYmY3IudGVzdCh0KSkmJnQ+LTEmJnQlMT09MCYmdDxyfXZhciBpcj0vXHMvO3ZhciBmcj0vXlxzKy87ZnVuY3Rpb24gbHIodCl7cmV0dXJuIHQ/dC5zbGljZSgwLGZ1bmN0aW9uKHQpe2Zvcih2YXIgcj10Lmxlbmd0aDtyLS0mJmlyLnRlc3QodC5jaGFyQXQocikpOyk7cmV0dXJuIHJ9KHQpKzEpLnJlcGxhY2UoZnIsIiIpOnR9dmFyIHNyPU5hTixwcj0vXlstK10weFswLTlhLWZdKyQvaSxicj0vXjBiWzAxXSskL2kseXI9L14wb1swLTddKyQvaSx2cj1wYXJzZUludDt2YXIgaHI9MS8wLGpyPTE3OTc2OTMxMzQ4NjIzMTU3ZTI5MjtmdW5jdGlvbiBkcih0KXtyZXR1cm4gdD8odD1mdW5jdGlvbih0KXtpZigibnVtYmVyIj09dHlwZW9mIHQpcmV0dXJuIHQ7aWYoaCh0KSlyZXR1cm4gc3I7aWYoXyh0KSl7dmFyIHI9ImZ1bmN0aW9uIj09dHlwZW9mIHQudmFsdWVPZj90LnZhbHVlT2YoKTp0O3Q9XyhyKT9yKyIiOnJ9aWYoInN0cmluZyIhPXR5cGVvZiB0KXJldHVybiAwPT09dD90Oit0O3Q9bHIodCk7dmFyIGU9YnIudGVzdCh0KTtyZXR1cm4gZXx8eXIudGVzdCh0KT92cih0LnNsaWNlKDIpLGU/Mjo4KTpwci50ZXN0KHQpP3NyOit0fSh0KSk9PT1ocnx8dD09PS1ocj8odDwwPy0xOjEpKmpyOnQ9PXQ/dDowOjA9PT10P3Q6MH12YXIgX3IsZ3I9ZnVuY3Rpb24odCxyLGUpe3JldHVybiBlJiYibnVtYmVyIiE9dHlwZW9mIGUmJmZ1bmN0aW9uKHQscixlKXtpZighXyhlKSlyZXR1cm4hMTt2YXIgbj10eXBlb2YgcjtyZXR1cm4hISgibnVtYmVyIj09bj9UdChlKSYmYXIocixlLmxlbmd0aCk6InN0cmluZyI9PW4mJnIgaW4gZSkmJlYoZVtyXSx0KX0odCxyLGUpJiYocj1lPXZvaWQgMCksdD1kcih0KSx2b2lkIDA9PT1yPyhyPXQsdD0wKTpyPWRyKHIpLGZ1bmN0aW9uKHQscixlLG4pe2Zvcih2YXIgbz0tMSx1PW9yKG5yKChyLXQpLyhlfHwxKSksMCksYz1BcnJheSh1KTt1LS07KWNbbj91Oisrb109dCx0Kz1lO3JldHVybiBjfSh0LHIsZT12b2lkIDA9PT1lP3Q8cj8xOi0xOmRyKGUpLF9yKX0sT3I9Z3I7ZnVuY3Rpb24gd3IodCl7dmFyIHI9dGhpcy5fX2RhdGFfXz1uZXcgcSh0KTt0aGlzLnNpemU9ci5zaXplfXdyLnByb3RvdHlwZS5jbGVhcj1mdW5jdGlvbigpe3RoaXMuX19kYXRhX189bmV3IHEsdGhpcy5zaXplPTB9LHdyLnByb3RvdHlwZS5kZWxldGU9ZnVuY3Rpb24odCl7dmFyIHI9dGhpcy5fX2RhdGFfXyxlPXIuZGVsZXRlKHQpO3JldHVybiB0aGlzLnNpemU9ci5zaXplLGV9LHdyLnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuX19kYXRhX18uZ2V0KHQpfSx3ci5wcm90b3R5cGUuaGFzPWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLl9fZGF0YV9fLmhhcyh0KX0sd3IucHJvdG90eXBlLnNldD1mdW5jdGlvbih0LHIpe3ZhciBlPXRoaXMuX19kYXRhX187aWYoZSBpbnN0YW5jZW9mIHEpe3ZhciBuPWUuX19kYXRhX187aWYoIUd8fG4ubGVuZ3RoPDE5OSlyZXR1cm4gbi5wdXNoKFt0LHJdKSx0aGlzLnNpemU9KytlLnNpemUsdGhpcztlPXRoaXMuX19kYXRhX189bmV3IEgobil9cmV0dXJuIGUuc2V0KHQsciksdGhpcy5zaXplPWUuc2l6ZSx0aGlzfTt2YXIgbXI9ZnVuY3Rpb24oKXt0cnl7dmFyIHQ9ayhPYmplY3QsImRlZmluZVByb3BlcnR5Iik7cmV0dXJuIHQoe30sIiIse30pLHR9Y2F0Y2godCl7fX0oKSxBcj1tcjtmdW5jdGlvbiB4cih0LHIsZSl7Il9fcHJvdG9fXyI9PXImJkFyP0FyKHQscix7Y29uZmlndXJhYmxlOiEwLGVudW1lcmFibGU6ITAsdmFsdWU6ZSx3cml0YWJsZTohMH0pOnRbcl09ZX12YXIgU3I9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTtmdW5jdGlvbiB6cih0LHIsZSl7dmFyIG49dFtyXTtTci5jYWxsKHQscikmJlYobixlKSYmKHZvaWQgMCE9PWV8fHIgaW4gdCl8fHhyKHQscixlKX1mdW5jdGlvbiBQcih0LHIsZSxuKXt2YXIgbz0hZTtlfHwoZT17fSk7Zm9yKHZhciB1PS0xLGM9ci5sZW5ndGg7Kyt1PGM7KXt2YXIgYT1yW3VdLGk9bj9uKGVbYV0sdFthXSxhLGUsdCk6dm9pZCAwO3ZvaWQgMD09PWkmJihpPXRbYV0pLG8/eHIoZSxhLGkpOnpyKGUsYSxpKX1yZXR1cm4gZX1mdW5jdGlvbiBJcih0KXtyZXR1cm4geSh0KSYmIltvYmplY3QgQXJndW1lbnRzXSI9PWIodCl9dmFyIEVyPU9iamVjdC5wcm90b3R5cGUsRnI9RXIuaGFzT3duUHJvcGVydHksVXI9RXIucHJvcGVydHlJc0VudW1lcmFibGUsTXI9SXIoZnVuY3Rpb24oKXtyZXR1cm4gYXJndW1lbnRzfSgpKT9JcjpmdW5jdGlvbih0KXtyZXR1cm4geSh0KSYmRnIuY2FsbCh0LCJjYWxsZWUiKSYmIVVyLmNhbGwodCwiY2FsbGVlIil9O3ZhciAkcj0ib2JqZWN0Ij09dHlwZW9mIGV4cG9ydHMmJmV4cG9ydHMmJiFleHBvcnRzLm5vZGVUeXBlJiZleHBvcnRzLEJyPSRyJiYib2JqZWN0Ij09dHlwZW9mIG1vZHVsZSYmbW9kdWxlJiYhbW9kdWxlLm5vZGVUeXBlJiZtb2R1bGUsVHI9QnImJkJyLmV4cG9ydHM9PT0kcj9uLkJ1ZmZlcjp2b2lkIDAsa3I9KFRyP1RyLmlzQnVmZmVyOnZvaWQgMCl8fGZ1bmN0aW9uKCl7cmV0dXJuITF9LENyPXt9O2Z1bmN0aW9uIERyKHQpe3JldHVybiBmdW5jdGlvbihyKXtyZXR1cm4gdChyKX19Q3JbIltvYmplY3QgRmxvYXQzMkFycmF5XSJdPUNyWyJbb2JqZWN0IEZsb2F0NjRBcnJheV0iXT1DclsiW29iamVjdCBJbnQ4QXJyYXldIl09Q3JbIltvYmplY3QgSW50MTZBcnJheV0iXT1DclsiW29iamVjdCBJbnQzMkFycmF5XSJdPUNyWyJbb2JqZWN0IFVpbnQ4QXJyYXldIl09Q3JbIltvYmplY3QgVWludDhDbGFtcGVkQXJyYXldIl09Q3JbIltvYmplY3QgVWludDE2QXJyYXldIl09Q3JbIltvYmplY3QgVWludDMyQXJyYXldIl09ITAsQ3JbIltvYmplY3QgQXJndW1lbnRzXSJdPUNyWyJbb2JqZWN0IEFycmF5XSJdPUNyWyJbb2JqZWN0IEFycmF5QnVmZmVyXSJdPUNyWyJbb2JqZWN0IEJvb2xlYW5dIl09Q3JbIltvYmplY3QgRGF0YVZpZXddIl09Q3JbIltvYmplY3QgRGF0ZV0iXT1DclsiW29iamVjdCBFcnJvcl0iXT1DclsiW29iamVjdCBGdW5jdGlvbl0iXT1DclsiW29iamVjdCBNYXBdIl09Q3JbIltvYmplY3QgTnVtYmVyXSJdPUNyWyJbb2JqZWN0IE9iamVjdF0iXT1DclsiW29iamVjdCBSZWdFeHBdIl09Q3JbIltvYmplY3QgU2V0XSJdPUNyWyJbb2JqZWN0IFN0cmluZ10iXT1DclsiW29iamVjdCBXZWFrTWFwXSJdPSExO3ZhciBOcj0ib2JqZWN0Ij09dHlwZW9mIGV4cG9ydHMmJmV4cG9ydHMmJiFleHBvcnRzLm5vZGVUeXBlJiZleHBvcnRzLFJyPU5yJiYib2JqZWN0Ij09dHlwZW9mIG1vZHVsZSYmbW9kdWxlJiYhbW9kdWxlLm5vZGVUeXBlJiZtb2R1bGUsVnI9UnImJlJyLmV4cG9ydHM9PT1OciYmci5wcm9jZXNzLFdyPWZ1bmN0aW9uKCl7dHJ5e3ZhciB0PVJyJiZSci5yZXF1aXJlJiZSci5yZXF1aXJlKCJ1dGlsIikudHlwZXM7cmV0dXJuIHR8fFZyJiZWci5iaW5kaW5nJiZWci5iaW5kaW5nKCJ1dGlsIil9Y2F0Y2godCl7fX0oKSxMcj1XciYmV3IuaXNUeXBlZEFycmF5LHFyPUxyP0RyKExyKTpmdW5jdGlvbih0KXtyZXR1cm4geSh0KSYmQnQodC5sZW5ndGgpJiYhIUNyW2IodCldfSxHcj1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O2Z1bmN0aW9uIEtyKHIsZSl7dmFyIG49dChyKSxvPSFuJiZNcihyKSx1PSFuJiYhbyYma3IociksYz0hbiYmIW8mJiF1JiZxcihyKSxhPW58fG98fHV8fGMsaT1hP2Z1bmN0aW9uKHQscil7Zm9yKHZhciBlPS0xLG49QXJyYXkodCk7KytlPHQ7KW5bZV09cihlKTtyZXR1cm4gbn0oci5sZW5ndGgsU3RyaW5nKTpbXSxmPWkubGVuZ3RoO2Zvcih2YXIgbCBpbiByKSFlJiYhR3IuY2FsbChyLGwpfHxhJiYoImxlbmd0aCI9PWx8fHUmJigib2Zmc2V0Ij09bHx8InBhcmVudCI9PWwpfHxjJiYoImJ1ZmZlciI9PWx8fCJieXRlTGVuZ3RoIj09bHx8ImJ5dGVPZmZzZXQiPT1sKXx8YXIobCxmKSl8fGkucHVzaChsKTtyZXR1cm4gaX1mdW5jdGlvbiBIcih0KXtyZXR1cm4gVHQodCk/S3IodCk6anQodCl9dmFyIEpyPU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHk7ZnVuY3Rpb24gUXIodCl7aWYoIV8odCkpcmV0dXJuIGZ1bmN0aW9uKHQpe3ZhciByPVtdO2lmKG51bGwhPXQpZm9yKHZhciBlIGluIE9iamVjdCh0KSlyLnB1c2goZSk7cmV0dXJuIHJ9KHQpO3ZhciByPWJ0KHQpLGU9W107Zm9yKHZhciBuIGluIHQpKCJjb25zdHJ1Y3RvciIhPW58fCFyJiZKci5jYWxsKHQsbikpJiZlLnB1c2gobik7cmV0dXJuIGV9ZnVuY3Rpb24gWHIodCl7cmV0dXJuIFR0KHQpP0tyKHQsITApOlFyKHQpfXZhciBZcj0ib2JqZWN0Ij09dHlwZW9mIGV4cG9ydHMmJmV4cG9ydHMmJiFleHBvcnRzLm5vZGVUeXBlJiZleHBvcnRzLFpyPVlyJiYib2JqZWN0Ij09dHlwZW9mIG1vZHVsZSYmbW9kdWxlJiYhbW9kdWxlLm5vZGVUeXBlJiZtb2R1bGUsdGU9WnImJlpyLmV4cG9ydHM9PT1Zcj9uLkJ1ZmZlcjp2b2lkIDAscmU9dGU/dGUuYWxsb2NVbnNhZmU6dm9pZCAwO2Z1bmN0aW9uIGVlKCl7cmV0dXJuW119dmFyIG5lPU9iamVjdC5wcm90b3R5cGUucHJvcGVydHlJc0VudW1lcmFibGUsb2U9T2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyx1ZT1vZT9mdW5jdGlvbih0KXtyZXR1cm4gbnVsbD09dD9bXToodD1PYmplY3QodCksZnVuY3Rpb24odCxyKXtmb3IodmFyIGU9LTEsbj1udWxsPT10PzA6dC5sZW5ndGgsbz0wLHU9W107KytlPG47KXt2YXIgYz10W2VdO3IoYyxlLHQpJiYodVtvKytdPWMpfXJldHVybiB1fShvZSh0KSwoZnVuY3Rpb24ocil7cmV0dXJuIG5lLmNhbGwodCxyKX0pKSl9OmVlLGNlPXVlO2Z1bmN0aW9uIGFlKHQscil7Zm9yKHZhciBlPS0xLG49ci5sZW5ndGgsbz10Lmxlbmd0aDsrK2U8bjspdFtvK2VdPXJbZV07cmV0dXJuIHR9dmFyIGllPXl0KE9iamVjdC5nZXRQcm90b3R5cGVPZixPYmplY3QpLGZlPU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHM/ZnVuY3Rpb24odCl7Zm9yKHZhciByPVtdO3Q7KWFlKHIsY2UodCkpLHQ9aWUodCk7cmV0dXJuIHJ9OmVlLGxlPWZlO2Z1bmN0aW9uIHNlKHIsZSxuKXt2YXIgbz1lKHIpO3JldHVybiB0KHIpP286YWUobyxuKHIpKX1mdW5jdGlvbiBwZSh0KXtyZXR1cm4gc2UodCxIcixjZSl9ZnVuY3Rpb24gYmUodCl7cmV0dXJuIHNlKHQsWHIsbGUpfXZhciB5ZT1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O3ZhciB2ZT1uLlVpbnQ4QXJyYXk7ZnVuY3Rpb24gaGUodCl7dmFyIHI9bmV3IHQuY29uc3RydWN0b3IodC5ieXRlTGVuZ3RoKTtyZXR1cm4gbmV3IHZlKHIpLnNldChuZXcgdmUodCkpLHJ9dmFyIGplPS9cdyokLzt2YXIgZGU9bz9vLnByb3RvdHlwZTp2b2lkIDAsX2U9ZGU/ZGUudmFsdWVPZjp2b2lkIDA7dmFyIGdlPSJbb2JqZWN0IEJvb2xlYW5dIixPZT0iW29iamVjdCBEYXRlXSIsd2U9IltvYmplY3QgTWFwXSIsbWU9IltvYmplY3QgTnVtYmVyXSIsQWU9IltvYmplY3QgUmVnRXhwXSIseGU9IltvYmplY3QgU2V0XSIsU2U9IltvYmplY3QgU3RyaW5nXSIsemU9IltvYmplY3QgU3ltYm9sXSIsUGU9IltvYmplY3QgQXJyYXlCdWZmZXJdIixJZT0iW29iamVjdCBEYXRhVmlld10iLEVlPSJbb2JqZWN0IEZsb2F0MzJBcnJheV0iLEZlPSJbb2JqZWN0IEZsb2F0NjRBcnJheV0iLFVlPSJbb2JqZWN0IEludDhBcnJheV0iLE1lPSJbb2JqZWN0IEludDE2QXJyYXldIiwkZT0iW29iamVjdCBJbnQzMkFycmF5XSIsQmU9IltvYmplY3QgVWludDhBcnJheV0iLFRlPSJbb2JqZWN0IFVpbnQ4Q2xhbXBlZEFycmF5XSIsa2U9IltvYmplY3QgVWludDE2QXJyYXldIixDZT0iW29iamVjdCBVaW50MzJBcnJheV0iO2Z1bmN0aW9uIERlKHQscixlKXt2YXIgbixvPXQuY29uc3RydWN0b3I7c3dpdGNoKHIpe2Nhc2UgUGU6cmV0dXJuIGhlKHQpO2Nhc2UgZ2U6Y2FzZSBPZTpyZXR1cm4gbmV3IG8oK3QpO2Nhc2UgSWU6cmV0dXJuIGZ1bmN0aW9uKHQscil7dmFyIGU9cj9oZSh0LmJ1ZmZlcik6dC5idWZmZXI7cmV0dXJuIG5ldyB0LmNvbnN0cnVjdG9yKGUsdC5ieXRlT2Zmc2V0LHQuYnl0ZUxlbmd0aCl9KHQsZSk7Y2FzZSBFZTpjYXNlIEZlOmNhc2UgVWU6Y2FzZSBNZTpjYXNlICRlOmNhc2UgQmU6Y2FzZSBUZTpjYXNlIGtlOmNhc2UgQ2U6cmV0dXJuIGZ1bmN0aW9uKHQscil7dmFyIGU9cj9oZSh0LmJ1ZmZlcik6dC5idWZmZXI7cmV0dXJuIG5ldyB0LmNvbnN0cnVjdG9yKGUsdC5ieXRlT2Zmc2V0LHQubGVuZ3RoKX0odCxlKTtjYXNlIHdlOnJldHVybiBuZXcgbztjYXNlIG1lOmNhc2UgU2U6cmV0dXJuIG5ldyBvKHQpO2Nhc2UgQWU6cmV0dXJuIGZ1bmN0aW9uKHQpe3ZhciByPW5ldyB0LmNvbnN0cnVjdG9yKHQuc291cmNlLGplLmV4ZWModCkpO3JldHVybiByLmxhc3RJbmRleD10Lmxhc3RJbmRleCxyfSh0KTtjYXNlIHhlOnJldHVybiBuZXcgbztjYXNlIHplOnJldHVybiBuPXQsX2U/T2JqZWN0KF9lLmNhbGwobikpOnt9fX12YXIgTmU9T2JqZWN0LmNyZWF0ZSxSZT1mdW5jdGlvbigpe2Z1bmN0aW9uIHQoKXt9cmV0dXJuIGZ1bmN0aW9uKHIpe2lmKCFfKHIpKXJldHVybnt9O2lmKE5lKXJldHVybiBOZShyKTt0LnByb3RvdHlwZT1yO3ZhciBlPW5ldyB0O3JldHVybiB0LnByb3RvdHlwZT12b2lkIDAsZX19KCksVmU9UmU7dmFyIFdlPVdyJiZXci5pc01hcCxMZT1XZT9EcihXZSk6ZnVuY3Rpb24odCl7cmV0dXJuIHkodCkmJiJbb2JqZWN0IE1hcF0iPT1NdCh0KX07dmFyIHFlPVdyJiZXci5pc1NldCxHZT1xZT9EcihxZSk6ZnVuY3Rpb24odCl7cmV0dXJuIHkodCkmJiJbb2JqZWN0IFNldF0iPT1NdCh0KX0sS2U9MSxIZT0yLEplPTQsUWU9IltvYmplY3QgQXJndW1lbnRzXSIsWGU9IltvYmplY3QgRnVuY3Rpb25dIixZZT0iW29iamVjdCBHZW5lcmF0b3JGdW5jdGlvbl0iLFplPSJbb2JqZWN0IE9iamVjdF0iLHRuPXt9O2Z1bmN0aW9uIHJuKHIsZSxuLG8sdSxjKXt2YXIgYSxpPWUmS2UsZj1lJkhlLGw9ZSZKZTtpZihuJiYoYT11P24ocixvLHUsYyk6bihyKSksdm9pZCAwIT09YSlyZXR1cm4gYTtpZighXyhyKSlyZXR1cm4gcjt2YXIgcz10KHIpO2lmKHMpe2lmKGE9ZnVuY3Rpb24odCl7dmFyIHI9dC5sZW5ndGgsZT1uZXcgdC5jb25zdHJ1Y3RvcihyKTtyZXR1cm4gciYmInN0cmluZyI9PXR5cGVvZiB0WzBdJiZ5ZS5jYWxsKHQsImluZGV4IikmJihlLmluZGV4PXQuaW5kZXgsZS5pbnB1dD10LmlucHV0KSxlfShyKSwhaSlyZXR1cm4gZnVuY3Rpb24odCxyKXt2YXIgZT0tMSxuPXQubGVuZ3RoO2ZvcihyfHwocj1BcnJheShuKSk7KytlPG47KXJbZV09dFtlXTtyZXR1cm4gcn0ocixhKX1lbHNle3ZhciBwPU10KHIpLGI9cD09WGV8fHA9PVllO2lmKGtyKHIpKXJldHVybiBmdW5jdGlvbih0LHIpe2lmKHIpcmV0dXJuIHQuc2xpY2UoKTt2YXIgZT10Lmxlbmd0aCxuPXJlP3JlKGUpOm5ldyB0LmNvbnN0cnVjdG9yKGUpO3JldHVybiB0LmNvcHkobiksbn0ocixpKTtpZihwPT1aZXx8cD09UWV8fGImJiF1KXtpZihhPWZ8fGI/e306ZnVuY3Rpb24odCl7cmV0dXJuImZ1bmN0aW9uIiE9dHlwZW9mIHQuY29uc3RydWN0b3J8fGJ0KHQpP3t9OlZlKGllKHQpKX0ociksIWkpcmV0dXJuIGY/ZnVuY3Rpb24odCxyKXtyZXR1cm4gUHIodCxsZSh0KSxyKX0ocixmdW5jdGlvbih0LHIpe3JldHVybiB0JiZQcihyLFhyKHIpLHQpfShhLHIpKTpmdW5jdGlvbih0LHIpe3JldHVybiBQcih0LGNlKHQpLHIpfShyLGZ1bmN0aW9uKHQscil7cmV0dXJuIHQmJlByKHIsSHIociksdCl9KGEscikpfWVsc2V7aWYoIXRuW3BdKXJldHVybiB1P3I6e307YT1EZShyLHAsaSl9fWN8fChjPW5ldyB3cik7dmFyIHk9Yy5nZXQocik7aWYoeSlyZXR1cm4geTtjLnNldChyLGEpLEdlKHIpP3IuZm9yRWFjaCgoZnVuY3Rpb24odCl7YS5hZGQocm4odCxlLG4sdCxyLGMpKX0pKTpMZShyKSYmci5mb3JFYWNoKChmdW5jdGlvbih0LG8pe2Euc2V0KG8scm4odCxlLG4sbyxyLGMpKX0pKTt2YXIgdj1zP3ZvaWQgMDoobD9mP2JlOnBlOmY/WHI6SHIpKHIpO3JldHVybiBmdW5jdGlvbih0LHIpe2Zvcih2YXIgZT0tMSxuPW51bGw9PXQ/MDp0Lmxlbmd0aDsrK2U8biYmITEhPT1yKHRbZV0sZSx0KTspO30odnx8ciwoZnVuY3Rpb24odCxvKXt2JiYodD1yW289dF0pLHpyKGEsbyxybih0LGUsbixvLHIsYykpfSkpLGF9dG5bUWVdPXRuWyJbb2JqZWN0IEFycmF5XSJdPXRuWyJbb2JqZWN0IEFycmF5QnVmZmVyXSJdPXRuWyJbb2JqZWN0IERhdGFWaWV3XSJdPXRuWyJbb2JqZWN0IEJvb2xlYW5dIl09dG5bIltvYmplY3QgRGF0ZV0iXT10blsiW29iamVjdCBGbG9hdDMyQXJyYXldIl09dG5bIltvYmplY3QgRmxvYXQ2NEFycmF5XSJdPXRuWyJbb2JqZWN0IEludDhBcnJheV0iXT10blsiW29iamVjdCBJbnQxNkFycmF5XSJdPXRuWyJbb2JqZWN0IEludDMyQXJyYXldIl09dG5bIltvYmplY3QgTWFwXSJdPXRuWyJbb2JqZWN0IE51bWJlcl0iXT10bltaZV09dG5bIltvYmplY3QgUmVnRXhwXSJdPXRuWyJbb2JqZWN0IFNldF0iXT10blsiW29iamVjdCBTdHJpbmddIl09dG5bIltvYmplY3QgU3ltYm9sXSJdPXRuWyJbb2JqZWN0IFVpbnQ4QXJyYXldIl09dG5bIltvYmplY3QgVWludDhDbGFtcGVkQXJyYXldIl09dG5bIltvYmplY3QgVWludDE2QXJyYXldIl09dG5bIltvYmplY3QgVWludDMyQXJyYXldIl09ITAsdG5bIltvYmplY3QgRXJyb3JdIl09dG5bWGVdPXRuWyJbb2JqZWN0IFdlYWtNYXBdIl09ITE7dmFyIGVuPTEsbm49NDtmdW5jdGlvbiBvbih0KXtyZXR1cm4gcm4odCxlbnxubil9ZnVuY3Rpb24gdW4odCl7cmV0dXJuIltvYmplY3QgQXJyYXldIj09PU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbCh0KX1mdW5jdGlvbiBjbih0KXtyZXR1cm4iW29iamVjdCBPYmplY3RdIj09PU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbCh0KX12YXIgYW49IltvYmplY3QgQm9vbGVhbl0iO2Z1bmN0aW9uIGZuKHQpe3JldHVybiEwPT09KHI9dCl8fCExPT09cnx8eShyKSYmYihyKT09YW47dmFyIHJ9ZnVuY3Rpb24gbG4odCxyPW51bGwsZT17fSl7QShyKXx8KHI9dD0+dCk7bGV0IG49c3QoZSwiZm9yY2UiLCExKTtyZXR1cm4gZm4obil8fChuPSExKSxmdW5jdGlvbih0LHIsZT0hMSl7bGV0IG49W107aWYoIXVuKHQpJiYhY24odCkpcmV0dXJuIHIodCxudWxsLFtdKTtmdW5jdGlvbiBvKHQpe2lmKHVuKHQpKXJldHVybiBPcihlcih0KSk7aWYoY24odCkpe2xldCByPU9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKHQpLG49bnVsbDtyZXR1cm4gZSYmKG49T2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyh0KSksdW4ocil8fChyPVtdKSx1bihuKXx8KG49W10pLFsuLi5yLC4uLm5dfXJldHVybiB0fXJldHVybiBmdW5jdGlvbiB0KGUsdSl7aWYodW4oZSkpcmV0dXJuIG8oZSkubWFwKChvPT57bGV0IHU9ZVtvXSxjPW9uKG4pO3JldHVybiBuLnB1c2gobyksdT1yKHUsbyxjKSx1PXQodSksbi5wb3AoKSx1fSkpO2lmKGNuKGUpKXtsZXQgdT1vKGUpLGM9e307cmV0dXJuIHUubWFwKChvPT57bGV0IHU9ZVtvXSxhPW9uKG4pO24ucHVzaChvKSx1PXIodSxvLGEpLHU9dCh1KSxuLnBvcCgpLGNbb109dX0pKSxjfXJldHVybiBlfSh0KX0odCxyLG4pfWZ1bmN0aW9uIHNuKHQpe3JldHVybiEoIWZ1bmN0aW9uKHQpe3JldHVybiJbb2JqZWN0IFN0cmluZ10iPT09T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKHQpfSh0KXx8IiI9PT10KX1mdW5jdGlvbiBwbih0LHI9e30pe2lmKHVuKHQpKXtpZigwPT09dC5sZW5ndGgpcmV0dXJuW119ZWxzZXtpZighY24odCkpcmV0dXJuW107aWYoZnVuY3Rpb24odCl7aWYoY24odCkpe2ZvcihsZXQgciBpbiB0KXJldHVybiExO3JldHVybiEwfXJldHVybiExfSh0KSlyZXR1cm5bXX1sZXQgZT1zdChyLCJiaW5kS2V5IixudWxsKTtzbihlKXx8KGU9ImlkIik7bGV0IG49c3QociwiYmluZENoaWxkcmVuIixudWxsKTtzbihuKXx8KG49ImNoaWxkcmVuIik7bGV0IG89ITE7Y24odCkmJihvPSEwLHQ9W3RdKTtsZXQgdT1bXTtyZXR1cm4gbG4odCwoKHQscixvKT0+e2xldCBjPXN0KHQsZSxudWxsKSxhPXN0KHQsbixudWxsKTtpZihjKXtsZXQgZT1mdW5jdGlvbih0KXtsZXQgcj1bdFswXV07Zm9yKGxldCBlPTE7ZTx0Lmxlbmd0aDtlKyspe2xldCBvPXRbZV07ci5wdXNoKG4pLHIucHVzaChvKX1yZXR1cm4gcn0oWy4uLm8scl0pO2lmKHUucHVzaCh7Li4udCxsZXZlbDooZXIoZSktMSkvMixuazplfSksYSlyZXR1cm4gYX19KSksbyYmKHU9dVswXSksdX1sZXQgZmxhdHRlblRyZWVXaz1hc3luYyBmdW5jdGlvbih0LHI9e30pe3JldHVybiBwbih0LHIpfTsKCgpsZXQgaW5zdGFuY2UgPSBudWxsCmZ1bmN0aW9uIGluaXQoaW5wdXQpewoKICAgIC8vaW5pdAogICAgbGV0IHIKICAgIAogICAgICAgIHIgPSB7CiAgICAgICAgICAgIG1haW46IGZsYXR0ZW5UcmVlV2sKICAgICAgICB9CiAgICAgICAgCgogICAgLy9vbgogICAgCgogICAgLy9zYXZlCiAgICBpbnN0YW5jZSA9IHIKCn0KCmZ1bmN0aW9uIHNlbmRNZXNzYWdlKGRhdGEpIHsKICAgIAogICAgICAgIHNlbGYucG9zdE1lc3NhZ2UoZGF0YSkKICAgICAgICAKfQoKYXN5bmMgZnVuY3Rpb24gcnVuKGRhdGEpIHsKICAgIC8vIGNvbnNvbGUubG9nKCdpbm5lciB3b3JrZXIgcnVuJyxkYXRhKQoKICAgIC8vbW9kZQogICAgbGV0IG1vZGUgPSBkYXRhLm1vZGUKCiAgICAvL2NoZWNrCiAgICBpZihtb2RlICE9PSAnaW5pdCcgJiYgbW9kZSAhPT0gJ2NhbGwnKXsKICAgICAgICByZXR1cm4KICAgIH0KCiAgICAvL2luaXQKICAgIGlmKG1vZGUgPT09ICdpbml0Jyl7CiAgICAgICAgCiAgICAgICAgdHJ5ewoKICAgICAgICAgICAgLy90eXBlCiAgICAgICAgICAgIGxldCB0eXBlID0gZGF0YS50eXBlCgogICAgICAgICAgICAvL2lucHV0CiAgICAgICAgICAgIGxldCBpbnB1dCA9IGRhdGEuaW5wdXQKICAgIAogICAgICAgICAgICAvL2luc3RhbmNlCiAgICAgICAgICAgIGlmKHR5cGUgPT09ICdmdW5jdGlvbicpewogICAgICAgICAgICAgICAgaW5pdCguLi5pbnB1dCkKICAgICAgICAgICAgfQogICAgICAgICAgICBlbHNlIGlmKHR5cGUgPT09ICdvYmplY3QnKXsKICAgICAgICAgICAgICAgIGluc3RhbmNlID0gZmxhdHRlblRyZWVXawogICAgICAgICAgICB9CgogICAgICAgIH0KICAgICAgICBjYXRjaChlcnIpewogICAgICAgIAogICAgICAgICAgICAvL3NlbmRNZXNzYWdlCiAgICAgICAgICAgIGxldCByZXMgPSB7CiAgICAgICAgICAgICAgICBtb2RlOiAnZW1pdCcsCiAgICAgICAgICAgICAgICBldk5hbWU6ICdlcnJvcicsCiAgICAgICAgICAgICAgICBtc2c6IGVyciwKICAgICAgICAgICAgfQogICAgICAgICAgICBzZW5kTWVzc2FnZShyZXMpCgogICAgICAgIH0KICAgICAgICAgICAgCiAgICB9CgogICAgLy9jaGVjawogICAgaWYobW9kZSA9PT0gJ2NhbGwnKXsKICAgICAgICBsZXQgc3RhdGUgPSAnJwogICAgICAgIGxldCBtc2cgPSBudWxsCgogICAgICAgIHRyeXsKCiAgICAgICAgICAgIC8vZnVuCiAgICAgICAgICAgIGxldCBmdW4gPSBpbnN0YW5jZVtkYXRhLmZ1bl0KCiAgICAgICAgICAgIC8vaW5wdXQKICAgICAgICAgICAgbGV0IGlucHV0ID0gZGF0YS5pbnB1dAoKICAgICAgICAgICAgLy9leGVjCiAgICAgICAgICAgIGF3YWl0IGZ1biguLi5pbnB1dCkKICAgICAgICAgICAgICAgIC50aGVuKChzdWMpID0+IHsKICAgICAgICAgICAgICAgICAgICBzdGF0ZT0nc3VjY2VzcycKICAgICAgICAgICAgICAgICAgICBtc2c9c3VjCiAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICAgICAgLmNhdGNoKChlcnIpID0+IHsKICAgICAgICAgICAgICAgICAgICBzdGF0ZT0nZXJyb3InCiAgICAgICAgICAgICAgICAgICAgbXNnPWVycgogICAgICAgICAgICAgICAgfSkKCiAgICAgICAgfQogICAgICAgIGNhdGNoKGVycil7CiAgICAgICAgICAgIHN0YXRlID0gJ2Vycm9yJwogICAgICAgICAgICBtc2cgPSBlcnIKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgLy9zZW5kTWVzc2FnZQogICAgICAgIGxldCByZXMgPSB7CiAgICAgICAgICAgIG1vZGU6ICdyZXR1cm4nLAogICAgICAgICAgICBpZDogZGF0YS5pZCwKICAgICAgICAgICAgZnVuOiBkYXRhLmZ1biwKICAgICAgICAgICAgc3RhdGUsCiAgICAgICAgICAgIG1zZywKICAgICAgICB9CiAgICAgICAgc2VuZE1lc3NhZ2UocmVzKQoKICAgIH0KCn0KCmZ1bmN0aW9uIHJlY3ZNZXNzYWdlKGRhdGEpIHsKICAgIC8vIGNvbnNvbGUubG9nKCdpbm5lciB3b3JrZXIgcmVjdjonLCBkYXRhKQoKICAgIC8vZGF0YVJlY3YKICAgIGxldCBkYXRhUmVjdiA9IGRhdGEKCiAgICAvL3J1bgogICAgcnVuKGRhdGFSZWN2KQoKfQoKCiAgICAgICAgc2VsZi5vbm1lc3NhZ2UgPSBmdW5jdGlvbiAoZSkgewogICAgICAgICAgICByZWN2TWVzc2FnZShlLmRhdGEpCiAgICAgICAgfQogICAgICAgIAoKdHJ5ewogICAgcHJvY2Vzcy5vbigndW5oYW5kbGVkUmVqZWN0aW9uJywgKGVycikgPT4gewogICAgICAgIGNvbnNvbGUubG9nKCdpbm5lcjp1bmhhbmRsZWRSZWplY3Rpb24nLCBlcnIpCiAgICB9KQogICAgcHJvY2Vzcy5vbigndW5jYXVnaHRFeGNlcHRpb24nLCAoZXJyKSA9PiB7CiAgICAgICAgY29uc29sZS5sb2coJ2lubmVyOnVuY2F1Z2h0RXhjZXB0aW9uJywgZXJyKQogICAgfSkKICAgIHByb2Nlc3Mub24oJ3VuY2F1Z2h0RXhjZXB0aW9uTW9uaXRvcicsIChlcnIpID0+IHsKICAgICAgICBjb25zb2xlLmxvZygnaW5uZXI6dW5jYXVnaHRFeGNlcHRpb25Nb25pdG9yJywgZXJyKQogICAgfSkKfQpjYXRjaChlcnIpe30KCg==");function l(){let l=new e;let d=function(I){try{let l=new Blob([I]),d=window.URL||window.webkitURL;return new Worker(d.createObjectURL(l))}catch(I){i(I)}}(I);if(!d)return i("invalid worker"),null;function c(){let I=function(){let I,l,d=new Promise((function(){I=arguments[0],l=arguments[1]}));return d.resolve=I,d.reject=l,d}(),c=function(){let I=arguments.length>0&&void 0!==arguments[0]?arguments[0]:10,l=[],d="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".split(""),c=d.length;for(let i=0;i<I;i++)l[i]=d[0|Math.random()*c];return l.join("")}(),i={mode:"call",id:c,fun:"main",input:[...arguments]};return d.postMessage(i),l.once(c,(l=>{"success"===l.state?I.resolve(l.msg):I.reject(l.msg)})),I}function i(I){l.emit("error",I)}return d.onmessage=function(I){!function(I){let d=I,c=d.mode;"emit"!==c&&"return"!==c||("emit"===c&&l.emit(d.evName,d.msg),"return"===c&&l.emit(d.id,d))}(I.data)},d.onerror=i,d.onmessageerror=function(I){i(I.data)},function(){let I={mode:"init",type:"function",input:[...arguments]};d.postMessage(I)}([...arguments]),l.main=c,l.main=c,l.terminate=function(){d?(d.terminate(),d=void 0):i("worker has been terminated")},l}J=async function(){let I=[...arguments],d=l();return await d.main(...I).finally((()=>{d.terminate()}))}}();try{process.on("unhandledRejection",(I=>{console.log("outer:unhandledRejection",I)})),process.on("uncaughtException",(I=>{console.log("outer:uncaughtException",I)})),process.on("uncaughtExceptionMonitor",(I=>{console.log("outer:uncaughtExceptionMonitor",I)}))}catch(I){}var V=J;export{V as default};