var snarkjs=function(A){"use strict";const I=[0,1,2,2,3,3,3,3,4,4,4,4,4,4,4,4];function g(A,I){return I&&10!=I?16==I?"0x"==A.slice(0,2)?BigInt(A):BigInt("0x"+A):void 0:BigInt(A)}const C=g;function t(A,I){return BigInt(A)<>BigInt(I)}const i=t,B=Q;var E=Object.freeze({__proto__:null,fromString:g,e:C,fromArray:function(A,I){let g=BigInt(0);I=BigInt(I);for(let C=0;C>=BigInt(1)}return g},bits:function(A){let I=BigInt(A);const g=[];for(;I;)I&BigInt(1)?g.push(1):g.push(0),I>>=BigInt(1);return g},toNumber:function(A){if(A>BigInt(Number.MAX_SAFE_INTEGER))throw new Error("Number too big");return Number(A)},toArray:function(A,I){const g=[];let C=BigInt(A);for(I=BigInt(I);C;)g.unshift(Number(C%I)),C/=I;return g},add:function(A,I){return BigInt(A)+BigInt(I)},sub:function(A,I){return BigInt(A)-BigInt(I)},neg:function(A){return-BigInt(A)},mul:function(A,I){return BigInt(A)*BigInt(I)},square:function(A){return BigInt(A)*BigInt(A)},pow:function(A,I){return BigInt(A)**BigInt(I)},exp:function(A,I){return BigInt(A)**BigInt(I)},abs:function(A){return BigInt(A)>=0?BigInt(A):-BigInt(A)},div:function(A,I){return BigInt(A)/BigInt(I)},mod:function(A,I){return BigInt(A)%BigInt(I)},eq:function(A,I){return BigInt(A)==BigInt(I)},neq:function(A,I){return BigInt(A)!=BigInt(I)},lt:function(A,I){return BigInt(A)BigInt(I)},leq:function(A,I){return BigInt(A)<=BigInt(I)},geq:function(A,I){return BigInt(A)>=BigInt(I)},band:function(A,I){return BigInt(A)&BigInt(I)},bor:function(A,I){return BigInt(A)|BigInt(I)},bxor:function(A,I){return BigInt(A)^BigInt(I)},land:function(A,I){return BigInt(A)&&BigInt(I)},lor:function(A,I){return BigInt(A)||BigInt(I)},lnot:function(A){return!BigInt(A)}}),e="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function n(A){var I={exports:{}};return A(I,I.exports),I.exports}var a=n((function(A){var I=function(A){var g=1e7,C=9007199254740992,t=o(C),Q="0123456789abcdefghijklmnopqrstuvwxyz",i="function"==typeof BigInt;function B(A,I,g,C){return void 0===A?B[0]:void 0!==I&&(10!=+I||g)?Z(A,I,g,C):j(A)}function E(A,I){this.value=A,this.sign=I,this.isSmall=!1}function e(A){this.value=A,this.sign=A<0,this.isSmall=!0}function n(A){this.value=A}function a(A){return-C0?Math.floor(A):Math.ceil(A)}function f(A,I){var C,t,Q=A.length,i=I.length,B=new Array(Q),E=0,e=g;for(t=0;t=e?1:0,B[t]=C-E*e;for(;t0&&B.push(E),B}function D(A,I){return A.length>=I.length?f(A,I):f(I,A)}function c(A,I){var C,t,Q=A.length,i=new Array(Q),B=g;for(t=0;t0;)i[t++]=I%B,I=Math.floor(I/B);return i}function y(A,I){var C,t,Q=A.length,i=I.length,B=new Array(Q),E=0,e=g;for(C=0;C0;)i[t++]=E%B,E=Math.floor(E/B);return i}function M(A,I){for(var g=[];I-- >0;)g.push(0);return g.concat(A)}function p(A,I){var g=Math.max(A.length,I.length);if(g<=30)return l(A,I);g=Math.ceil(g/2);var C=A.slice(g),t=A.slice(0,g),Q=I.slice(g),i=I.slice(0,g),B=p(t,i),E=p(C,Q),e=p(D(t,C),D(i,Q)),n=D(D(B,M(y(y(e,B),E),g)),M(E,2*g));return h(n),n}function G(A,I,C){return new E(A=0;--g)t=(Q=1e7*t+A[g])-(C=w(Q/I))*I,B[g]=0|C;return[B,0|t]}function U(A,I){var C,t=j(I);if(i)return[new n(A.value/t.value),new n(A.value%t.value)];var Q,a=A.value,f=t.value;if(0===f)throw new Error("Cannot divide by zero");if(A.isSmall)return t.isSmall?[new e(w(a/f)),new e(a%f)]:[B[0],A];if(t.isSmall){if(1===f)return[A,B[0]];if(-1==f)return[A.negate(),B[0]];var D=Math.abs(f);if(D=0;t--){for(C=o-1,D[t+a]!==w&&(C=Math.floor((D[t+a]*o+D[t+a-1])/w)),Q=0,i=0,E=c.length,B=0;Be&&(Q=(Q+1)*o),C=Math.ceil(Q/i);do{if(m(B=F(I,C),a)<=0)break;C--}while(C);n.push(C),a=y(a,B)}return n.reverse(),[r(n),r(a)]}(a,f))[0];var l=A.sign!==t.sign,M=C[1],p=A.sign;return"number"==typeof Q?(l&&(Q=-Q),Q=new e(Q)):Q=new E(Q,l),"number"==typeof M?(p&&(M=-M),M=new e(M)):M=new E(M,p),[Q,M]}function m(A,I){if(A.length!==I.length)return A.length>I.length?1:-1;for(var g=A.length-1;g>=0;g--)if(A[g]!==I[g])return A[g]>I[g]?1:-1;return 0}function L(A){var I=A.abs();return!I.isUnit()&&(!!(I.equals(2)||I.equals(3)||I.equals(5))||!(I.isEven()||I.isDivisibleBy(3)||I.isDivisibleBy(5))&&(!!I.lesser(49)||void 0))}function b(A,g){for(var C,t,Q,i=A.prev(),B=i,E=0;B.isEven();)B=B.divide(2),E++;A:for(t=0;t=0?C=y(A,I):(C=y(I,A),g=!g),"number"==typeof(C=r(C))?(g&&(C=-C),new e(C)):new E(C,g)}(g,C,this.sign)},E.prototype.minus=E.prototype.subtract,e.prototype.subtract=function(A){var I=j(A),g=this.value;if(g<0!==I.sign)return this.add(I.negate());var C=I.value;return I.isSmall?new e(g-C):u(C,Math.abs(g),g>=0)},e.prototype.minus=e.prototype.subtract,n.prototype.subtract=function(A){return new n(this.value-j(A).value)},n.prototype.minus=n.prototype.subtract,E.prototype.negate=function(){return new E(this.value,!this.sign)},e.prototype.negate=function(){var A=this.sign,I=new e(-this.value);return I.sign=!A,I},n.prototype.negate=function(){return new n(-this.value)},E.prototype.abs=function(){return new E(this.value,!1)},e.prototype.abs=function(){return new e(Math.abs(this.value))},n.prototype.abs=function(){return new n(this.value>=0?this.value:-this.value)},E.prototype.multiply=function(A){var I,C,t,Q=j(A),i=this.value,e=Q.value,n=this.sign!==Q.sign;if(Q.isSmall){if(0===e)return B[0];if(1===e)return this;if(-1===e)return this.negate();if((I=Math.abs(e))0?p(i,e):l(i,e),n)},E.prototype.times=E.prototype.multiply,e.prototype._multiplyBySmall=function(A){return a(A.value*this.value)?new e(A.value*this.value):G(Math.abs(A.value),o(Math.abs(this.value)),this.sign!==A.sign)},E.prototype._multiplyBySmall=function(A){return 0===A.value?B[0]:1===A.value?this:-1===A.value?this.negate():G(Math.abs(A.value),this.value,this.sign!==A.sign)},e.prototype.multiply=function(A){return j(A)._multiplyBySmall(this)},e.prototype.times=e.prototype.multiply,n.prototype.multiply=function(A){return new n(this.value*j(A).value)},n.prototype.times=n.prototype.multiply,E.prototype.square=function(){return new E(H(this.value),!1)},e.prototype.square=function(){var A=this.value*this.value;return a(A)?new e(A):new E(H(o(Math.abs(this.value))),!1)},n.prototype.square=function(A){return new n(this.value*this.value)},E.prototype.divmod=function(A){var I=U(this,A);return{quotient:I[0],remainder:I[1]}},n.prototype.divmod=e.prototype.divmod=E.prototype.divmod,E.prototype.divide=function(A){return U(this,A)[0]},n.prototype.over=n.prototype.divide=function(A){return new n(this.value/j(A).value)},e.prototype.over=e.prototype.divide=E.prototype.over=E.prototype.divide,E.prototype.mod=function(A){return U(this,A)[1]},n.prototype.mod=n.prototype.remainder=function(A){return new n(this.value%j(A).value)},e.prototype.remainder=e.prototype.mod=E.prototype.remainder=E.prototype.mod,E.prototype.pow=function(A){var I,g,C,t=j(A),Q=this.value,i=t.value;if(0===i)return B[1];if(0===Q)return B[0];if(1===Q)return B[1];if(-1===Q)return t.isEven()?B[1]:B[-1];if(t.sign)return B[0];if(!t.isSmall)throw new Error("The exponent "+t.toString()+" is too large.");if(this.isSmall&&a(I=Math.pow(Q,i)))return new e(w(I));for(g=this,C=B[1];!0&i&&(C=C.times(g),--i),0!==i;)i/=2,g=g.square();return C},e.prototype.pow=E.prototype.pow,n.prototype.pow=function(A){var I=j(A),g=this.value,C=I.value,t=BigInt(0),Q=BigInt(1),i=BigInt(2);if(C===t)return B[1];if(g===t)return B[0];if(g===Q)return B[1];if(g===BigInt(-1))return I.isEven()?B[1]:B[-1];if(I.isNegative())return new n(t);for(var E=this,e=B[1];(C&Q)===Q&&(e=e.times(E),--C),C!==t;)C/=i,E=E.square();return e},E.prototype.modPow=function(A,I){if(A=j(A),(I=j(I)).isZero())throw new Error("Cannot take modPow with modulus 0");var g=B[1],C=this.mod(I);for(A.isNegative()&&(A=A.multiply(B[-1]),C=C.modInv(I));A.isPositive();){if(C.isZero())return B[0];A.isOdd()&&(g=g.multiply(C).mod(I)),A=A.divide(2),C=C.square().mod(I)}return g},n.prototype.modPow=e.prototype.modPow=E.prototype.modPow,E.prototype.compareAbs=function(A){var I=j(A),g=this.value,C=I.value;return I.isSmall?1:m(g,C)},e.prototype.compareAbs=function(A){var I=j(A),g=Math.abs(this.value),C=I.value;return I.isSmall?g===(C=Math.abs(C))?0:g>C?1:-1:-1},n.prototype.compareAbs=function(A){var I=this.value,g=j(A).value;return(I=I>=0?I:-I)===(g=g>=0?g:-g)?0:I>g?1:-1},E.prototype.compare=function(A){if(A===1/0)return-1;if(A===-1/0)return 1;var I=j(A),g=this.value,C=I.value;return this.sign!==I.sign?I.sign?1:-1:I.isSmall?this.sign?-1:1:m(g,C)*(this.sign?-1:1)},E.prototype.compareTo=E.prototype.compare,e.prototype.compare=function(A){if(A===1/0)return-1;if(A===-1/0)return 1;var I=j(A),g=this.value,C=I.value;return I.isSmall?g==C?0:g>C?1:-1:g<0!==I.sign?g<0?-1:1:g<0?1:-1},e.prototype.compareTo=e.prototype.compare,n.prototype.compare=function(A){if(A===1/0)return-1;if(A===-1/0)return 1;var I=this.value,g=j(A).value;return I===g?0:I>g?1:-1},n.prototype.compareTo=n.prototype.compare,E.prototype.equals=function(A){return 0===this.compare(A)},n.prototype.eq=n.prototype.equals=e.prototype.eq=e.prototype.equals=E.prototype.eq=E.prototype.equals,E.prototype.notEquals=function(A){return 0!==this.compare(A)},n.prototype.neq=n.prototype.notEquals=e.prototype.neq=e.prototype.notEquals=E.prototype.neq=E.prototype.notEquals,E.prototype.greater=function(A){return this.compare(A)>0},n.prototype.gt=n.prototype.greater=e.prototype.gt=e.prototype.greater=E.prototype.gt=E.prototype.greater,E.prototype.lesser=function(A){return this.compare(A)<0},n.prototype.lt=n.prototype.lesser=e.prototype.lt=e.prototype.lesser=E.prototype.lt=E.prototype.lesser,E.prototype.greaterOrEquals=function(A){return this.compare(A)>=0},n.prototype.geq=n.prototype.greaterOrEquals=e.prototype.geq=e.prototype.greaterOrEquals=E.prototype.geq=E.prototype.greaterOrEquals,E.prototype.lesserOrEquals=function(A){return this.compare(A)<=0},n.prototype.leq=n.prototype.lesserOrEquals=e.prototype.leq=e.prototype.lesserOrEquals=E.prototype.leq=E.prototype.lesserOrEquals,E.prototype.isEven=function(){return 0==(1&this.value[0])},e.prototype.isEven=function(){return 0==(1&this.value)},n.prototype.isEven=function(){return(this.value&BigInt(1))===BigInt(0)},E.prototype.isOdd=function(){return 1==(1&this.value[0])},e.prototype.isOdd=function(){return 1==(1&this.value)},n.prototype.isOdd=function(){return(this.value&BigInt(1))===BigInt(1)},E.prototype.isPositive=function(){return!this.sign},e.prototype.isPositive=function(){return this.value>0},n.prototype.isPositive=e.prototype.isPositive,E.prototype.isNegative=function(){return this.sign},e.prototype.isNegative=function(){return this.value<0},n.prototype.isNegative=e.prototype.isNegative,E.prototype.isUnit=function(){return!1},e.prototype.isUnit=function(){return 1===Math.abs(this.value)},n.prototype.isUnit=function(){return this.abs().value===BigInt(1)},E.prototype.isZero=function(){return!1},e.prototype.isZero=function(){return 0===this.value},n.prototype.isZero=function(){return this.value===BigInt(0)},E.prototype.isDivisibleBy=function(A){var I=j(A);return!I.isZero()&&(!!I.isUnit()||(0===I.compareAbs(2)?this.isEven():this.mod(I).isZero()))},n.prototype.isDivisibleBy=e.prototype.isDivisibleBy=E.prototype.isDivisibleBy,E.prototype.isPrime=function(g){var C=L(this);if(C!==A)return C;var t=this.abs(),Q=t.bitLength();if(Q<=64)return b(t,[2,3,5,7,11,13,17,19,23,29,31,37]);for(var i=Math.log(2)*Q.toJSNumber(),B=Math.ceil(!0===g?2*Math.pow(i,2):i),E=[],e=0;e-C?new e(A-1):new E(t,!0)},n.prototype.prev=function(){return new n(this.value-BigInt(1))};for(var k=[1];2*k[k.length-1]<=g;)k.push(2*k[k.length-1]);var J=k.length,N=k[J-1];function S(A){return Math.abs(A)<=g}function R(A,g,C){g=j(g);for(var t=A.isNegative(),Q=g.isNegative(),i=t?A.not():A,B=Q?g.not():g,E=0,e=0,n=null,a=null,o=[];!i.isZero()||!B.isZero();)E=(n=U(i,N))[1].toJSNumber(),t&&(E=N-1-E),e=(a=U(B,N))[1].toJSNumber(),Q&&(e=N-1-e),i=n[0],B=a[0],o.push(C(E,e));for(var r=0!==C(t?1:0,Q?1:0)?I(-1):I(0),h=o.length-1;h>=0;h-=1)r=r.multiply(N).add(I(o[h]));return r}E.prototype.shiftLeft=function(A){var I=j(A).toJSNumber();if(!S(I))throw new Error(String(I)+" is too large for shifting.");if(I<0)return this.shiftRight(-I);var g=this;if(g.isZero())return g;for(;I>=J;)g=g.multiply(N),I-=J-1;return g.multiply(k[I])},n.prototype.shiftLeft=e.prototype.shiftLeft=E.prototype.shiftLeft,E.prototype.shiftRight=function(A){var I,g=j(A).toJSNumber();if(!S(g))throw new Error(String(g)+" is too large for shifting.");if(g<0)return this.shiftLeft(-g);for(var C=this;g>=J;){if(C.isZero()||C.isNegative()&&C.isUnit())return C;C=(I=U(C,N))[1].isNegative()?I[0].prev():I[0],g-=J-1}return(I=U(C,k[g]))[1].isNegative()?I[0].prev():I[0]},n.prototype.shiftRight=e.prototype.shiftRight=E.prototype.shiftRight,E.prototype.not=function(){return this.negate().prev()},n.prototype.not=e.prototype.not=E.prototype.not,E.prototype.and=function(A){return R(this,A,(function(A,I){return A&I}))},n.prototype.and=e.prototype.and=E.prototype.and,E.prototype.or=function(A){return R(this,A,(function(A,I){return A|I}))},n.prototype.or=e.prototype.or=E.prototype.or,E.prototype.xor=function(A){return R(this,A,(function(A,I){return A^I}))},n.prototype.xor=e.prototype.xor=E.prototype.xor;var v=1<<30;function Y(A){var I=A.value,C="number"==typeof I?I|v:"bigint"==typeof I?I|BigInt(v):I[0]+I[1]*g|1073758208;return C&-C}function P(A,g){if(g.compareTo(A)<=0){var C=P(A,g.square(g)),t=C.p,Q=C.e,i=t.multiply(g);return i.compareTo(A)<=0?{p:i,e:2*Q+1}:{p:t,e:2*Q}}return{p:I(1),e:0}}function q(A,I){return A=j(A),I=j(I),A.greater(I)?A:I}function x(A,I){return A=j(A),I=j(I),A.lesser(I)?A:I}function X(A,I){if(A=j(A).abs(),I=j(I).abs(),A.equals(I))return A;if(A.isZero())return I;if(I.isZero())return A;for(var g,C,t=B[1];A.isEven()&&I.isEven();)g=x(Y(A),Y(I)),A=A.divide(g),I=I.divide(g),t=t.multiply(g);for(;A.isEven();)A=A.divide(Y(A));do{for(;I.isEven();)I=I.divide(Y(I));A.greater(I)&&(C=I,I=A,A=C),I=I.subtract(A)}while(!I.isZero());return t.isUnit()?A:A.multiply(t)}E.prototype.bitLength=function(){var A=this;return A.compareTo(I(0))<0&&(A=A.negate().subtract(I(1))),0===A.compareTo(I(0))?I(0):I(P(A,I(2)).e).add(I(1))},n.prototype.bitLength=e.prototype.bitLength=E.prototype.bitLength;var Z=function(A,I,g,C){g=g||Q,A=String(A),C||(A=A.toLowerCase(),g=g.toLowerCase());var t,i=A.length,B=Math.abs(I),E={};for(t=0;t=B)){if("1"===a&&1===B)continue;throw new Error(a+" is not a valid digit in base "+I+".")}}I=j(I);var e=[],n="-"===A[0];for(t=n?1:0;t"!==A[t]&&t=0;C--)t=t.add(A[C].times(Q)),Q=Q.times(I);return g?t.negate():t}function K(A,g){if((g=I(g)).isZero()){if(A.isZero())return{value:[0],isNegative:!1};throw new Error("Cannot convert nonzero numbers to base 0.")}if(g.equals(-1)){if(A.isZero())return{value:[0],isNegative:!1};if(A.isNegative())return{value:[].concat.apply([],Array.apply(null,Array(-A.toJSNumber())).map(Array.prototype.valueOf,[1,0])),isNegative:!1};var C=Array.apply(null,Array(A.toJSNumber()-1)).map(Array.prototype.valueOf,[0,1]);return C.unshift([1]),{value:[].concat.apply([],C),isNegative:!1}}var t=!1;if(A.isNegative()&&g.isPositive()&&(t=!0,A=A.abs()),g.isUnit())return A.isZero()?{value:[0],isNegative:!1}:{value:Array.apply(null,Array(A.toJSNumber())).map(Number.prototype.valueOf,1),isNegative:t};for(var Q,i=[],B=A;B.isNegative()||B.compareAbs(g)>=0;){Q=B.divmod(g),B=Q.quotient;var E=Q.remainder;E.isNegative()&&(E=g.minus(E).abs(),B=B.next()),i.push(E.toJSNumber())}return i.push(B.toJSNumber()),{value:i.reverse(),isNegative:t}}function O(A,I,g){var C=K(A,I);return(C.isNegative?"-":"")+C.value.map((function(A){return function(A,I){return A<(I=I||Q).length?I[A]:"<"+A+">"}(A,g)})).join("")}function W(A){if(a(+A)){var I=+A;if(I===w(I))return i?new n(BigInt(I)):new e(I);throw new Error("Invalid integer: "+A)}var g="-"===A[0];g&&(A=A.slice(1));var C=A.split(/e/i);if(C.length>2)throw new Error("Invalid integer: "+C.join("e"));if(2===C.length){var t=C[1];if("+"===t[0]&&(t=t.slice(1)),(t=+t)!==w(t)||!a(t))throw new Error("Invalid integer: "+t+" is not a valid exponent.");var Q=C[0],B=Q.indexOf(".");if(B>=0&&(t-=Q.length-B-1,Q=Q.slice(0,B)+Q.slice(B+1)),t<0)throw new Error("Cannot include negative exponent part for integers");A=Q+=new Array(t+1).join("0")}if(!/^([0-9][0-9]*)$/.test(A))throw new Error("Invalid integer: "+A);if(i)return new n(BigInt(g?"-"+A:A));for(var o=[],r=A.length,s=r-7;r>0;)o.push(+A.slice(s,r)),(s-=7)<0&&(s=0),r-=7;return h(o),new E(o,g)}function j(A){return"number"==typeof A?function(A){if(i)return new n(BigInt(A));if(a(A)){if(A!==w(A))throw new Error(A+" is not an integer.");return new e(A)}return W(A.toString())}(A):"string"==typeof A?W(A):"bigint"==typeof A?new n(A):A}E.prototype.toArray=function(A){return K(this,A)},e.prototype.toArray=function(A){return K(this,A)},n.prototype.toArray=function(A){return K(this,A)},E.prototype.toString=function(I,g){if(I===A&&(I=10),10!==I)return O(this,I,g);for(var C,t=this.value,Q=t.length,i=String(t[--Q]);--Q>=0;)C=String(t[Q]),i+="0000000".slice(C.length)+C;return(this.sign?"-":"")+i},e.prototype.toString=function(I,g){return I===A&&(I=10),10!=I?O(this,I,g):String(this.value)},n.prototype.toString=e.prototype.toString,n.prototype.toJSON=E.prototype.toJSON=e.prototype.toJSON=function(){return this.toString()},E.prototype.valueOf=function(){return parseInt(this.toString(),10)},E.prototype.toJSNumber=E.prototype.valueOf,e.prototype.valueOf=function(){return this.value},e.prototype.toJSNumber=e.prototype.valueOf,n.prototype.valueOf=n.prototype.toJSNumber=function(){return parseInt(this.toString(),10)};for(var z=0;z<1e3;z++)B[z]=j(z),z>0&&(B[-z]=j(-z));return B.one=B[1],B.zero=B[0],B.minusOne=B[-1],B.max=q,B.min=x,B.gcd=X,B.lcm=function(A,I){return A=j(A).abs(),I=j(I).abs(),A.divide(X(A,I)).multiply(I)},B.isInstance=function(A){return A instanceof E||A instanceof e||A instanceof n},B.randBetween=function(A,I,C){A=j(A),I=j(I);var t=C||Math.random,Q=x(A,I),i=q(A,I).subtract(Q).add(1);if(i.isSmall)return Q.add(Math.floor(t()*i));for(var E=K(i,g).value,e=[],n=!0,a=0;a>5);for(let A=0;A>5);for(let A=0;At[t.length-I-1]=A.toString(16).padStart(8,"0"))),y.fromString(t.join(""),16)},y.fromRprBE=function(A,I,g){g=g||A.byteLength,I=I||0;const C=new DataView(A.buffer,A.byteOffset+I,g),t=new Array(g/4);for(let A=0;A>=1;return g}function sA(A,I,g){if(J(g))return A.one;const C=q(g);if(0==C.legth)return A.one;let t=I;for(let g=C.length-2;g>=0;g--)t=A.square(t),C[g]&&(t=A.mul(t,I));return t}function wA(A){if(A.m%2==1)if(AA($(A.p,4),1))if(AA($(A.p,8),1))if(AA($(A.p,16),1))!function(A){A.sqrt_q=j(A.p,A.m),A.sqrt_s=0,A.sqrt_t=V(A.sqrt_q,1);for(;!Y(A.sqrt_t);)A.sqrt_s=A.sqrt_s+1,A.sqrt_t=_(A.sqrt_t,2);let I=A.one;for(;A.eq(I,A.one);){const g=A.random();A.sqrt_z=A.pow(g,A.sqrt_t),I=A.pow(A.sqrt_z,2**(A.sqrt_s-1))}A.sqrt_tm1d2=_(V(A.sqrt_t,1),2),A.sqrt=function(A){const I=this;if(I.isZero(A))return I.zero;let g=I.pow(A,I.sqrt_tm1d2);const C=I.pow(I.mul(I.square(g),A),2**(I.sqrt_s-1));if(I.eq(C,I.negone))return null;let t=I.sqrt_s,Q=I.mul(A,g),i=I.mul(Q,g),B=I.sqrt_z;for(;!I.eq(i,I.one);){let A=I.square(i),C=1;for(;!I.eq(A,I.one);)A=I.square(A),C++;g=B;for(let A=0;A>>0,A[t]=(A[t]^A[I])>>>0,A[t]=(A[t]<<16|A[t]>>>16&65535)>>>0,A[C]=A[C]+A[t]>>>0,A[g]=(A[g]^A[C])>>>0,A[g]=(A[g]<<12|A[g]>>>20&4095)>>>0,A[I]=A[I]+A[g]>>>0,A[t]=(A[t]^A[I])>>>0,A[t]=(A[t]<<8|A[t]>>>24&255)>>>0,A[C]=A[C]+A[t]>>>0,A[g]=(A[g]^A[C])>>>0,A[g]=(A[g]<<7|A[g]>>>25&127)>>>0}class DA{constructor(A){A=A||[0,0,0,0,0,0,0,0],this.state=[1634760805,857760878,2036477234,1797285236,A[0],A[1],A[2],A[3],A[4],A[5],A[6],A[7],0,0,0,0],this.idx=16,this.buff=new Array(16)}nextU32(){return 16==this.idx&&this.update(),this.buff[this.idx++]}nextU64(){return Z(O(this.nextU32(),4294967296),this.nextU32())}nextBool(){return 1==(1&this.nextU32())}update(){for(let A=0;A<16;A++)this.buff[A]=this.state[A];for(let I=0;I<10;I++)fA(A=this.buff,0,4,8,12),fA(A,1,5,9,13),fA(A,2,6,10,14),fA(A,3,7,11,15),fA(A,0,5,10,15),fA(A,1,6,11,12),fA(A,2,7,8,13),fA(A,3,4,9,14);var A;for(let A=0;A<16;A++)this.buff[A]=this.buff[A]+this.state[A]>>>0;this.idx=0,this.state[12]=this.state[12]+1>>>0,0==this.state[12]&&(this.state[13]=this.state[13]+1>>>0,0==this.state[13]&&(this.state[14]=this.state[14]+1>>>0,0==this.state[14]&&(this.state[15]=this.state[15]+1>>>0)))}}var cA={};function yA(A){let I=new Uint8Array(A);if(void 0!==globalThis.crypto)globalThis.crypto.getRandomValues(I);else for(let g=0;g>>0;return I}let uA=null;function lA(){return uA||(uA=new DA(function(){const A=yA(32),I=new Uint32Array(A.buffer),g=[];for(let A=0;A<8;A++)g.push(I[A]);return g}()),uA)}class FA{constructor(A){this.type="F1",this.one=BigInt(1),this.zero=BigInt(0),this.p=BigInt(A),this.m=1,this.negone=this.p-this.one,this.two=BigInt(2),this.half=this.p>>this.one,this.bitLength=b(this.p),this.mask=(this.one<>this.one;this.nqr=this.two;let g=this.pow(this.nqr,I);for(;!this.eq(g,this.negone);)this.nqr=this.nqr+this.one,g=this.pow(this.nqr,I);for(this.s=0,this.t=this.negone;(this.t&this.one)==this.zero;)this.s=this.s+1,this.t=this.t>>this.one;this.nqr_to_t=this.pow(this.nqr,this.t),wA(this)}e(A,I){let g;if(I?16==I&&(g=BigInt("0x"+A)):g=BigInt(A),g<0){let A=-g;return A>=this.p&&(A%=this.p),this.p-A}return g>=this.p?g%this.p:g}add(A,I){const g=A+I;return g>=this.p?g-this.p:g}sub(A,I){return A>=I?A-I:this.p-I+A}neg(A){return A?this.p-A:A}mul(A,I){return A*I%this.p}mulScalar(A,I){return A*this.e(I)%this.p}square(A){return A*A%this.p}eq(A,I){return A==I}neq(A,I){return A!=I}lt(A,I){return(A>this.half?A-this.p:A)<(I>this.half?I-this.p:I)}gt(A,I){return(A>this.half?A-this.p:A)>(I>this.half?I-this.p:I)}leq(A,I){return(A>this.half?A-this.p:A)<=(I>this.half?I-this.p:I)}geq(A,I){return(A>this.half?A-this.p:A)>=(I>this.half?I-this.p:I)}div(A,I){return this.mul(A,this.inv(I))}idiv(A,I){if(!I)throw new Error("Division by zero");return A/I}inv(A){if(!A)throw new Error("Division by zero");let I=this.zero,g=this.p,C=this.one,t=A%this.p;for(;t;){let A=g/t;[I,C]=[C,I-A*C],[g,t]=[t,g-A*t]}return I=this.p?g-this.p:g}bor(A,I){const g=(A|I)&this.mask;return g>=this.p?g-this.p:g}bxor(A,I){const g=(A^I)&this.mask;return g>=this.p?g-this.p:g}bnot(A){const I=A^this.mask;return I>=this.p?I-this.p:I}shl(A,I){if(Number(I)=this.p?g-this.p:g}{const g=this.p-I;return Number(g)>g:this.zero}}shr(A,I){if(Number(I)>I;{const g=this.p-I;if(Number(g)=this.p?I-this.p:I}return 0}}land(A,I){return A&&I?this.one:this.zero}lor(A,I){return A||I?this.one:this.zero}lnot(A){return A?this.zero:this.one}sqrt_old(A){if(A==this.zero)return this.zero;if(this.pow(A,this.negone>>this.one)!=this.one)return null;let I=this.s,g=this.nqr_to_t,C=this.pow(A,this.t),t=this.pow(A,this.add(this.t,this.one)>>this.one);for(;C!=this.one;){let A=this.square(C),Q=1;for(;A!=this.one;)Q++,A=this.square(A);let i=g;for(let A=0;Athis.p>>this.one&&(t=this.neg(t)),t}normalize(A,I){if((A=BigInt(A,I))<0){let I=-A;return I>=this.p&&(I%=this.p),this.p-I}return A>=this.p?A%this.p:A}random(){const A=2*this.bitLength/8;let I=this.zero;for(let g=0;gthis.half){g="-"+(this.p-A).toString(I)}else g=A.toString(I);return g}isZero(A){return A==this.zero}fromRng(A){let I;do{I=this.zero;for(let g=0;g=this.p);return I=I*this.Ri%this.p,I}}class MA{constructor(A){this.type="F1",this.one=a.one,this.zero=a.zero,this.p=a(A),this.m=1,this.negone=this.p.minus(a.one),this.two=a(2),this.half=this.p.shiftRight(1),this.bitLength=this.p.bitLength(),this.mask=a.one.shiftLeft(this.bitLength).minus(a.one),this.n64=Math.floor((this.bitLength-1)/64)+1,this.n32=2*this.n64,this.n8=8*this.n64,this.R=a.one.shiftLeft(64*this.n64),this.Ri=this.inv(this.R);const I=this.negone.shiftRight(this.one);this.nqr=this.two;let g=this.pow(this.nqr,I);for(;!g.equals(this.negone);)this.nqr=this.nqr.add(this.one),g=this.pow(this.nqr,I);for(this.s=this.zero,this.t=this.negone;!this.t.isOdd();)this.s=this.s.add(this.one),this.t=this.t.shiftRight(this.one);this.nqr_to_t=this.pow(this.nqr,this.t),wA(this)}e(A,I){const g=a(A,I);return this.normalize(g)}add(A,I){let g=A.add(I);return g.geq(this.p)&&(g=g.minus(this.p)),g}sub(A,I){return A.geq(I)?A.minus(I):this.p.minus(I.minus(A))}neg(A){return A.isZero()?A:this.p.minus(A)}mul(A,I){return A.times(I).mod(this.p)}mulScalar(A,I){return A.times(a(I)).mod(this.p)}square(A){return A.square().mod(this.p)}eq(A,I){return A.eq(I)}neq(A,I){return A.neq(I)}lt(A,I){const g=A.gt(this.half)?A.minus(this.p):A,C=I.gt(this.half)?I.minus(this.p):I;return g.lt(C)}gt(A,I){const g=A.gt(this.half)?A.minus(this.p):A,C=I.gt(this.half)?I.minus(this.p):I;return g.gt(C)}leq(A,I){const g=A.gt(this.half)?A.minus(this.p):A,C=I.gt(this.half)?I.minus(this.p):I;return g.leq(C)}geq(A,I){const g=A.gt(this.half)?A.minus(this.p):A,C=I.gt(this.half)?I.minus(this.p):I;return g.geq(C)}div(A,I){if(I.isZero())throw new Error("Division by zero");return A.times(I.modInv(this.p)).mod(this.p)}idiv(A,I){if(I.isZero())throw new Error("Division by zero");return A.divide(I)}inv(A){if(A.isZero())throw new Error("Division by zero");return A.modInv(this.p)}mod(A,I){return A.mod(I)}pow(A,I){return A.modPow(I,this.p)}exp(A,I){return A.modPow(I,this.p)}band(A,I){return A.and(I).and(this.mask).mod(this.p)}bor(A,I){return A.or(I).and(this.mask).mod(this.p)}bxor(A,I){return A.xor(I).and(this.mask).mod(this.p)}bnot(A){return A.xor(this.mask).mod(this.p)}shl(A,I){if(I.lt(this.bitLength))return A.shiftLeft(I).and(this.mask).mod(this.p);{const g=this.p.minus(I);return g.lt(this.bitLength)?this.shr(A,g):a.zero}}shr(A,I){if(I.lt(this.bitLength))return A.shiftRight(I);{const g=this.p.minus(I);return g.lt(this.bitLength)?this.shl(A,g):a.zero}}land(A,I){return A.isZero()||I.isZero()?a.zero:a.one}lor(A,I){return A.isZero()&&I.isZero()?a.zero:a.one}lnot(A){return A.isZero()?a.one:a.zero}sqrt_old(A){if(A.equals(this.zero))return this.zero;if(!this.pow(A,this.negone.shiftRight(this.one)).equals(this.one))return null;let I=parseInt(this.s),g=this.nqr_to_t,C=this.pow(A,this.t),t=this.pow(A,this.add(this.t,this.one).shiftRight(this.one));for(;!C.equals(this.one);){let A=this.square(C),Q=1;for(;!A.equals(this.one);)Q++,A=this.square(A);let i=g;for(let A=0;A{g[C]=A(I[C])})),g}return I},unstringifyBigInts:function A(I){if("string"==typeof I&&/^[0-9]+$/.test(I))return BigInt(I);if("string"==typeof I&&/^0x[0-9a-fA-F]+$/.test(I))return BigInt(I);if(Array.isArray(I))return I.map(A);if("object"==typeof I){if(null===I)return null;const g={};return Object.keys(I).forEach((C=>{g[C]=A(I[C])})),g}return I},beBuff2int:function(A){let I=BigInt(0),g=A.length,C=0;const t=new DataView(A.buffer,A.byteOffset,A.byteLength);for(;g>0;)g>=4?(g-=4,I+=BigInt(t.getUint32(g))<=2?(g-=2,I+=BigInt(t.getUint16(g))<0;)Q-4>=0?(Q-=4,t.setUint32(Q,Number(g&BigInt(4294967295))),g>>=BigInt(32)):Q-2>=0?(Q-=2,t.setUint16(Q,Number(g&BigInt(65535))),g>>=BigInt(16)):(Q-=1,t.setUint8(Q,Number(g&BigInt(255))),g>>=BigInt(8));if(g)throw new Error("Number does not fit in this length");return C},leBuff2int:function(A){let I=BigInt(0),g=0;const C=new DataView(A.buffer,A.byteOffset,A.byteLength);for(;g>=BigInt(32)):Q+2<=I?(t.setUint16(Number(Q,g&BigInt(65535)),!0),Q+=2,g>>=BigInt(16)):(t.setUint8(Number(Q,g&BigInt(255)),!0),Q+=1,g>>=BigInt(8));if(g)throw new Error("Number does not fit in this length");return C}});var mA=Object.freeze({__proto__:null,stringifyBigInts:function A(I){if("bigint"==typeof I||void 0!==I.eq)return I.toString(10);if(Array.isArray(I))return I.map(A);if("object"==typeof I){const g={};return Object.keys(I).forEach((C=>{g[C]=A(I[C])})),g}return I},unstringifyBigInts:function A(I){if("string"==typeof I&&/^[0-9]+$/.test(I))return a(I);if("string"==typeof I&&/^0x[0-9a-fA-F]+$/.test(I))return a(I);if(Array.isArray(I))return I.map(A);if("object"==typeof I){const g={};return Object.keys(I).forEach((C=>{g[C]=A(I[C])})),g}return I},beBuff2int:function(A){let I=a.zero;for(let g=0;g=0;){let A=Number(g.and(a("255")));t[C]=A,C--,g=g.shiftRight(8)}if(!g.eq(a.zero))throw new Error("Number does not fit in this length");return t},leBuff2int:function(A){let I=a.zero;for(let g=0;g>=1;return g}LA.bitReverse=function(A,I){return(bA[A>>>24]|bA[A>>>16&255]<<8|bA[A>>>8&255]<<16|bA[255&A]<<24)>>>32-I},LA.log2=function(A){return(0!=(4294901760&A)?(A&=4294901760,16):0)|(0!=(4278255360&A)?(A&=4278255360,8):0)|(0!=(4042322160&A)?(A&=4042322160,4):0)|(0!=(3435973836&A)?(A&=3435973836,2):0)|0!=(2863311530&A)},LA.buffReverseBits=function(A,I){const g=A.byteLength/I,C=LA.log2(g);if(g!=1<g){const C=A.slice(t*I,(t+1)*I);A.set(A.slice(g*I,(g+1)*I),t*I),A.set(C,g*I)}}};let{bitReverse:JA,log2:NA,buffReverseBits:SA,stringifyBigInts:RA,unstringifyBigInts:vA,beBuff2int:YA,beInt2Buff:PA,leBuff2int:qA,leInt2Buff:xA}=LA;var XA=Object.freeze({__proto__:null,bitReverse:JA,log2:NA,buffReverseBits:SA,stringifyBigInts:RA,unstringifyBigInts:vA,beBuff2int:YA,beInt2Buff:PA,leBuff2int:qA,leInt2Buff:xA});const ZA=1<<30;class VA{constructor(A){this.buffers=[],this.byteLength=A;for(let I=0;I0;){const A=i+B>ZA?ZA-i:B,I=new Uint8Array(this.buffers[Q].buffer,this.buffers[Q].byteOffset+i,A);if(A==g)return I.slice();t||(t=g<=ZA?new Uint8Array(g):new VA(g)),t.set(I,g-B),B-=A,Q++,i=0}return t}set(A,I){void 0===I&&(I=0);const g=A.byteLength;if(0==g)return;const C=Math.floor(I/ZA);if(C==Math.floor((I+g-1)/ZA))return A instanceof VA&&1==A.buffers.length?this.buffers[C].set(A.buffers[0],I%ZA):this.buffers[C].set(A,I%ZA);let t=C,Q=I%ZA,i=g;for(;i>0;){const I=Q+i>ZA?ZA-Q:i,C=A.slice(g-i,g-i+I);new Uint8Array(this.buffers[t].buffer,this.buffers[t].byteOffset+Q,I).set(C),i-=I,t++,Q=0}}}function KA(A,I,g,C){return async function(t){const Q=Math.floor(t.byteLength/g);if(Q*g!==t.byteLength)throw new Error("Invalid buffer size");const i=Math.floor(Q/A.concurrency),B=[];for(let E=0;E=0;A--)this.w[A]=this.square(this.w[A+1]);if(!this.eq(this.w[0],this.one))throw new Error("Error calculating roots of unity");this.batchToMontgomery=KA(A,I+"_batchToMontgomery",this.n8,this.n8),this.batchFromMontgomery=KA(A,I+"_batchFromMontgomery",this.n8,this.n8)}op2(A,I,g){return this.tm.setBuff(this.pOp1,I),this.tm.setBuff(this.pOp2,g),this.tm.instance.exports[this.prefix+A](this.pOp1,this.pOp2,this.pOp3),this.tm.getBuff(this.pOp3,this.n8)}op2Bool(A,I,g){return this.tm.setBuff(this.pOp1,I),this.tm.setBuff(this.pOp2,g),!!this.tm.instance.exports[this.prefix+A](this.pOp1,this.pOp2)}op1(A,I){return this.tm.setBuff(this.pOp1,I),this.tm.instance.exports[this.prefix+A](this.pOp1,this.pOp3),this.tm.getBuff(this.pOp3,this.n8)}op1Bool(A,I){return this.tm.setBuff(this.pOp1,I),!!this.tm.instance.exports[this.prefix+A](this.pOp1,this.pOp3)}add(A,I){return this.op2("_add",A,I)}eq(A,I){return this.op2Bool("_eq",A,I)}isZero(A){return this.op1Bool("_isZero",A)}sub(A,I){return this.op2("_sub",A,I)}neg(A){return this.op1("_neg",A)}inv(A){return this.op1("_inverse",A)}toMontgomery(A){return this.op1("_toMontgomery",A)}fromMontgomery(A){return this.op1("_fromMontgomery",A)}mul(A,I){return this.op2("_mul",A,I)}div(A,I){return this.tm.setBuff(this.pOp1,A),this.tm.setBuff(this.pOp2,I),this.tm.instance.exports[this.prefix+"_inverse"](this.pOp2,this.pOp2),this.tm.instance.exports[this.prefix+"_mul"](this.pOp1,this.pOp2,this.pOp3),this.tm.getBuff(this.pOp3,this.n8)}square(A){return this.op1("_square",A)}isSquare(A){return this.op1Bool("_isSquare",A)}sqrt(A){return this.op1("_sqrt",A)}exp(A,I){return I instanceof Uint8Array||(I=G(m(I))),this.tm.setBuff(this.pOp1,A),this.tm.setBuff(this.pOp2,I),this.tm.instance.exports[this.prefix+"_exp"](this.pOp1,this.pOp2,I.byteLength,this.pOp3),this.tm.getBuff(this.pOp3,this.n8)}isNegative(A){return this.op1Bool("_isNegative",A)}e(A,I){if(A instanceof Uint8Array)return A;let g=m(A,I);k(g)?(g=K(g),CA(g,this.p)&&(g=$(g,this.p)),g=V(this.p,g)):CA(g,this.p)&&(g=$(g,this.p));const C=xA(g,this.n8);return this.toMontgomery(C)}toString(A,I){const g=this.fromMontgomery(A),C=F(g,0);return p(C,I)}fromRng(A){let I;const g=new Uint8Array(this.n8);do{I=H;for(let g=0;gC.buffer.byteLength){const t=C.buffer.byteLength/65536;let Q=Math.floor((g[0]+A)/65536)+1;Q>I&&(Q=I),C.grow(Q-t)}return t}function i(A){const I=Q(A.byteLength);return E(I,A),I}function B(A,I){const g=new Uint8Array(C.buffer);return new Uint8Array(g.buffer,g.byteOffset+A,I)}function E(A,I){new Uint8Array(C.buffer).set(new Uint8Array(I),A)}function e(A){if("INIT"==A[0].cmd)return t(A[0]);const I={vars:[],out:[]},e=new Uint32Array(C.buffer,0,1)[0];for(let C=0;C{this.reject=I,this.resolve=A}))}}function II(A){for(var I=globalThis.atob(A),g=I.length,C=new Uint8Array(g),t=0;t0;A++)if(0==this.working[A]){const I=this.actionQueue.shift();this.postAction(A,I.data,I.transfers,I.deferred)}}queueAction(A,I){const g=new AI;if(this.singleThread){const I=this.taskManager(A);g.resolve(I)}else this.actionQueue.push({data:A,transfers:I,deferred:g}),this.processWorks();return g.promise}resetMemory(){this.u32[0]=this.initalPFree}allocBuff(A){const I=this.alloc(A.byteLength);return this.setBuff(I,A),I}getBuff(A,I){return this.u8.slice(A,A+I)}setBuff(A,I){this.u8.set(new Uint8Array(I),A)}alloc(A){for(;3&this.u32[0];)this.u32[0]++;const I=this.u32[0];return this.u32[0]+=A,I}async terminate(){for(let A=0;AsetTimeout(I,A))))}}function QI(A,I){const g=A[I],C=A.Fr,t=A.tm;A[I].batchApplyKey=async function(A,Q,i,B,E){let e,n,a,o,r;if(B=B||"affine",E=E||"affine","G1"==I)"jacobian"==B?(a=3*g.F.n8,e="g1m_batchApplyKey"):(a=2*g.F.n8,e="g1m_batchApplyKeyMixed"),o=3*g.F.n8,"jacobian"==E?r=3*g.F.n8:(n="g1m_batchToAffine",r=2*g.F.n8);else if("G2"==I)"jacobian"==B?(a=3*g.F.n8,e="g2m_batchApplyKey"):(a=2*g.F.n8,e="g2m_batchApplyKeyMixed"),o=3*g.F.n8,"jacobian"==E?r=3*g.F.n8:(n="g2m_batchToAffine",r=2*g.F.n8);else{if("Fr"!=I)throw new Error("Invalid group: "+I);e="frm_batchApplyKey",a=g.n8,o=g.n8,r=g.n8}const h=Math.floor(A.byteLength/a),s=Math.floor(h/t.concurrency),w=[];i=C.e(i);let f=C.e(Q);for(let I=0;I=0;A--){if(!g.isZero(s))for(let A=0;Ae&&(s=e),s<1024&&(s=1024);const w=[];for(let I=0;I(B&&B.debug(`Multiexp end: ${E}: ${I}/${a}`),A))))}const f=await Promise.all(w);let D=g.zero;for(let A=f.length-1;A>=0;A--)D=g.add(D,f[A]);return D}g.multiExp=async function(A,I,g,C){return await Q(A,I,"jacobian",g,C)},g.multiExpAffine=async function(A,I,g,C){return await Q(A,I,"affine",g,C)}}function EI(A,I){const g=A[I],C=A.Fr,t=g.tm;async function Q(B,E,e,n,a,o){e=e||"affine",n=n||"affine";let r,h,s,w,f,D,c,y;"G1"==I?("affine"==e?(r=2*g.F.n8,w="g1m_batchToJacobian"):r=3*g.F.n8,h=3*g.F.n8,E&&(y="g1m_fftFinal"),c="g1m_fftJoin",D="g1m_fftMix","affine"==n?(s=2*g.F.n8,f="g1m_batchToAffine"):s=3*g.F.n8):"G2"==I?("affine"==e?(r=2*g.F.n8,w="g2m_batchToJacobian"):r=3*g.F.n8,h=3*g.F.n8,E&&(y="g2m_fftFinal"),c="g2m_fftJoin",D="g2m_fftMix","affine"==n?(s=2*g.F.n8,f="g2m_batchToAffine"):s=3*g.F.n8):"Fr"==I&&(r=g.n8,h=g.n8,s=g.n8,E&&(y="frm_fftFinal"),D="frm_fftMix",c="frm_fftJoin");let u=!1;Array.isArray(B)?(B=A.array2buffer(B,r),u=!0):B=B.slice(0,B.byteLength);const l=B.byteLength/r,F=NA(l);if(1<1<<28?new VA(2*a[0].byteLength):new Uint8Array(2*a[0].byteLength);return o.set(a[0]),o.set(a[1],a[0].byteLength),o}(B,e,n,a,o):await async function(A,I,g,t,B){let E,e;E=A.slice(0,A.byteLength/2),e=A.slice(A.byteLength/2,A.byteLength);const n=[];[E,e]=await i(E,e,"fftJoinExt",C.one,C.shift,I,"jacobian",t,B),n.push(Q(E,!1,"jacobian",g,t,B)),n.push(Q(e,!1,"jacobian",g,t,B));const a=await Promise.all(n);let o;o=a[0].byteLength>1<<28?new VA(2*a[0].byteLength):new Uint8Array(2*a[0].byteLength);return o.set(a[0]),o.set(a[1],a[0].byteLength),o}(B,e,n,a,o),u?A.buffer2array(I,s):I}let M,p,G;E&&(M=C.inv(C.e(l))),SA(B,r);let H=Math.min(16384,l),d=l/H;for(;d=16;)d*=2,H/=2;const U=NA(H),m=[];for(let A=0;A(a&&a.debug(`${o}: fft ${F} mix end: ${A}/${d}`),I))))}G=await Promise.all(m);for(let A=0;A(a&&a.debug(`${o}: fft ${F} join ${A}/${F} ${i+1}/${I} ${B}/${g/2}`),C))))}const i=await Promise.all(Q);for(let A=0;A0;I--)p.set(G[I],A),A+=H*s,delete G[I];p.set(G[0].slice(0,(H-1)*s),A),delete G[0]}else for(let A=0;A65536&&(y=65536);const u=[];for(let I=0;I(a&&a.debug(`${o}: fftJoinExt End: ${I}/${c}`),A))))}const l=await Promise.all(u);let F,M;c*w>1<<28?(F=new VA(c*w),M=new VA(c*w)):(F=new Uint8Array(c*w),M=new Uint8Array(c*w));let p=0;for(let A=0;AC.s+1)throw E&&E.error("lagrangeEvaluations input too big"),new Error("lagrangeEvaluations input too big");let r=A.slice(0,A.byteLength/2),h=A.slice(A.byteLength/2,A.byteLength);const s=C.exp(C.shift,a/2),w=C.inv(C.sub(C.one,s));[r,h]=await i(r,h,"prepareLagrangeEvaluation",w,C.shiftInv,t,"jacobian",E,e+" prep");const f=[];let D;return f.push(Q(r,!0,"jacobian",B,E,e+" t0")),f.push(Q(h,!0,"jacobian",B,E,e+" t1")),[r,h]=await Promise.all(f),D=r.byteLength>1<<28?new VA(2*r.byteLength):new Uint8Array(2*r.byteLength),D.set(r),D.set(h,r.byteLength),D},g.fftMix=async function(A){const Q=3*g.F.n8;let i,B;if("G1"==I)i="g1m_fftMix",B="g1m_fftJoin";else if("G2"==I)i="g2m_fftMix",B="g2m_fftJoin";else{if("Fr"!=I)throw new Error("Invalid group");i="frm_fftMix",B="frm_fftJoin"}const E=Math.floor(A.byteLength/Q),e=NA(E);let n=1<=0;A--)r.set(o[A][0],h),h+=o[A][0].byteLength;return r}}async function eI(A){const I=await async function(A,I){const g=new tI;g.memory=new WebAssembly.Memory({initial:25}),g.u8=new Uint8Array(g.memory.buffer),g.u32=new Uint32Array(g.memory.buffer);const C=await WebAssembly.compile(II(A.code));if(g.instance=await WebAssembly.instantiate(C,{env:{memory:g.memory}}),g.singleThread=I,g.initalPFree=g.u32[0],g.pq=A.pq,g.pr=A.pr,g.pG1gen=A.pG1gen,g.pG1zero=A.pG1zero,g.pG2gen=A.pG2gen,g.pG2zero=A.pG2zero,g.pOneT=A.pOneT,I)g.code=II(A.code),g.taskManager=TA(),await g.taskManager([{cmd:"INIT",init:25,code:g.code.slice()}]),g.concurrency=1;else{let I;g.workers=[],g.pendingDeferreds=[],g.working=[],I="object"==typeof navigator&&navigator.hardwareConcurrency?navigator.hardwareConcurrency:_A.cpus().length,I>64&&(I=64),g.concurrency=I;for(let A=0;A{I.pendingLoads.push({page:A,resolve:g,reject:C})}));return I.__statusPage("After Load request: ",A),g}__statusPage(A,I){const g=[],C=this;if(!C.logHistory)return;g.push("=="+A+" "+I);let t="";for(let A=0;A "+I.history[A][g][C])}_triggerLoad(){const A=this;if(A.reading)return;if(0==A.pendingLoads.length)return;const I=Object.keys(A.pages),g=[];for(let C=0;C0&&(void 0!==A.pages[A.pendingLoads[0].page]||C>0||g.length>0);){const I=A.pendingLoads.shift();if(void 0!==A.pages[I.page]){A.pages[I.page].pendingOps++;const C=g.indexOf(I.page);C>=0&&g.splice(C,1),A.pages[I.page].loading?A.pages[I.page].loading.push(I):I.resolve(),A.__statusPage("After Load (cached): ",I.page)}else{if(C)C--;else{const I=g.shift();A.__statusPage("Before Unload: ",I),A.avBuffs.unshift(A.pages[I]),delete A.pages[I],A.__statusPage("After Unload: ",I)}I.page>=A.totalPages?(A.pages[I.page]=Q(),I.resolve(),A.__statusPage("After Load (new): ",I.page)):(A.reading=!0,A.pages[I.page]=Q(),A.pages[I.page].loading=[I],t.push(A.fd.read(A.pages[I.page].buff,0,A.pageSize,I.page*A.pageSize).then((g=>{A.pages[I.page].size=g.bytesRead;const C=A.pages[I.page].loading;delete A.pages[I.page].loading;for(let A=0;A{I.reject(A)}))),A.__statusPage("After Load (loading): ",I.page))}}function Q(){if(A.avBuffs.length>0){const I=A.avBuffs.shift();return I.dirty=!1,I.pendingOps=1,I.size=0,I}return{dirty:!1,buff:new Uint8Array(A.pageSize),pendingOps:1,size:0}}Promise.all(t).then((()=>{A.reading=!1,A.pendingLoads.length>0&&setImmediate(A._triggerLoad.bind(A)),A._tryClose()}))}_triggerWrite(){const A=this;if(A.writing)return;const I=Object.keys(A.pages),g=[];for(let C=0;C{t.writing=!1}),(I=>{console.log("ERROR Writing: "+I),A.error=I,A._tryClose()}))))}A.writing&&Promise.all(g).then((()=>{A.writing=!1,setImmediate(A._triggerWrite.bind(A)),A._tryClose(),A.pendingLoads.length>0&&setImmediate(A._triggerLoad.bind(A))}))}_getDirtyPage(){for(let A in this.pages)if(this.pages[A].dirty)return A;return-1}async write(A,I){if(0==A.byteLength)return;const g=this;if(void 0===I&&(I=g.pos),g.pos=I+A.byteLength,g.totalSize0;){await Q[i-C];const I=B+E>g.pageSize?g.pageSize-B:E,t=A.slice(A.byteLength-E,A.byteLength-E+I);new Uint8Array(g.pages[i].buff.buffer,B,I).set(t),g.pages[i].dirty=!0,g.pages[i].pendingOps--,g.pages[i].size=Math.max(B+I,g.pages[i].size),i>=g.totalPages&&(g.totalPages=i+1),E-=I,i++,B=0,g.writing||setImmediate(g._triggerWrite.bind(g))}}async read(A,I){let g=new Uint8Array(A);return await this.readToBuffer(g,0,A,I),g}async readToBuffer(A,I,g,C){if(0==g)return;const t=this;if(g>t.pageSize*t.maxPagesLoaded*.8){const A=Math.floor(1.1*g);this.maxPagesLoaded=Math.floor(A/t.pageSize)+1}if(void 0===C&&(C=t.pos),t.pos=C+g,t.pendingClose)throw new Error("Reading a closing file");const Q=Math.floor(C/t.pageSize),i=Math.floor((C+g-1)/t.pageSize),B=[];for(let A=Q;A<=i;A++)B.push(t._loadPage(A));t._triggerLoad();let E=Q,e=C%t.pageSize,n=C+g>t.totalSize?g-(C+g-t.totalSize):g;for(;n>0;){await B[E-Q],t.__statusPage("After Await (read): ",E);const C=e+n>t.pageSize?t.pageSize-e:n,i=new Uint8Array(t.pages[E].buff.buffer,t.pages[E].buff.byteOffset+e,C);A.set(i,I+g-n),t.pages[E].pendingOps--,t.__statusPage("After Op done: ",E),n-=C,E++,e=0,t.pendingLoads.length>0&&setImmediate(t._triggerLoad.bind(t))}this.pos=C+g}_tryClose(){const A=this;if(!A.pendingClose)return;A.error&&A.pendingCloseReject(A.error);A._getDirtyPage()>=0||A.writing||A.reading||A.pendingLoads.length>0||A.pendingClose()}close(){const A=this;if(A.pendingClose)throw new Error("Closing the file twice");return new Promise(((I,g)=>{A.pendingClose=I,A.pendingCloseReject=g,A._tryClose()})).then((()=>{A.fd.close()}),(I=>{throw A.fd.close(),I}))}async discard(){await this.close(),await wI.promises.unlink(this.fileName)}async writeULE32(A,I){const g=new Uint8Array(4);new DataView(g.buffer).setUint32(0,A,!0),await this.write(g,I)}async writeUBE32(A,I){const g=new Uint8Array(4);new DataView(g.buffer).setUint32(0,A,!1),await this.write(g,I)}async writeULE64(A,I){const g=new Uint8Array(8),C=new DataView(g.buffer);C.setUint32(0,4294967295&A,!0),C.setUint32(4,Math.floor(A/4294967296),!0),await this.write(g,I)}async readULE32(A){const I=await this.read(4,A);return new Uint32Array(I.buffer)[0]}async readUBE32(A){const I=await this.read(4,A);return new DataView(I.buffer).getUint32(0,!1)}async readULE64(A){const I=await this.read(8,A),g=new Uint32Array(I.buffer);return 4294967296*g[1]+g[0]}}const cI=new Uint8Array(4),yI=new DataView(cI.buffer),uI=new Uint8Array(8),lI=new DataView(uI.buffer);class FI{constructor(){this.pageSize=16384}_resizeIfNeeded(A){if(A>this.allocSize){const I=Math.max(this.allocSize+(1<<20),Math.floor(1.1*this.allocSize),A),g=new Uint8Array(I);g.set(this.o.data),this.o.data=g,this.allocSize=I}}async write(A,I){if(void 0===I&&(I=this.pos),this.readOnly)throw new Error("Writing a read only file");this._resizeIfNeeded(I+A.byteLength),this.o.data.set(A.slice(),I),I+A.byteLength>this.totalSize&&(this.totalSize=I+A.byteLength),this.pos=I+A.byteLength}async readToBuffer(A,I,g,C){if(void 0===C&&(C=this.pos),this.readOnly&&C+g>this.totalSize)throw new Error("Reading out of bounds");this._resizeIfNeeded(C+g);const t=new Uint8Array(this.o.data.buffer,this.o.data.byteOffset+C,g);A.set(t,I),this.pos=C+g}async read(A,I){const g=new Uint8Array(A);return await this.readToBuffer(g,0,A,I),g}close(){this.o.data.byteLength!=this.totalSize&&(this.o.data=this.o.data.slice(0,this.totalSize))}async discard(){}async writeULE32(A,I){yI.setUint32(0,A,!0),await this.write(cI,I)}async writeUBE32(A,I){yI.setUint32(0,A,!1),await this.write(cI,I)}async writeULE64(A,I){lI.setUint32(0,4294967295&A,!0),lI.setUint32(4,Math.floor(A/4294967296),!0),await this.write(uI,I)}async readULE32(A){const I=await this.read(4,A);return new Uint32Array(I.buffer)[0]}async readUBE32(A){const I=await this.read(4,A);return new DataView(I.buffer).getUint32(0,!1)}async readULE64(A){const I=await this.read(8,A),g=new Uint32Array(I.buffer);return 4294967296*g[1]+g[0]}}const MI=1<<22;const pI=new Uint8Array(4),GI=new DataView(pI.buffer),HI=new Uint8Array(8),dI=new DataView(HI.buffer);class UI{constructor(){this.pageSize=16384}_resizeIfNeeded(A){if(A<=this.totalSize)return;if(this.readOnly)throw new Error("Reading out of file bounds");const I=Math.floor((A-1)/MI)+1;for(let g=Math.max(this.o.data.length-1,0);g0;){const I=t+Q>MI?MI-t:Q,i=A.slice(A.byteLength-Q,A.byteLength-Q+I);new Uint8Array(g.o.data[C].buffer,t,I).set(i),Q-=I,C++,t=0}this.pos=I+A.byteLength}async readToBuffer(A,I,g,C){const t=this;if(void 0===C&&(C=t.pos),this.readOnly&&C+g>this.totalSize)throw new Error("Reading out of bounds");this._resizeIfNeeded(C+g);let Q=Math.floor(C/MI),i=C%MI,B=g;for(;B>0;){const C=i+B>MI?MI-i:B,E=new Uint8Array(t.o.data[Q].buffer,i,C);A.set(E,I+g-B),B-=C,Q++,i=0}this.pos=C+g}async read(A,I){const g=new Uint8Array(A);return await this.readToBuffer(g,0,A,I),g}close(){}async discard(){}async writeULE32(A,I){GI.setUint32(0,A,!0),await this.write(pI,I)}async writeUBE32(A,I){GI.setUint32(0,A,!1),await this.write(pI,I)}async writeULE64(A,I){dI.setUint32(0,4294967295&A,!0),dI.setUint32(4,Math.floor(A/4294967296),!0),await this.write(HI,I)}async readULE32(A){const I=await this.read(4,A);return new Uint32Array(I.buffer)[0]}async readUBE32(A){const I=await this.read(4,A);return new DataView(I.buffer).getUint32(0,!1)}async readULE64(A){const I=await this.read(8,A),g=new Uint32Array(I.buffer);return 4294967296*g[1]+g[0]}}async function mI(A,I,g){if("string"==typeof A&&(A={type:"file",fileName:A,cacheSize:I||65536,pageSize:g||8192}),"file"==A.type)return await fI(A.fileName,"w+",A.cacheSize,A.pageSize);if("mem"==A.type)return function(A){const I=A.initialSize||1<<20,g=new FI;return g.o=A,g.o.data=new Uint8Array(I),g.allocSize=I,g.totalSize=0,g.readOnly=!1,g.pos=0,g}(A);if("bigMem"==A.type)return function(A){const I=A.initialSize||0,g=new UI;g.o=A;const C=I?Math.floor((I-1)/MI)+1:0;g.o.data=[];for(let A=0;Ag)throw new Error("Version not supported");const E=await Q.readULE32();let e=[];for(let A=0;A1)throw new Error(A.fileName+": Section Duplicated "+g);A.pos=I[g][0].p,A.readingSection=I[g][0]}async function RI(A,I){if(void 0===A.readingSection)throw new Error("Not reading a section");if(!I&&A.pos-A.readingSection.p!=A.readingSection.size)throw new Error("Invalid section size reading");delete A.readingSection}async function vI(A,I,g,C){const t=new Uint8Array(g);hI.toRprLE(t,0,I,g),await A.write(t,C)}async function YI(A,I,g){const C=await A.read(I,g);return hI.fromRprLE(C,0,I)}async function PI(A,I,g,C,t){void 0===t&&(t=I[C][0].size);const Q=A.pageSize;await SI(A,I,C),await JI(g,C);for(let I=0;II[g][0].size)throw new Error("Reading out of the range of the section");let Q;return Q=t<1<<30?new Uint8Array(t):new VA(t),await A.readToBuffer(Q,0,t,I[g][0].p+C),Q}async function xI(A,I,g,C,t){const Q=16*A.pageSize;if(await SI(A,I,t),await SI(g,C,t),I[t][0].size!=C[t][0].size)return!1;const i=I[t][0].size;for(let I=0;I=0)I=await nI();else{if(!(["BLS12381"].indexOf(g)>=0))throw new Error(`Curve not supported: ${A}`);I=await aI()}return I}var OI=function A(I,g){if(!I){var C=new WI(g);throw Error.captureStackTrace&&Error.captureStackTrace(C,A),C}};class WI extends Error{}WI.prototype.name="AssertionError";var jI=zI;function zI(A){if(!zI.supported)return null;var I,g=A&&A.imports,C=(I="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","function"==typeof atob?new Uint8Array(atob(I).split("").map(TI)):function(A){throw new Error('Could not dynamically require "'+A+'". Please configure the dynamicRequireTargets option of @rollup/plugin-commonjs appropriately for this require call to behave properly.')}("buffer").Buffer.from(I,"base64")),t=null,Q={buffer:C,memory:null,exports:null,realloc:function(A){Q.exports.memory.grow(Math.max(0,Math.ceil(Math.abs(A-Q.memory.length)/65536))),Q.memory=new Uint8Array(Q.exports.memory.buffer)},onload:i};return i((function(){})),Q;function i(I){if(Q.exports)return I();if(t)t.then(I.bind(null,null)).catch(I);else{try{if(A&&A.async)throw new Error("async");B({instance:new WebAssembly.Instance(new WebAssembly.Module(C),g)})}catch(A){t=WebAssembly.instantiate(C,g).then(B)}i(I)}}function B(A){Q.exports=A.instance.exports,Q.memory=Q.exports.memory&&Q.exports.memory.buffer&&new Uint8Array(Q.exports.memory.buffer)}}function TI(A){return A.charCodeAt(0)}zI.supported="undefined"!=typeof WebAssembly;var _I=n((function(A){var I=jI(),g=64,C=[];A.exports=n;var t=A.exports.BYTES_MIN=16,Q=A.exports.BYTES_MAX=64,i=(A.exports.BYTES=32,A.exports.KEYBYTES_MIN=16),B=A.exports.KEYBYTES_MAX=64,E=(A.exports.KEYBYTES=32,A.exports.SALTBYTES=16),e=A.exports.PERSONALBYTES=16;function n(A,a,o,r,h){if(!(this instanceof n))return new n(A,a,o,r,h);if(!I||!I.exports)throw new Error("WASM not loaded. Wait for Blake2b.ready(cb)");A||(A=32),!0!==h&&(OI(A>=t,"digestLength must be at least "+t+", was given "+A),OI(A<=Q,"digestLength must be at most "+Q+", was given "+A),null!=a&&(OI(a instanceof Uint8Array,"key must be Uint8Array or Buffer"),OI(a.length>=i,"key must be at least "+i+", was given "+a.length),OI(a.length<=B,"key must be at least "+B+", was given "+a.length)),null!=o&&(OI(o instanceof Uint8Array,"salt must be Uint8Array or Buffer"),OI(o.length===E,"salt must be exactly "+E+", was given "+o.length)),null!=r&&(OI(r instanceof Uint8Array,"personal must be Uint8Array or Buffer"),OI(r.length===e,"personal must be exactly "+e+", was given "+r.length))),C.length||(C.push(g),g+=216),this.digestLength=A,this.finalized=!1,this.pointer=C.pop(),I.memory.fill(0,0,64),I.memory[0]=this.digestLength,I.memory[1]=a?a.length:0,I.memory[2]=1,I.memory[3]=1,o&&I.memory.set(o,32),r&&I.memory.set(r,48),this.pointer+216>I.memory.length&&I.realloc(this.pointer+216),I.exports.blake2b_init(this.pointer,this.digestLength),a&&(this.update(a),I.memory.fill(0,g,g+a.length),I.memory[this.pointer+200]=128)}function a(){}function o(A){return A<16?"0"+A.toString(16):A.toString(16)}n.prototype.update=function(A){return OI(!1===this.finalized,"Hash instance finalized"),OI(A instanceof Uint8Array,"input must be Uint8Array or Buffer"),g+A.length>I.memory.length&&I.realloc(g+A.length),I.memory.set(A,g),I.exports.blake2b_update(this.pointer,g,g+A.length),this},n.prototype.digest=function(A){if(OI(!1===this.finalized,"Hash instance finalized"),this.finalized=!0,C.push(this.pointer),I.exports.blake2b_final(this.pointer),!A||"binary"===A)return I.memory.slice(this.pointer+128,this.pointer+128+this.digestLength);if("hex"===A)return function(A,I,g){for(var C="",t=0;t=this.digestLength,"input must be Uint8Array or Buffer");for(var g=0;g>=1;return g}function Ig(A){return(0!=(4294901760&A)?(A&=4294901760,16):0)|(0!=(4278255360&A)?(A&=4278255360,8):0)|(0!=(4042322160&A)?(A&=4042322160,4):0)|(0!=(3435973836&A)?(A&=3435973836,2):0)|0!=(2863311530&A)}function gg(A,I){const g=new DataView(A.buffer,A.byteOffset,A.byteLength);let C="";for(let A=0;A<4;A++){A>0&&(C+="\n"),C+="\t\t";for(let I=0;I<4;I++)I>0&&(C+=" "),C+=g.getUint32(16*A+4*I).toString(16).padStart(8,"0")}return I&&(C=I+"\n"+C),C}function Cg(A,I){if(A.byteLength!=I.byteLength)return!1;for(var g=new Int8Array(A),C=new Int8Array(I),t=0;t!=A.byteLength;t++)if(g[t]!=C[t])return!1;return!0}function tg(A){const I=A.getPartialHash(),g=_I(64);return g.setPartialHash(I),g}async function Qg(A,I,g,C,t){if(A.G1.isZero(I))return!1;if(A.G1.isZero(g))return!1;if(A.G2.isZero(C))return!1;if(A.G2.isZero(t))return!1;return await A.pairingEq(I,t,A.G1.neg(g),C)}async function ig(A){for(;!A;)A=await window.prompt("Enter a random text. (Entropy): ","");const I=_I(64);I.update(cA.randomBytes(64));const g=new TextEncoder;I.update(g.encode(A));const C=Buffer.from(I.digest()),t=[];for(let A=0;A<8;A++)t[A]=C.readUInt32BE(4*A);return new DA(t)}function Bg(A,I){let g,C;I<32?(g=1<>>0,C=1):(g=4294967296,C=1<>>0);let t=A;for(let A=0;A0){const I=new Uint8Array(C);await A.writeULE32(I.byteLength),await A.write(I)}else await A.writeULE32(0)}async function cg(A,I,g){await JI(A,10),await A.write(g.csHash),await A.writeULE32(g.contributions.length);for(let C=0;C /\\../\\",r=52,h={32:{offset:0},64:{offset:[0,0,0,0]},128:{offset:[0,0,0,0,0,0,0,0]},256:{offset:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},512:{offset:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},1024:{offset:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]}};for(A=0;A<256;A++)E[A]=(A>>4&15).toString(16)+(15&A).toString(16);function s(A,I){var g,C,t,Q=[0],i="";for(C=0;C0;)Q.push(g%I),g=g/I|0}for(C=Q.length-1;C>=0;--C)i+="0123456789abcdefghijklmnopqrstuvwxyz"[Q[C]];return i}function w(A,I){return{bits:I,value:A,dec:function(){return s(A,10)},hex:function(){return A},str:function(){return s(A,36)}}}function f(A,I){return{bits:I,value:A,dec:function(){return A.toString()},hex:function(){return E[A>>>24]+E[A>>>16&255]+E[A>>>8&255]+E[255&A]},str:function(){return A.toString(36)}}}function D(A,I){return{bits:I,value:A,dec:function(){return A.toString()},hex:function(){return("0000000000000000"+A.toString(16)).substr(-13)},str:function(){return A.toString(36)}}}function c(A,E){var e="object"==typeof A?JSON.stringify(A):A;switch(E||r){case 32:return I(e);case 64:return C(e);case 128:return t(e);case 256:return Q(e);case 512:return i(e);case 1024:return B(e);default:return g(e)}}function y(A){if("1a"===A)n=A,I=a?p:F,g=a?U:H,C=a?k:L,t=a?R:N,Q=a?q:Y,i=a?V:X,B=a?j:O;else{if("1"!==A)throw new Error("Supported FNV versions: 1, 1a");n=A,I=a?G:M,g=a?m:d,C=a?J:b,t=a?v:S,Q=a?x:P,i=a?K:Z,B=a?z:W}}function u(A){A?(a=!0,I="1a"==n?p:G,g="1a"==n?U:m,C="1a"==n?k:J,t="1a"==n?R:v,Q="1a"==n?q:x,i="1a"==n?V:K,B="1a"==n?j:z):(a=!1,I="1a"==n?F:M,g="1a"==n?H:d,C="1a"==n?L:b,t="1a"==n?N:S,Q="1a"==n?Y:P,i="1a"==n?X:Z,B="1a"==n?O:W)}function l(A){var I,g,C=n;for(var t in(A=A||0===A?A:o)===o&&y("1"),h){for(h[t].offset=[],g=0;g>>16)&65535),i+=(Q^=A.charCodeAt(I++))<<8,Q=65535&(t=403*Q),i=403*(B=i+(t>>>16)&65535),i+=(Q^=A.charCodeAt(I++))<<8,Q=65535&(t=403*Q),i=403*(B=i+(t>>>16)&65535),B=(i+=(Q^=A.charCodeAt(I++))<<8)+((t=403*Q)>>>16)&65535,Q=65535&t;for(;I>>16)&65535,Q=65535&t;return f((B<<16>>>0)+Q,32)}function M(A){var I,g=A.length-3,C=h[32].offset,t=0,Q=0|C[1],i=0,B=0|C[0];for(I=0;I>>16)&65535),i+=(Q^=A.charCodeAt(I++))<<8,Q=65535&(t=403*Q),i=403*(B=i+(t>>>16)&65535),i+=(Q^=A.charCodeAt(I++))<<8,Q=65535&(t=403*Q),i=403*(B=i+(t>>>16)&65535),B=(i+=(Q^=A.charCodeAt(I++))<<8)+((t=403*Q)>>>16)&65535,Q=65535&t,Q^=A.charCodeAt(I++);for(;I>>16)&65535,Q=65535&t,Q^=A.charCodeAt(I++);return f((B<<16>>>0)+Q,32)}function p(A){var I,g,C=A.length,t=h[32].offset,Q=0,i=0|t[1],B=0,E=0|t[0];for(g=0;g>6|192)<<8)+((Q=403*i)>>>16)&65535,i=65535&Q,i^=63&I|128):55296==(64512&I)&&g+1>18|240)<<8,i=65535&(Q=403*i),B=403*(E=B+(Q>>>16)&65535),B+=(i^=I>>12&63|128)<<8,i=65535&(Q=403*i),B=403*(E=B+(Q>>>16)&65535),E=(B+=(i^=I>>6&63|128)<<8)+((Q=403*i)>>>16)&65535,i=65535&Q,i^=63&I|128):(B=403*E,B+=(i^=I>>12|224)<<8,i=65535&(Q=403*i),B=403*(E=B+(Q>>>16)&65535),E=(B+=(i^=I>>6&63|128)<<8)+((Q=403*i)>>>16)&65535,i=65535&Q,i^=63&I|128),B=403*E,E=(B+=i<<8)+((Q=403*i)>>>16)&65535,i=65535&Q;return f((E<<16>>>0)+i,32)}function G(A){var I,g,C=A.length,t=h[32].offset,Q=0,i=0|t[1],B=0,E=0|t[0];for(g=0;g>>16)&65535,i=65535&Q,(I=A.charCodeAt(g))<128?i^=I:I<2048?(B=403*E,E=(B+=(i^=I>>6|192)<<8)+((Q=403*i)>>>16)&65535,i=65535&Q,i^=63&I|128):55296==(64512&I)&&g+1>18|240)<<8,i=65535&(Q=403*i),B=403*(E=B+(Q>>>16)&65535),B+=(i^=I>>12&63|128)<<8,i=65535&(Q=403*i),B=403*(E=B+(Q>>>16)&65535),E=(B+=(i^=I>>6&63|128)<<8)+((Q=403*i)>>>16)&65535,i=65535&Q,i^=63&I|128):(B=403*E,B+=(i^=I>>12|224)<<8,i=65535&(Q=403*i),B=403*(E=B+(Q>>>16)&65535),E=(B+=(i^=I>>6&63|128)<<8)+((Q=403*i)>>>16)&65535,i=65535&Q,i^=63&I|128);return f((E<<16>>>0)+i,32)}function H(A){var I,g=A.length-3,C=h[64].offset,t=0,Q=0|C[3],i=0,B=0|C[2],E=0,e=0|C[1],n=0,a=0|C[0];for(I=0;I>>16)>>>16)>>>16)&65535,i=435*(B=65535&i),E=435*(e=65535&E),n=435*a,E+=(Q^=A.charCodeAt(I++))<<8,Q=65535&(t=435*Q),a=(n+=B<<8)+((E+=(i+=t>>>16)>>>16)>>>16)&65535,i=435*(B=65535&i),E=435*(e=65535&E),n=435*a,E+=(Q^=A.charCodeAt(I++))<<8,Q=65535&(t=435*Q),a=(n+=B<<8)+((E+=(i+=t>>>16)>>>16)>>>16)&65535,i=435*(B=65535&i),E=435*(e=65535&E),n=435*a,E+=(Q^=A.charCodeAt(I++))<<8,n+=B<<8,Q=65535&(t=435*Q),B=65535&(i+=t>>>16),a=n+((E+=i>>>16)>>>16)&65535,e=65535&E;for(;I>>16),a=n+((E+=i>>>16)>>>16)&65535,e=65535&E;return D(281474976710656*(15&a)+4294967296*e+65536*B+(Q^a>>4),52)}function d(A){var I,g=A.length-3,C=h[64].offset,t=0,Q=0|C[3],i=0,B=0|C[2],E=0,e=0|C[1],n=0,a=0|C[0];for(I=0;I>>16)>>>16)>>>16)&65535,i=435*(B=65535&i),E=435*(e=65535&E),n=435*a,E+=(Q^=A.charCodeAt(I++))<<8,Q=65535&(t=435*Q),a=(n+=B<<8)+((E+=(i+=t>>>16)>>>16)>>>16)&65535,i=435*(B=65535&i),E=435*(e=65535&E),n=435*a,E+=(Q^=A.charCodeAt(I++))<<8,Q=65535&(t=435*Q),a=(n+=B<<8)+((E+=(i+=t>>>16)>>>16)>>>16)&65535,i=435*(B=65535&i),E=435*(e=65535&E),n=435*a,E+=(Q^=A.charCodeAt(I++))<<8,n+=B<<8,Q=65535&(t=435*Q),B=65535&(i+=t>>>16),a=n+((E+=i>>>16)>>>16)&65535,e=65535&E,Q^=A.charCodeAt(I++);for(;I>>16),a=n+((E+=i>>>16)>>>16)&65535,e=65535&E,Q^=A.charCodeAt(I++);return D(281474976710656*(15&a)+4294967296*e+65536*B+(Q^a>>4),52)}function U(A){var I,g,C=A.length,t=h[64].offset,Q=0,i=0|t[3],B=0,E=0|t[2],e=0,n=0|t[1],a=0,o=0|t[0];for(g=0;g>6|192)<<8,a+=E<<8,i=65535&(Q=435*i),E=65535&(B+=Q>>>16),o=a+((e+=B>>>16)>>>16)&65535,n=65535&e,i^=63&I|128):55296==(64512&I)&&g+1>18|240)<<8,i=65535&(Q=435*i),o=(a+=E<<8)+((e+=(B+=Q>>>16)>>>16)>>>16)&65535,B=435*(E=65535&B),e=435*(n=65535&e),a=435*o,e+=(i^=I>>12&63|128)<<8,i=65535&(Q=435*i),o=(a+=E<<8)+((e+=(B+=Q>>>16)>>>16)>>>16)&65535,B=435*(E=65535&B),e=435*(n=65535&e),a=435*o,e+=(i^=I>>6&63|128)<<8,a+=E<<8,i=65535&(Q=435*i),E=65535&(B+=Q>>>16),o=a+((e+=B>>>16)>>>16)&65535,n=65535&e,i^=63&I|128):(B=435*E,e=435*n,a=435*o,e+=(i^=I>>12|224)<<8,i=65535&(Q=435*i),o=(a+=E<<8)+((e+=(B+=Q>>>16)>>>16)>>>16)&65535,B=435*(E=65535&B),e=435*(n=65535&e),a=435*o,e+=(i^=I>>6&63|128)<<8,a+=E<<8,i=65535&(Q=435*i),E=65535&(B+=Q>>>16),o=a+((e+=B>>>16)>>>16)&65535,n=65535&e,i^=63&I|128),B=435*E,e=435*n,a=435*o,e+=i<<8,a+=E<<8,i=65535&(Q=435*i),E=65535&(B+=Q>>>16),o=a+((e+=B>>>16)>>>16)&65535,n=65535&e;return D(281474976710656*(15&o)+4294967296*n+65536*E+(i^o>>4),52)}function m(A){var I,g,C=A.length,t=h[64].offset,Q=0,i=0|t[3],B=0,E=0|t[2],e=0,n=0|t[1],a=0,o=0|t[0];for(g=0;g>>16),o=a+((e+=B>>>16)>>>16)&65535,n=65535&e,(I=A.charCodeAt(g))<128?i^=I:I<2048?(B=435*E,e=435*n,a=435*o,e+=(i^=I>>6|192)<<8,a+=E<<8,i=65535&(Q=435*i),E=65535&(B+=Q>>>16),o=a+((e+=B>>>16)>>>16)&65535,n=65535&e,i^=63&I|128):55296==(64512&I)&&g+1>18|240)<<8,i=65535&(Q=435*i),o=(a+=E<<8)+((e+=(B+=Q>>>16)>>>16)>>>16)&65535,B=435*(E=65535&B),e=435*(n=65535&e),a=435*o,e+=(i^=I>>12&63|128)<<8,i=65535&(Q=435*i),o=(a+=E<<8)+((e+=(B+=Q>>>16)>>>16)>>>16)&65535,B=435*(E=65535&B),e=435*(n=65535&e),a=435*o,e+=(i^=I>>6&63|128)<<8,a+=E<<8,i=65535&(Q=435*i),E=65535&(B+=Q>>>16),o=a+((e+=B>>>16)>>>16)&65535,n=65535&e,i^=63&I|128):(B=435*E,e=435*n,a=435*o,e+=(i^=I>>12|224)<<8,i=65535&(Q=435*i),o=(a+=E<<8)+((e+=(B+=Q>>>16)>>>16)>>>16)&65535,B=435*(E=65535&B),e=435*(n=65535&e),a=435*o,e+=(i^=I>>6&63|128)<<8,a+=E<<8,i=65535&(Q=435*i),E=65535&(B+=Q>>>16),o=a+((e+=B>>>16)>>>16)&65535,n=65535&e,i^=63&I|128);return D(281474976710656*(15&o)+4294967296*n+65536*E+(i^o>>4),52)}function L(A){var I,g=A.length-3,C=h[64].offset,t=0,Q=0|C[3],i=0,B=0|C[2],e=0,n=0|C[1],a=0,o=0|C[0];for(I=0;I>>16)>>>16)>>>16)&65535,i=435*(B=65535&i),e=435*(n=65535&e),a=435*o,e+=(Q^=A.charCodeAt(I++))<<8,Q=65535&(t=435*Q),o=(a+=B<<8)+((e+=(i+=t>>>16)>>>16)>>>16)&65535,i=435*(B=65535&i),e=435*(n=65535&e),a=435*o,e+=(Q^=A.charCodeAt(I++))<<8,Q=65535&(t=435*Q),o=(a+=B<<8)+((e+=(i+=t>>>16)>>>16)>>>16)&65535,i=435*(B=65535&i),e=435*(n=65535&e),a=435*o,e+=(Q^=A.charCodeAt(I++))<<8,a+=B<<8,Q=65535&(t=435*Q),B=65535&(i+=t>>>16),o=a+((e+=i>>>16)>>>16)&65535,n=65535&e;for(;I>>16),o=a+((e+=i>>>16)>>>16)&65535,n=65535&e;return w(E[o>>8]+E[255&o]+E[n>>8]+E[255&n]+E[B>>8]+E[255&B]+E[Q>>8]+E[255&Q],64)}function b(A){var I,g=A.length-3,C=h[64].offset,t=0,Q=0|C[3],i=0,B=0|C[2],e=0,n=0|C[1],a=0,o=0|C[0];for(I=0;I>>16)>>>16)>>>16)&65535,i=435*(B=65535&i),e=435*(n=65535&e),a=435*o,e+=(Q^=A.charCodeAt(I++))<<8,Q=65535&(t=435*Q),o=(a+=B<<8)+((e+=(i+=t>>>16)>>>16)>>>16)&65535,i=435*(B=65535&i),e=435*(n=65535&e),a=435*o,e+=(Q^=A.charCodeAt(I++))<<8,Q=65535&(t=435*Q),o=(a+=B<<8)+((e+=(i+=t>>>16)>>>16)>>>16)&65535,i=435*(B=65535&i),e=435*(n=65535&e),a=435*o,e+=(Q^=A.charCodeAt(I++))<<8,a+=B<<8,Q=65535&(t=435*Q),B=65535&(i+=t>>>16),o=a+((e+=i>>>16)>>>16)&65535,n=65535&e,Q^=A.charCodeAt(I++);for(;I>>16),o=a+((e+=i>>>16)>>>16)&65535,n=65535&e,Q^=A.charCodeAt(I++);return w(E[o>>8]+E[255&o]+E[n>>8]+E[255&n]+E[B>>8]+E[255&B]+E[Q>>8]+E[255&Q],64)}function k(A){var I,g,C=A.length,t=h[64].offset,Q=0,i=0|t[3],B=0,e=0|t[2],n=0,a=0|t[1],o=0,r=0|t[0];for(g=0;g>6|192)<<8,o+=e<<8,i=65535&(Q=435*i),e=65535&(B+=Q>>>16),r=o+((n+=B>>>16)>>>16)&65535,a=65535&n,i^=63&I|128):55296==(64512&I)&&g+1>18|240)<<8,i=65535&(Q=435*i),r=(o+=e<<8)+((n+=(B+=Q>>>16)>>>16)>>>16)&65535,B=435*(e=65535&B),n=435*(a=65535&n),o=435*r,n+=(i^=I>>12&63|128)<<8,i=65535&(Q=435*i),r=(o+=e<<8)+((n+=(B+=Q>>>16)>>>16)>>>16)&65535,B=435*(e=65535&B),n=435*(a=65535&n),o=435*r,n+=(i^=I>>6&63|128)<<8,o+=e<<8,i=65535&(Q=435*i),e=65535&(B+=Q>>>16),r=o+((n+=B>>>16)>>>16)&65535,a=65535&n,i^=63&I|128):(B=435*e,n=435*a,o=435*r,n+=(i^=I>>12|224)<<8,i=65535&(Q=435*i),r=(o+=e<<8)+((n+=(B+=Q>>>16)>>>16)>>>16)&65535,B=435*(e=65535&B),n=435*(a=65535&n),o=435*r,n+=(i^=I>>6&63|128)<<8,o+=e<<8,i=65535&(Q=435*i),e=65535&(B+=Q>>>16),r=o+((n+=B>>>16)>>>16)&65535,a=65535&n,i^=63&I|128),B=435*e,n=435*a,o=435*r,n+=i<<8,o+=e<<8,i=65535&(Q=435*i),e=65535&(B+=Q>>>16),r=o+((n+=B>>>16)>>>16)&65535,a=65535&n;return w(E[r>>8]+E[255&r]+E[a>>8]+E[255&a]+E[e>>8]+E[255&e]+E[i>>8]+E[255&i],64)}function J(A){var I,g,C=A.length,t=h[64].offset,Q=0,i=0|t[3],B=0,e=0|t[2],n=0,a=0|t[1],o=0,r=0|t[0];for(g=0;g>>16),r=o+((n+=B>>>16)>>>16)&65535,a=65535&n,(I=A.charCodeAt(g))<128?i^=I:I<2048?(B=435*e,n=435*a,o=435*r,n+=(i^=I>>6|192)<<8,o+=e<<8,i=65535&(Q=435*i),e=65535&(B+=Q>>>16),r=o+((n+=B>>>16)>>>16)&65535,a=65535&n,i^=63&I|128):55296==(64512&I)&&g+1>18|240)<<8,i=65535&(Q=435*i),r=(o+=e<<8)+((n+=(B+=Q>>>16)>>>16)>>>16)&65535,B=435*(e=65535&B),n=435*(a=65535&n),o=435*r,n+=(i^=I>>12&63|128)<<8,i=65535&(Q=435*i),r=(o+=e<<8)+((n+=(B+=Q>>>16)>>>16)>>>16)&65535,B=435*(e=65535&B),n=435*(a=65535&n),o=435*r,n+=(i^=I>>6&63|128)<<8,o+=e<<8,i=65535&(Q=435*i),e=65535&(B+=Q>>>16),r=o+((n+=B>>>16)>>>16)&65535,a=65535&n,i^=63&I|128):(B=435*e,n=435*a,o=435*r,n+=(i^=I>>12|224)<<8,i=65535&(Q=435*i),r=(o+=e<<8)+((n+=(B+=Q>>>16)>>>16)>>>16)&65535,B=435*(e=65535&B),n=435*(a=65535&n),o=435*r,n+=(i^=I>>6&63|128)<<8,o+=e<<8,i=65535&(Q=435*i),e=65535&(B+=Q>>>16),r=o+((n+=B>>>16)>>>16)&65535,a=65535&n,i^=63&I|128);return w(E[r>>8]+E[255&r]+E[a>>8]+E[255&a]+E[e>>8]+E[255&e]+E[i>>8]+E[255&i],64)}function N(A){var I,g=A.length-3,C=h[128].offset,t=0,Q=0|C[7],i=0,B=0|C[6],e=0,n=0|C[5],a=0,o=0|C[4],r=0,s=0|C[3],f=0,D=0|C[2],c=0,y=0|C[1],u=0,l=0|C[0];for(I=0;I>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)&65535,i=315*(B=65535&i),e=315*(n=65535&e),a=315*(o=65535&a),r=315*(s=65535&r),f=315*(D=65535&f),c=315*(y=65535&c),u=315*l,f+=(Q^=A.charCodeAt(I++))<<8,c+=B<<8,Q=65535&(t=315*Q),l=(u+=n<<8)+((c+=(f+=(r+=(a+=(e+=(i+=t>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)&65535,i=315*(B=65535&i),e=315*(n=65535&e),a=315*(o=65535&a),r=315*(s=65535&r),f=315*(D=65535&f),c=315*(y=65535&c),u=315*l,f+=(Q^=A.charCodeAt(I++))<<8,c+=B<<8,Q=65535&(t=315*Q),l=(u+=n<<8)+((c+=(f+=(r+=(a+=(e+=(i+=t>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)&65535,i=315*(B=65535&i),e=315*(n=65535&e),a=315*(o=65535&a),r=315*(s=65535&r),f=315*(D=65535&f),c=315*(y=65535&c),u=315*l,f+=(Q^=A.charCodeAt(I++))<<8,c+=B<<8,u+=n<<8,Q=65535&(t=315*Q),B=65535&(i+=t>>>16),n=65535&(e+=i>>>16),o=65535&(a+=e>>>16),s=65535&(r+=a>>>16),D=65535&(f+=r>>>16),l=u+((c+=f>>>16)>>>16)&65535,y=65535&c;for(;I>>16),n=65535&(e+=i>>>16),o=65535&(a+=e>>>16),s=65535&(r+=a>>>16),D=65535&(f+=r>>>16),l=u+((c+=f>>>16)>>>16)&65535,y=65535&c;return w(E[l>>8]+E[255&l]+E[y>>8]+E[255&y]+E[D>>8]+E[255&D]+E[s>>8]+E[255&s]+E[o>>8]+E[255&o]+E[n>>8]+E[255&n]+E[B>>8]+E[255&B]+E[Q>>8]+E[255&Q],128)}function S(A){var I,g=A.length-3,C=h[128].offset,t=0,Q=0|C[7],i=0,B=0|C[6],e=0,n=0|C[5],a=0,o=0|C[4],r=0,s=0|C[3],f=0,D=0|C[2],c=0,y=0|C[1],u=0,l=0|C[0];for(I=0;I>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)&65535,i=315*(B=65535&i),e=315*(n=65535&e),a=315*(o=65535&a),r=315*(s=65535&r),f=315*(D=65535&f),c=315*(y=65535&c),u=315*l,f+=(Q^=A.charCodeAt(I++))<<8,c+=B<<8,Q=65535&(t=315*Q),l=(u+=n<<8)+((c+=(f+=(r+=(a+=(e+=(i+=t>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)&65535,i=315*(B=65535&i),e=315*(n=65535&e),a=315*(o=65535&a),r=315*(s=65535&r),f=315*(D=65535&f),c=315*(y=65535&c),u=315*l,f+=(Q^=A.charCodeAt(I++))<<8,c+=B<<8,Q=65535&(t=315*Q),l=(u+=n<<8)+((c+=(f+=(r+=(a+=(e+=(i+=t>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)&65535,i=315*(B=65535&i),e=315*(n=65535&e),a=315*(o=65535&a),r=315*(s=65535&r),f=315*(D=65535&f),c=315*(y=65535&c),u=315*l,f+=(Q^=A.charCodeAt(I++))<<8,c+=B<<8,u+=n<<8,Q=65535&(t=315*Q),B=65535&(i+=t>>>16),n=65535&(e+=i>>>16),o=65535&(a+=e>>>16),s=65535&(r+=a>>>16),D=65535&(f+=r>>>16),l=u+((c+=f>>>16)>>>16)&65535,y=65535&c,Q^=A.charCodeAt(I++);for(;I>>16),n=65535&(e+=i>>>16),o=65535&(a+=e>>>16),s=65535&(r+=a>>>16),D=65535&(f+=r>>>16),l=u+((c+=f>>>16)>>>16)&65535,y=65535&c,Q^=A.charCodeAt(I++);return w(E[l>>8]+E[255&l]+E[y>>8]+E[255&y]+E[D>>8]+E[255&D]+E[s>>8]+E[255&s]+E[o>>8]+E[255&o]+E[n>>8]+E[255&n]+E[B>>8]+E[255&B]+E[Q>>8]+E[255&Q],128)}function R(A){var I,g,C=A.length,t=h[128].offset,Q=0,i=0|t[7],B=0,e=0|t[6],n=0,a=0|t[5],o=0,r=0|t[4],s=0,f=0|t[3],D=0,c=0|t[2],y=0,u=0|t[1],l=0,F=0|t[0];for(g=0;g>6|192)<<8,y+=e<<8,l+=a<<8,i=65535&(Q=315*i),e=65535&(B+=Q>>>16),a=65535&(n+=B>>>16),r=65535&(o+=n>>>16),f=65535&(s+=o>>>16),c=65535&(D+=s>>>16),F=l+((y+=D>>>16)>>>16)&65535,u=65535&y,i^=63&I|128):55296==(64512&I)&&g+1>18|240)<<8,y+=e<<8,i=65535&(Q=315*i),F=(l+=a<<8)+((y+=(D+=(s+=(o+=(n+=(B+=Q>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)&65535,B=315*(e=65535&B),n=315*(a=65535&n),o=315*(r=65535&o),s=315*(f=65535&s),D=315*(c=65535&D),y=315*(u=65535&y),l=315*F,D+=(i^=I>>12&63|128)<<8,y+=e<<8,i=65535&(Q=315*i),F=(l+=a<<8)+((y+=(D+=(s+=(o+=(n+=(B+=Q>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)&65535,B=315*(e=65535&B),n=315*(a=65535&n),o=315*(r=65535&o),s=315*(f=65535&s),D=315*(c=65535&D),y=315*(u=65535&y),l=315*F,D+=(i^=I>>6&63|128)<<8,y+=e<<8,l+=a<<8,i=65535&(Q=315*i),e=65535&(B+=Q>>>16),a=65535&(n+=B>>>16),r=65535&(o+=n>>>16),f=65535&(s+=o>>>16),c=65535&(D+=s>>>16),F=l+((y+=D>>>16)>>>16)&65535,u=65535&y,i^=63&I|128):(B=315*e,n=315*a,o=315*r,s=315*f,D=315*c,y=315*u,l=315*F,D+=(i^=I>>12|224)<<8,y+=e<<8,i=65535&(Q=315*i),F=(l+=a<<8)+((y+=(D+=(s+=(o+=(n+=(B+=Q>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)&65535,B=315*(e=65535&B),n=315*(a=65535&n),o=315*(r=65535&o),s=315*(f=65535&s),D=315*(c=65535&D),y=315*(u=65535&y),l=315*F,D+=(i^=I>>6&63|128)<<8,y+=e<<8,l+=a<<8,i=65535&(Q=315*i),e=65535&(B+=Q>>>16),a=65535&(n+=B>>>16),r=65535&(o+=n>>>16),f=65535&(s+=o>>>16),c=65535&(D+=s>>>16),F=l+((y+=D>>>16)>>>16)&65535,u=65535&y,i^=63&I|128),B=315*e,n=315*a,o=315*r,s=315*f,D=315*c,y=315*u,l=315*F,D+=i<<8,y+=e<<8,l+=a<<8,i=65535&(Q=315*i),e=65535&(B+=Q>>>16),a=65535&(n+=B>>>16),r=65535&(o+=n>>>16),f=65535&(s+=o>>>16),c=65535&(D+=s>>>16),F=l+((y+=D>>>16)>>>16)&65535,u=65535&y;return w(E[F>>8]+E[255&F]+E[u>>8]+E[255&u]+E[c>>8]+E[255&c]+E[f>>8]+E[255&f]+E[r>>8]+E[255&r]+E[a>>8]+E[255&a]+E[e>>8]+E[255&e]+E[i>>8]+E[255&i],128)}function v(A){var I,g,C=A.length,t=h[128].offset,Q=0,i=0|t[7],B=0,e=0|t[6],n=0,a=0|t[5],o=0,r=0|t[4],s=0,f=0|t[3],D=0,c=0|t[2],y=0,u=0|t[1],l=0,F=0|t[0];for(g=0;g>>16),a=65535&(n+=B>>>16),r=65535&(o+=n>>>16),f=65535&(s+=o>>>16),c=65535&(D+=s>>>16),F=l+((y+=D>>>16)>>>16)&65535,u=65535&y,(I=A.charCodeAt(g))<128?i^=I:I<2048?(B=315*e,n=315*a,o=315*r,s=315*f,D=315*c,y=315*u,l=315*F,D+=(i^=I>>6|192)<<8,y+=e<<8,l+=a<<8,i=65535&(Q=315*i),e=65535&(B+=Q>>>16),a=65535&(n+=B>>>16),r=65535&(o+=n>>>16),f=65535&(s+=o>>>16),c=65535&(D+=s>>>16),F=l+((y+=D>>>16)>>>16)&65535,u=65535&y,i^=63&I|128):55296==(64512&I)&&g+1>18|240)<<8,y+=e<<8,i=65535&(Q=315*i),F=(l+=a<<8)+((y+=(D+=(s+=(o+=(n+=(B+=Q>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)&65535,B=315*(e=65535&B),n=315*(a=65535&n),o=315*(r=65535&o),s=315*(f=65535&s),D=315*(c=65535&D),y=315*(u=65535&y),l=315*F,D+=(i^=I>>12&63|128)<<8,y+=e<<8,i=65535&(Q=315*i),F=(l+=a<<8)+((y+=(D+=(s+=(o+=(n+=(B+=Q>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)&65535,B=315*(e=65535&B),n=315*(a=65535&n),o=315*(r=65535&o),s=315*(f=65535&s),D=315*(c=65535&D),y=315*(u=65535&y),l=315*F,D+=(i^=I>>6&63|128)<<8,y+=e<<8,l+=a<<8,i=65535&(Q=315*i),e=65535&(B+=Q>>>16),a=65535&(n+=B>>>16),r=65535&(o+=n>>>16),f=65535&(s+=o>>>16),c=65535&(D+=s>>>16),F=l+((y+=D>>>16)>>>16)&65535,u=65535&y,i^=63&I|128):(B=315*e,n=315*a,o=315*r,s=315*f,D=315*c,y=315*u,l=315*F,D+=(i^=I>>12|224)<<8,y+=e<<8,i=65535&(Q=315*i),F=(l+=a<<8)+((y+=(D+=(s+=(o+=(n+=(B+=Q>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)&65535,B=315*(e=65535&B),n=315*(a=65535&n),o=315*(r=65535&o),s=315*(f=65535&s),D=315*(c=65535&D),y=315*(u=65535&y),l=315*F,D+=(i^=I>>6&63|128)<<8,y+=e<<8,l+=a<<8,i=65535&(Q=315*i),e=65535&(B+=Q>>>16),a=65535&(n+=B>>>16),r=65535&(o+=n>>>16),f=65535&(s+=o>>>16),c=65535&(D+=s>>>16),F=l+((y+=D>>>16)>>>16)&65535,u=65535&y,i^=63&I|128);return w(E[F>>8]+E[255&F]+E[u>>8]+E[255&u]+E[c>>8]+E[255&c]+E[f>>8]+E[255&f]+E[r>>8]+E[255&r]+E[a>>8]+E[255&a]+E[e>>8]+E[255&e]+E[i>>8]+E[255&i],128)}function Y(A){var I,g=A.length-3,C=h[256].offset,t=0,Q=0|C[15],i=0,B=0|C[14],e=0,n=0|C[13],a=0,o=0|C[12],r=0,s=0|C[11],f=0,D=0|C[10],c=0,y=0|C[9],u=0,l=0|C[8],F=0,M=0|C[7],p=0,G=0|C[6],H=0,d=0|C[5],U=0,m=0|C[4],L=0,b=0|C[3],k=0,J=0|C[2],N=0,S=0|C[1],R=0,v=0|C[0];for(I=0;I>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)&65535,i=355*(B=65535&i),e=355*(n=65535&e),a=355*(o=65535&a),r=355*(s=65535&r),f=355*(D=65535&f),c=355*(y=65535&c),u=355*(l=65535&u),F=355*(M=65535&F),p=355*(G=65535&p),H=355*(d=65535&H),U=355*(m=65535&U),L=355*(b=65535&L),k=355*(J=65535&k),N=355*(S=65535&N),R=355*v,H+=(Q^=A.charCodeAt(I++))<<8,U+=B<<8,L+=n<<8,k+=o<<8,N+=s<<8,Q=65535&(t=355*Q),v=(R+=D<<8)+((N+=(k+=(L+=(U+=(H+=(p+=(F+=(u+=(c+=(f+=(r+=(a+=(e+=(i+=t>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)&65535,i=355*(B=65535&i),e=355*(n=65535&e),a=355*(o=65535&a),r=355*(s=65535&r),f=355*(D=65535&f),c=355*(y=65535&c),u=355*(l=65535&u),F=355*(M=65535&F),p=355*(G=65535&p),H=355*(d=65535&H),U=355*(m=65535&U),L=355*(b=65535&L),k=355*(J=65535&k),N=355*(S=65535&N),R=355*v,H+=(Q^=A.charCodeAt(I++))<<8,U+=B<<8,L+=n<<8,k+=o<<8,N+=s<<8,Q=65535&(t=355*Q),v=(R+=D<<8)+((N+=(k+=(L+=(U+=(H+=(p+=(F+=(u+=(c+=(f+=(r+=(a+=(e+=(i+=t>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)&65535,i=355*(B=65535&i),e=355*(n=65535&e),a=355*(o=65535&a),r=355*(s=65535&r),f=355*(D=65535&f),c=355*(y=65535&c),u=355*(l=65535&u),F=355*(M=65535&F),p=355*(G=65535&p),H=355*(d=65535&H),U=355*(m=65535&U),L=355*(b=65535&L),k=355*(J=65535&k),N=355*(S=65535&N),R=355*v,H+=(Q^=A.charCodeAt(I++))<<8,U+=B<<8,L+=n<<8,k+=o<<8,N+=s<<8,R+=D<<8,Q=65535&(t=355*Q),B=65535&(i+=t>>>16),n=65535&(e+=i>>>16),o=65535&(a+=e>>>16),s=65535&(r+=a>>>16),D=65535&(f+=r>>>16),y=65535&(c+=f>>>16),l=65535&(u+=c>>>16),M=65535&(F+=u>>>16),G=65535&(p+=F>>>16),d=65535&(H+=p>>>16),m=65535&(U+=H>>>16),b=65535&(L+=U>>>16),J=65535&(k+=L>>>16),v=R+((N+=k>>>16)>>>16)&65535,S=65535&N;for(;I>>16),n=65535&(e+=i>>>16),o=65535&(a+=e>>>16),s=65535&(r+=a>>>16),D=65535&(f+=r>>>16),y=65535&(c+=f>>>16),l=65535&(u+=c>>>16),M=65535&(F+=u>>>16),G=65535&(p+=F>>>16),d=65535&(H+=p>>>16),m=65535&(U+=H>>>16),b=65535&(L+=U>>>16),J=65535&(k+=L>>>16),v=R+((N+=k>>>16)>>>16)&65535,S=65535&N;return w(E[v>>8]+E[255&v]+E[S>>8]+E[255&S]+E[J>>8]+E[255&J]+E[b>>8]+E[255&b]+E[m>>8]+E[255&m]+E[d>>8]+E[255&d]+E[G>>8]+E[255&G]+E[M>>8]+E[255&M]+E[l>>8]+E[255&l]+E[y>>8]+E[255&y]+E[D>>8]+E[255&D]+E[s>>8]+E[255&s]+E[o>>8]+E[255&o]+E[n>>8]+E[255&n]+E[B>>8]+E[255&B]+E[Q>>8]+E[255&Q],256)}function P(A){var I,g=A.length-3,C=h[256].offset,t=0,Q=0|C[15],i=0,B=0|C[14],e=0,n=0|C[13],a=0,o=0|C[12],r=0,s=0|C[11],f=0,D=0|C[10],c=0,y=0|C[9],u=0,l=0|C[8],F=0,M=0|C[7],p=0,G=0|C[6],H=0,d=0|C[5],U=0,m=0|C[4],L=0,b=0|C[3],k=0,J=0|C[2],N=0,S=0|C[1],R=0,v=0|C[0];for(I=0;I>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)&65535,i=355*(B=65535&i),e=355*(n=65535&e),a=355*(o=65535&a),r=355*(s=65535&r),f=355*(D=65535&f),c=355*(y=65535&c),u=355*(l=65535&u),F=355*(M=65535&F),p=355*(G=65535&p),H=355*(d=65535&H),U=355*(m=65535&U),L=355*(b=65535&L),k=355*(J=65535&k),N=355*(S=65535&N),R=355*v,H+=(Q^=A.charCodeAt(I++))<<8,U+=B<<8,L+=n<<8,k+=o<<8,N+=s<<8,Q=65535&(t=355*Q),v=(R+=D<<8)+((N+=(k+=(L+=(U+=(H+=(p+=(F+=(u+=(c+=(f+=(r+=(a+=(e+=(i+=t>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)&65535,i=355*(B=65535&i),e=355*(n=65535&e),a=355*(o=65535&a),r=355*(s=65535&r),f=355*(D=65535&f),c=355*(y=65535&c),u=355*(l=65535&u),F=355*(M=65535&F),p=355*(G=65535&p),H=355*(d=65535&H),U=355*(m=65535&U),L=355*(b=65535&L),k=355*(J=65535&k),N=355*(S=65535&N),R=355*v,H+=(Q^=A.charCodeAt(I++))<<8,U+=B<<8,L+=n<<8,k+=o<<8,N+=s<<8,Q=65535&(t=355*Q),v=(R+=D<<8)+((N+=(k+=(L+=(U+=(H+=(p+=(F+=(u+=(c+=(f+=(r+=(a+=(e+=(i+=t>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)&65535,i=355*(B=65535&i),e=355*(n=65535&e),a=355*(o=65535&a),r=355*(s=65535&r),f=355*(D=65535&f),c=355*(y=65535&c),u=355*(l=65535&u),F=355*(M=65535&F),p=355*(G=65535&p),H=355*(d=65535&H),U=355*(m=65535&U),L=355*(b=65535&L),k=355*(J=65535&k),N=355*(S=65535&N),R=355*v,H+=(Q^=A.charCodeAt(I++))<<8,U+=B<<8,L+=n<<8,k+=o<<8,N+=s<<8,R+=D<<8,Q=65535&(t=355*Q),B=65535&(i+=t>>>16),n=65535&(e+=i>>>16),o=65535&(a+=e>>>16),s=65535&(r+=a>>>16),D=65535&(f+=r>>>16),y=65535&(c+=f>>>16),l=65535&(u+=c>>>16),M=65535&(F+=u>>>16),G=65535&(p+=F>>>16),d=65535&(H+=p>>>16),m=65535&(U+=H>>>16),b=65535&(L+=U>>>16),J=65535&(k+=L>>>16),v=R+((N+=k>>>16)>>>16)&65535,S=65535&N,Q^=A.charCodeAt(I++);for(;I>>16),n=65535&(e+=i>>>16),o=65535&(a+=e>>>16),s=65535&(r+=a>>>16),D=65535&(f+=r>>>16),y=65535&(c+=f>>>16),l=65535&(u+=c>>>16),M=65535&(F+=u>>>16),G=65535&(p+=F>>>16),d=65535&(H+=p>>>16),m=65535&(U+=H>>>16),b=65535&(L+=U>>>16),J=65535&(k+=L>>>16),v=R+((N+=k>>>16)>>>16)&65535,S=65535&N,Q^=A.charCodeAt(I++);return w(E[v>>8]+E[255&v]+E[S>>8]+E[255&S]+E[J>>8]+E[255&J]+E[b>>8]+E[255&b]+E[m>>8]+E[255&m]+E[d>>8]+E[255&d]+E[G>>8]+E[255&G]+E[M>>8]+E[255&M]+E[l>>8]+E[255&l]+E[y>>8]+E[255&y]+E[D>>8]+E[255&D]+E[s>>8]+E[255&s]+E[o>>8]+E[255&o]+E[n>>8]+E[255&n]+E[B>>8]+E[255&B]+E[Q>>8]+E[255&Q],256)}function q(A){var I,g,C=A.length,t=h[256].offset,Q=0,i=0|t[15],B=0,e=0|t[14],n=0,a=0|t[13],o=0,r=0|t[12],s=0,f=0|t[11],D=0,c=0|t[10],y=0,u=0|t[9],l=0,F=0|t[8],M=0,p=0|t[7],G=0,H=0|t[6],d=0,U=0|t[5],m=0,L=0|t[4],b=0,k=0|t[3],J=0,N=0|t[2],S=0,R=0|t[1],v=0,Y=0|t[0];for(g=0;g>6|192)<<8,m+=e<<8,b+=a<<8,J+=r<<8,S+=f<<8,v+=c<<8,i=65535&(Q=355*i),e=65535&(B+=Q>>>16),a=65535&(n+=B>>>16),r=65535&(o+=n>>>16),f=65535&(s+=o>>>16),c=65535&(D+=s>>>16),u=65535&(y+=D>>>16),F=65535&(l+=y>>>16),p=65535&(M+=l>>>16),H=65535&(G+=M>>>16),U=65535&(d+=G>>>16),L=65535&(m+=d>>>16),k=65535&(b+=m>>>16),N=65535&(J+=b>>>16),Y=v+((S+=J>>>16)>>>16)&65535,R=65535&S,i^=63&I|128):55296==(64512&I)&&g+1>18|240)<<8,m+=e<<8,b+=a<<8,J+=r<<8,S+=f<<8,i=65535&(Q=355*i),Y=(v+=c<<8)+((S+=(J+=(b+=(m+=(d+=(G+=(M+=(l+=(y+=(D+=(s+=(o+=(n+=(B+=Q>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)&65535,B=355*(e=65535&B),n=355*(a=65535&n),o=355*(r=65535&o),s=355*(f=65535&s),D=355*(c=65535&D),y=355*(u=65535&y),l=355*(F=65535&l),M=355*(p=65535&M),G=355*(H=65535&G),d=355*(U=65535&d),m=355*(L=65535&m),b=355*(k=65535&b),J=355*(N=65535&J),S=355*(R=65535&S),v=355*Y,d+=(i^=I>>12&63|128)<<8,m+=e<<8,b+=a<<8,J+=r<<8,S+=f<<8,i=65535&(Q=355*i),Y=(v+=c<<8)+((S+=(J+=(b+=(m+=(d+=(G+=(M+=(l+=(y+=(D+=(s+=(o+=(n+=(B+=Q>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)&65535,B=355*(e=65535&B),n=355*(a=65535&n),o=355*(r=65535&o),s=355*(f=65535&s),D=355*(c=65535&D),y=355*(u=65535&y),l=355*(F=65535&l),M=355*(p=65535&M),G=355*(H=65535&G),d=355*(U=65535&d),m=355*(L=65535&m),b=355*(k=65535&b),J=355*(N=65535&J),S=355*(R=65535&S),v=355*Y,d+=(i^=I>>6&63|128)<<8,m+=e<<8,b+=a<<8,J+=r<<8,S+=f<<8,v+=c<<8,i=65535&(Q=355*i),e=65535&(B+=Q>>>16),a=65535&(n+=B>>>16),r=65535&(o+=n>>>16),f=65535&(s+=o>>>16),c=65535&(D+=s>>>16),u=65535&(y+=D>>>16),F=65535&(l+=y>>>16),p=65535&(M+=l>>>16),H=65535&(G+=M>>>16),U=65535&(d+=G>>>16),L=65535&(m+=d>>>16),k=65535&(b+=m>>>16),N=65535&(J+=b>>>16),Y=v+((S+=J>>>16)>>>16)&65535,R=65535&S,i^=63&I|128):(B=355*e,n=355*a,o=355*r,s=355*f,D=355*c,y=355*u,l=355*F,M=355*p,G=355*H,d=355*U,m=355*L,b=355*k,J=355*N,S=355*R,v=355*Y,d+=(i^=I>>12|224)<<8,m+=e<<8,b+=a<<8,J+=r<<8,S+=f<<8,i=65535&(Q=355*i),Y=(v+=c<<8)+((S+=(J+=(b+=(m+=(d+=(G+=(M+=(l+=(y+=(D+=(s+=(o+=(n+=(B+=Q>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)&65535,B=355*(e=65535&B),n=355*(a=65535&n),o=355*(r=65535&o),s=355*(f=65535&s),D=355*(c=65535&D),y=355*(u=65535&y),l=355*(F=65535&l),M=355*(p=65535&M),G=355*(H=65535&G),d=355*(U=65535&d),m=355*(L=65535&m),b=355*(k=65535&b),J=355*(N=65535&J),S=355*(R=65535&S),v=355*Y,d+=(i^=I>>6&63|128)<<8,m+=e<<8,b+=a<<8,J+=r<<8,S+=f<<8,v+=c<<8,i=65535&(Q=355*i),e=65535&(B+=Q>>>16),a=65535&(n+=B>>>16),r=65535&(o+=n>>>16),f=65535&(s+=o>>>16),c=65535&(D+=s>>>16),u=65535&(y+=D>>>16),F=65535&(l+=y>>>16),p=65535&(M+=l>>>16),H=65535&(G+=M>>>16),U=65535&(d+=G>>>16),L=65535&(m+=d>>>16),k=65535&(b+=m>>>16),N=65535&(J+=b>>>16),Y=v+((S+=J>>>16)>>>16)&65535,R=65535&S,i^=63&I|128),B=355*e,n=355*a,o=355*r,s=355*f,D=355*c,y=355*u,l=355*F,M=355*p,G=355*H,d=355*U,m=355*L,b=355*k,J=355*N,S=355*R,v=355*Y,d+=i<<8,m+=e<<8,b+=a<<8,J+=r<<8,S+=f<<8,v+=c<<8,i=65535&(Q=355*i),e=65535&(B+=Q>>>16),a=65535&(n+=B>>>16),r=65535&(o+=n>>>16),f=65535&(s+=o>>>16),c=65535&(D+=s>>>16),u=65535&(y+=D>>>16),F=65535&(l+=y>>>16),p=65535&(M+=l>>>16),H=65535&(G+=M>>>16),U=65535&(d+=G>>>16),L=65535&(m+=d>>>16),k=65535&(b+=m>>>16),N=65535&(J+=b>>>16),Y=v+((S+=J>>>16)>>>16)&65535,R=65535&S;return w(E[Y>>8]+E[255&Y]+E[R>>8]+E[255&R]+E[N>>8]+E[255&N]+E[k>>8]+E[255&k]+E[L>>8]+E[255&L]+E[U>>8]+E[255&U]+E[H>>8]+E[255&H]+E[p>>8]+E[255&p]+E[F>>8]+E[255&F]+E[u>>8]+E[255&u]+E[c>>8]+E[255&c]+E[f>>8]+E[255&f]+E[r>>8]+E[255&r]+E[a>>8]+E[255&a]+E[e>>8]+E[255&e]+E[i>>8]+E[255&i],256)}function x(A){var I,g,C=A.length,t=h[256].offset,Q=0,i=0|t[15],B=0,e=0|t[14],n=0,a=0|t[13],o=0,r=0|t[12],s=0,f=0|t[11],D=0,c=0|t[10],y=0,u=0|t[9],l=0,F=0|t[8],M=0,p=0|t[7],G=0,H=0|t[6],d=0,U=0|t[5],m=0,L=0|t[4],b=0,k=0|t[3],J=0,N=0|t[2],S=0,R=0|t[1],v=0,Y=0|t[0];for(g=0;g>>16),a=65535&(n+=B>>>16),r=65535&(o+=n>>>16),f=65535&(s+=o>>>16),c=65535&(D+=s>>>16),u=65535&(y+=D>>>16),F=65535&(l+=y>>>16),p=65535&(M+=l>>>16),H=65535&(G+=M>>>16),U=65535&(d+=G>>>16),L=65535&(m+=d>>>16),k=65535&(b+=m>>>16),N=65535&(J+=b>>>16),Y=v+((S+=J>>>16)>>>16)&65535,R=65535&S,(I=A.charCodeAt(g))<128?i^=I:I<2048?(B=355*e,n=355*a,o=355*r,s=355*f,D=355*c,y=355*u,l=355*F,M=355*p,G=355*H,d=355*U,m=355*L,b=355*k,J=355*N,S=355*R,v=355*Y,d+=(i^=I>>6|192)<<8,m+=e<<8,b+=a<<8,J+=r<<8,S+=f<<8,v+=c<<8,i=65535&(Q=355*i),e=65535&(B+=Q>>>16),a=65535&(n+=B>>>16),r=65535&(o+=n>>>16),f=65535&(s+=o>>>16),c=65535&(D+=s>>>16),u=65535&(y+=D>>>16),F=65535&(l+=y>>>16),p=65535&(M+=l>>>16),H=65535&(G+=M>>>16),U=65535&(d+=G>>>16),L=65535&(m+=d>>>16),k=65535&(b+=m>>>16),N=65535&(J+=b>>>16),Y=v+((S+=J>>>16)>>>16)&65535,R=65535&S,i^=63&I|128):55296==(64512&I)&&g+1>18|240)<<8,m+=e<<8,b+=a<<8,J+=r<<8,S+=f<<8,i=65535&(Q=355*i),Y=(v+=c<<8)+((S+=(J+=(b+=(m+=(d+=(G+=(M+=(l+=(y+=(D+=(s+=(o+=(n+=(B+=Q>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)&65535,B=355*(e=65535&B),n=355*(a=65535&n),o=355*(r=65535&o),s=355*(f=65535&s),D=355*(c=65535&D),y=355*(u=65535&y),l=355*(F=65535&l),M=355*(p=65535&M),G=355*(H=65535&G),d=355*(U=65535&d),m=355*(L=65535&m),b=355*(k=65535&b),J=355*(N=65535&J),S=355*(R=65535&S),v=355*Y,d+=(i^=I>>12&63|128)<<8,m+=e<<8,b+=a<<8,J+=r<<8,S+=f<<8,i=65535&(Q=355*i),Y=(v+=c<<8)+((S+=(J+=(b+=(m+=(d+=(G+=(M+=(l+=(y+=(D+=(s+=(o+=(n+=(B+=Q>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)&65535,B=355*(e=65535&B),n=355*(a=65535&n),o=355*(r=65535&o),s=355*(f=65535&s),D=355*(c=65535&D),y=355*(u=65535&y),l=355*(F=65535&l),M=355*(p=65535&M),G=355*(H=65535&G),d=355*(U=65535&d),m=355*(L=65535&m),b=355*(k=65535&b),J=355*(N=65535&J),S=355*(R=65535&S),v=355*Y,d+=(i^=I>>6&63|128)<<8,m+=e<<8,b+=a<<8,J+=r<<8,S+=f<<8,v+=c<<8,i=65535&(Q=355*i),e=65535&(B+=Q>>>16),a=65535&(n+=B>>>16),r=65535&(o+=n>>>16),f=65535&(s+=o>>>16),c=65535&(D+=s>>>16),u=65535&(y+=D>>>16),F=65535&(l+=y>>>16),p=65535&(M+=l>>>16),H=65535&(G+=M>>>16),U=65535&(d+=G>>>16),L=65535&(m+=d>>>16),k=65535&(b+=m>>>16),N=65535&(J+=b>>>16),Y=v+((S+=J>>>16)>>>16)&65535,R=65535&S,i^=63&I|128):(B=355*e,n=355*a,o=355*r,s=355*f,D=355*c,y=355*u,l=355*F,M=355*p,G=355*H,d=355*U,m=355*L,b=355*k,J=355*N,S=355*R,v=355*Y,d+=(i^=I>>12|224)<<8,m+=e<<8,b+=a<<8,J+=r<<8,S+=f<<8,i=65535&(Q=355*i),Y=(v+=c<<8)+((S+=(J+=(b+=(m+=(d+=(G+=(M+=(l+=(y+=(D+=(s+=(o+=(n+=(B+=Q>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)&65535,B=355*(e=65535&B),n=355*(a=65535&n),o=355*(r=65535&o),s=355*(f=65535&s),D=355*(c=65535&D),y=355*(u=65535&y),l=355*(F=65535&l),M=355*(p=65535&M),G=355*(H=65535&G),d=355*(U=65535&d),m=355*(L=65535&m),b=355*(k=65535&b),J=355*(N=65535&J),S=355*(R=65535&S),v=355*Y,d+=(i^=I>>6&63|128)<<8,m+=e<<8,b+=a<<8,J+=r<<8,S+=f<<8,v+=c<<8,i=65535&(Q=355*i),e=65535&(B+=Q>>>16),a=65535&(n+=B>>>16),r=65535&(o+=n>>>16),f=65535&(s+=o>>>16),c=65535&(D+=s>>>16),u=65535&(y+=D>>>16),F=65535&(l+=y>>>16),p=65535&(M+=l>>>16),H=65535&(G+=M>>>16),U=65535&(d+=G>>>16),L=65535&(m+=d>>>16),k=65535&(b+=m>>>16),N=65535&(J+=b>>>16),Y=v+((S+=J>>>16)>>>16)&65535,R=65535&S,i^=63&I|128);return w(E[Y>>8]+E[255&Y]+E[R>>8]+E[255&R]+E[N>>8]+E[255&N]+E[k>>8]+E[255&k]+E[L>>8]+E[255&L]+E[U>>8]+E[255&U]+E[H>>8]+E[255&H]+E[p>>8]+E[255&p]+E[F>>8]+E[255&F]+E[u>>8]+E[255&u]+E[c>>8]+E[255&c]+E[f>>8]+E[255&f]+E[r>>8]+E[255&r]+E[a>>8]+E[255&a]+E[e>>8]+E[255&e]+E[i>>8]+E[255&i],256)}function X(A){var I,g=A.length-3,C=h[512].offset,t=0,Q=0|C[31],i=0,B=0|C[30],e=0,n=0|C[29],a=0,o=0|C[28],r=0,s=0|C[27],f=0,D=0|C[26],c=0,y=0|C[25],u=0,l=0|C[24],F=0,M=0|C[23],p=0,G=0|C[22],H=0,d=0|C[21],U=0,m=0|C[20],L=0,b=0|C[19],k=0,J=0|C[18],N=0,S=0|C[17],R=0,v=0|C[16],Y=0,P=0|C[15],q=0,x=0|C[14],X=0,Z=0|C[13],V=0,K=0|C[12],O=0,W=0|C[11],j=0,z=0|C[10],T=0,_=0|C[9],$=0,AA=0|C[8],IA=0,gA=0|C[7],CA=0,tA=0|C[6],QA=0,iA=0|C[5],BA=0,EA=0|C[4],eA=0,nA=0|C[3],aA=0,oA=0|C[2],rA=0,hA=0|C[1],sA=0,wA=0|C[0];for(I=0;I>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)&65535,i=343*(B=65535&i),e=343*(n=65535&e),a=343*(o=65535&a),r=343*(s=65535&r),f=343*(D=65535&f),c=343*(y=65535&c),u=343*(l=65535&u),F=343*(M=65535&F),p=343*(G=65535&p),H=343*(d=65535&H),U=343*(m=65535&U),L=343*(b=65535&L),k=343*(J=65535&k),N=343*(S=65535&N),R=343*(v=65535&R),Y=343*(P=65535&Y),q=343*(x=65535&q),X=343*(Z=65535&X),V=343*(K=65535&V),O=343*(W=65535&O),j=343*(z=65535&j),T=343*(_=65535&T),$=343*(AA=65535&$),IA=343*(gA=65535&IA),CA=343*(tA=65535&CA),QA=343*(iA=65535&QA),BA=343*(EA=65535&BA),eA=343*(nA=65535&eA),aA=343*(oA=65535&aA),rA=343*(hA=65535&rA),sA=343*wA,j+=(Q^=A.charCodeAt(I++))<<8,T+=B<<8,$+=n<<8,IA+=o<<8,CA+=s<<8,QA+=D<<8,BA+=y<<8,eA+=l<<8,aA+=M<<8,rA+=G<<8,Q=65535&(t=343*Q),wA=(sA+=d<<8)+((rA+=(aA+=(eA+=(BA+=(QA+=(CA+=(IA+=($+=(T+=(j+=(O+=(V+=(X+=(q+=(Y+=(R+=(N+=(k+=(L+=(U+=(H+=(p+=(F+=(u+=(c+=(f+=(r+=(a+=(e+=(i+=t>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)&65535,i=343*(B=65535&i),e=343*(n=65535&e),a=343*(o=65535&a),r=343*(s=65535&r),f=343*(D=65535&f),c=343*(y=65535&c),u=343*(l=65535&u),F=343*(M=65535&F),p=343*(G=65535&p),H=343*(d=65535&H),U=343*(m=65535&U),L=343*(b=65535&L),k=343*(J=65535&k),N=343*(S=65535&N),R=343*(v=65535&R),Y=343*(P=65535&Y),q=343*(x=65535&q),X=343*(Z=65535&X),V=343*(K=65535&V),O=343*(W=65535&O),j=343*(z=65535&j),T=343*(_=65535&T),$=343*(AA=65535&$),IA=343*(gA=65535&IA),CA=343*(tA=65535&CA),QA=343*(iA=65535&QA),BA=343*(EA=65535&BA),eA=343*(nA=65535&eA),aA=343*(oA=65535&aA),rA=343*(hA=65535&rA),sA=343*wA,j+=(Q^=A.charCodeAt(I++))<<8,T+=B<<8,$+=n<<8,IA+=o<<8,CA+=s<<8,QA+=D<<8,BA+=y<<8,eA+=l<<8,aA+=M<<8,rA+=G<<8,Q=65535&(t=343*Q),wA=(sA+=d<<8)+((rA+=(aA+=(eA+=(BA+=(QA+=(CA+=(IA+=($+=(T+=(j+=(O+=(V+=(X+=(q+=(Y+=(R+=(N+=(k+=(L+=(U+=(H+=(p+=(F+=(u+=(c+=(f+=(r+=(a+=(e+=(i+=t>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)&65535,i=343*(B=65535&i),e=343*(n=65535&e),a=343*(o=65535&a),r=343*(s=65535&r),f=343*(D=65535&f),c=343*(y=65535&c),u=343*(l=65535&u),F=343*(M=65535&F),p=343*(G=65535&p),H=343*(d=65535&H),U=343*(m=65535&U),L=343*(b=65535&L),k=343*(J=65535&k),N=343*(S=65535&N),R=343*(v=65535&R),Y=343*(P=65535&Y),q=343*(x=65535&q),X=343*(Z=65535&X),V=343*(K=65535&V),O=343*(W=65535&O),j=343*(z=65535&j),T=343*(_=65535&T),$=343*(AA=65535&$),IA=343*(gA=65535&IA),CA=343*(tA=65535&CA),QA=343*(iA=65535&QA),BA=343*(EA=65535&BA),eA=343*(nA=65535&eA),aA=343*(oA=65535&aA),rA=343*(hA=65535&rA),sA=343*wA,j+=(Q^=A.charCodeAt(I++))<<8,T+=B<<8,$+=n<<8,IA+=o<<8,CA+=s<<8,QA+=D<<8,BA+=y<<8,eA+=l<<8,aA+=M<<8,rA+=G<<8,sA+=d<<8,Q=65535&(t=343*Q),B=65535&(i+=t>>>16),n=65535&(e+=i>>>16),o=65535&(a+=e>>>16),s=65535&(r+=a>>>16),D=65535&(f+=r>>>16),y=65535&(c+=f>>>16),l=65535&(u+=c>>>16),M=65535&(F+=u>>>16),G=65535&(p+=F>>>16),d=65535&(H+=p>>>16),m=65535&(U+=H>>>16),b=65535&(L+=U>>>16),J=65535&(k+=L>>>16),S=65535&(N+=k>>>16),v=65535&(R+=N>>>16),P=65535&(Y+=R>>>16),x=65535&(q+=Y>>>16),Z=65535&(X+=q>>>16),K=65535&(V+=X>>>16),W=65535&(O+=V>>>16),z=65535&(j+=O>>>16),_=65535&(T+=j>>>16),AA=65535&($+=T>>>16),gA=65535&(IA+=$>>>16),tA=65535&(CA+=IA>>>16),iA=65535&(QA+=CA>>>16),EA=65535&(BA+=QA>>>16),nA=65535&(eA+=BA>>>16),oA=65535&(aA+=eA>>>16),wA=sA+((rA+=aA>>>16)>>>16)&65535,hA=65535&rA;for(;I>>16),n=65535&(e+=i>>>16),o=65535&(a+=e>>>16),s=65535&(r+=a>>>16),D=65535&(f+=r>>>16),y=65535&(c+=f>>>16),l=65535&(u+=c>>>16),M=65535&(F+=u>>>16),G=65535&(p+=F>>>16),d=65535&(H+=p>>>16),m=65535&(U+=H>>>16),b=65535&(L+=U>>>16),J=65535&(k+=L>>>16),S=65535&(N+=k>>>16),v=65535&(R+=N>>>16),P=65535&(Y+=R>>>16),x=65535&(q+=Y>>>16),Z=65535&(X+=q>>>16),K=65535&(V+=X>>>16),W=65535&(O+=V>>>16),z=65535&(j+=O>>>16),_=65535&(T+=j>>>16),AA=65535&($+=T>>>16),gA=65535&(IA+=$>>>16),tA=65535&(CA+=IA>>>16),iA=65535&(QA+=CA>>>16),EA=65535&(BA+=QA>>>16),nA=65535&(eA+=BA>>>16),oA=65535&(aA+=eA>>>16),wA=sA+((rA+=aA>>>16)>>>16)&65535,hA=65535&rA;return w(E[wA>>8]+E[255&wA]+E[hA>>8]+E[255&hA]+E[oA>>8]+E[255&oA]+E[nA>>8]+E[255&nA]+E[EA>>8]+E[255&EA]+E[iA>>8]+E[255&iA]+E[tA>>8]+E[255&tA]+E[gA>>8]+E[255&gA]+E[AA>>8]+E[255&AA]+E[_>>8]+E[255&_]+E[z>>8]+E[255&z]+E[W>>8]+E[255&W]+E[K>>8]+E[255&K]+E[Z>>8]+E[255&Z]+E[x>>8]+E[255&x]+E[P>>8]+E[255&P]+E[v>>8]+E[255&v]+E[S>>8]+E[255&S]+E[J>>8]+E[255&J]+E[b>>8]+E[255&b]+E[m>>8]+E[255&m]+E[d>>8]+E[255&d]+E[G>>8]+E[255&G]+E[M>>8]+E[255&M]+E[l>>8]+E[255&l]+E[y>>8]+E[255&y]+E[D>>8]+E[255&D]+E[s>>8]+E[255&s]+E[o>>8]+E[255&o]+E[n>>8]+E[255&n]+E[B>>8]+E[255&B]+E[Q>>8]+E[255&Q],512)}function Z(A){var I,g=A.length-3,C=h[512].offset,t=0,Q=0|C[31],i=0,B=0|C[30],e=0,n=0|C[29],a=0,o=0|C[28],r=0,s=0|C[27],f=0,D=0|C[26],c=0,y=0|C[25],u=0,l=0|C[24],F=0,M=0|C[23],p=0,G=0|C[22],H=0,d=0|C[21],U=0,m=0|C[20],L=0,b=0|C[19],k=0,J=0|C[18],N=0,S=0|C[17],R=0,v=0|C[16],Y=0,P=0|C[15],q=0,x=0|C[14],X=0,Z=0|C[13],V=0,K=0|C[12],O=0,W=0|C[11],j=0,z=0|C[10],T=0,_=0|C[9],$=0,AA=0|C[8],IA=0,gA=0|C[7],CA=0,tA=0|C[6],QA=0,iA=0|C[5],BA=0,EA=0|C[4],eA=0,nA=0|C[3],aA=0,oA=0|C[2],rA=0,hA=0|C[1],sA=0,wA=0|C[0];for(I=0;I>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)&65535,i=343*(B=65535&i),e=343*(n=65535&e),a=343*(o=65535&a),r=343*(s=65535&r),f=343*(D=65535&f),c=343*(y=65535&c),u=343*(l=65535&u),F=343*(M=65535&F),p=343*(G=65535&p),H=343*(d=65535&H),U=343*(m=65535&U),L=343*(b=65535&L),k=343*(J=65535&k),N=343*(S=65535&N),R=343*(v=65535&R),Y=343*(P=65535&Y),q=343*(x=65535&q),X=343*(Z=65535&X),V=343*(K=65535&V),O=343*(W=65535&O),j=343*(z=65535&j),T=343*(_=65535&T),$=343*(AA=65535&$),IA=343*(gA=65535&IA),CA=343*(tA=65535&CA),QA=343*(iA=65535&QA),BA=343*(EA=65535&BA),eA=343*(nA=65535&eA),aA=343*(oA=65535&aA),rA=343*(hA=65535&rA),sA=343*wA,j+=(Q^=A.charCodeAt(I++))<<8,T+=B<<8,$+=n<<8,IA+=o<<8,CA+=s<<8,QA+=D<<8,BA+=y<<8,eA+=l<<8,aA+=M<<8,rA+=G<<8,Q=65535&(t=343*Q),wA=(sA+=d<<8)+((rA+=(aA+=(eA+=(BA+=(QA+=(CA+=(IA+=($+=(T+=(j+=(O+=(V+=(X+=(q+=(Y+=(R+=(N+=(k+=(L+=(U+=(H+=(p+=(F+=(u+=(c+=(f+=(r+=(a+=(e+=(i+=t>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)&65535,i=343*(B=65535&i),e=343*(n=65535&e),a=343*(o=65535&a),r=343*(s=65535&r),f=343*(D=65535&f),c=343*(y=65535&c),u=343*(l=65535&u),F=343*(M=65535&F),p=343*(G=65535&p),H=343*(d=65535&H),U=343*(m=65535&U),L=343*(b=65535&L),k=343*(J=65535&k),N=343*(S=65535&N),R=343*(v=65535&R),Y=343*(P=65535&Y),q=343*(x=65535&q),X=343*(Z=65535&X),V=343*(K=65535&V),O=343*(W=65535&O),j=343*(z=65535&j),T=343*(_=65535&T),$=343*(AA=65535&$),IA=343*(gA=65535&IA),CA=343*(tA=65535&CA),QA=343*(iA=65535&QA),BA=343*(EA=65535&BA),eA=343*(nA=65535&eA),aA=343*(oA=65535&aA),rA=343*(hA=65535&rA),sA=343*wA,j+=(Q^=A.charCodeAt(I++))<<8,T+=B<<8,$+=n<<8,IA+=o<<8,CA+=s<<8,QA+=D<<8,BA+=y<<8,eA+=l<<8,aA+=M<<8,rA+=G<<8,Q=65535&(t=343*Q),wA=(sA+=d<<8)+((rA+=(aA+=(eA+=(BA+=(QA+=(CA+=(IA+=($+=(T+=(j+=(O+=(V+=(X+=(q+=(Y+=(R+=(N+=(k+=(L+=(U+=(H+=(p+=(F+=(u+=(c+=(f+=(r+=(a+=(e+=(i+=t>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)&65535,i=343*(B=65535&i),e=343*(n=65535&e),a=343*(o=65535&a),r=343*(s=65535&r),f=343*(D=65535&f),c=343*(y=65535&c),u=343*(l=65535&u),F=343*(M=65535&F),p=343*(G=65535&p),H=343*(d=65535&H),U=343*(m=65535&U),L=343*(b=65535&L),k=343*(J=65535&k),N=343*(S=65535&N),R=343*(v=65535&R),Y=343*(P=65535&Y),q=343*(x=65535&q),X=343*(Z=65535&X),V=343*(K=65535&V),O=343*(W=65535&O),j=343*(z=65535&j),T=343*(_=65535&T),$=343*(AA=65535&$),IA=343*(gA=65535&IA),CA=343*(tA=65535&CA),QA=343*(iA=65535&QA),BA=343*(EA=65535&BA),eA=343*(nA=65535&eA),aA=343*(oA=65535&aA),rA=343*(hA=65535&rA),sA=343*wA,j+=(Q^=A.charCodeAt(I++))<<8,T+=B<<8,$+=n<<8,IA+=o<<8,CA+=s<<8,QA+=D<<8,BA+=y<<8,eA+=l<<8,aA+=M<<8,rA+=G<<8,sA+=d<<8,Q=65535&(t=343*Q),B=65535&(i+=t>>>16),n=65535&(e+=i>>>16),o=65535&(a+=e>>>16),s=65535&(r+=a>>>16),D=65535&(f+=r>>>16),y=65535&(c+=f>>>16),l=65535&(u+=c>>>16),M=65535&(F+=u>>>16),G=65535&(p+=F>>>16),d=65535&(H+=p>>>16),m=65535&(U+=H>>>16),b=65535&(L+=U>>>16),J=65535&(k+=L>>>16),S=65535&(N+=k>>>16),v=65535&(R+=N>>>16),P=65535&(Y+=R>>>16),x=65535&(q+=Y>>>16),Z=65535&(X+=q>>>16),K=65535&(V+=X>>>16),W=65535&(O+=V>>>16),z=65535&(j+=O>>>16),_=65535&(T+=j>>>16),AA=65535&($+=T>>>16),gA=65535&(IA+=$>>>16),tA=65535&(CA+=IA>>>16),iA=65535&(QA+=CA>>>16),EA=65535&(BA+=QA>>>16),nA=65535&(eA+=BA>>>16),oA=65535&(aA+=eA>>>16),wA=sA+((rA+=aA>>>16)>>>16)&65535,hA=65535&rA,Q^=A.charCodeAt(I++);for(;I>>16),n=65535&(e+=i>>>16),o=65535&(a+=e>>>16),s=65535&(r+=a>>>16),D=65535&(f+=r>>>16),y=65535&(c+=f>>>16),l=65535&(u+=c>>>16),M=65535&(F+=u>>>16),G=65535&(p+=F>>>16),d=65535&(H+=p>>>16),m=65535&(U+=H>>>16),b=65535&(L+=U>>>16),J=65535&(k+=L>>>16),S=65535&(N+=k>>>16),v=65535&(R+=N>>>16),P=65535&(Y+=R>>>16),x=65535&(q+=Y>>>16),Z=65535&(X+=q>>>16),K=65535&(V+=X>>>16),W=65535&(O+=V>>>16),z=65535&(j+=O>>>16),_=65535&(T+=j>>>16),AA=65535&($+=T>>>16),gA=65535&(IA+=$>>>16),tA=65535&(CA+=IA>>>16),iA=65535&(QA+=CA>>>16),EA=65535&(BA+=QA>>>16),nA=65535&(eA+=BA>>>16),oA=65535&(aA+=eA>>>16),wA=sA+((rA+=aA>>>16)>>>16)&65535,hA=65535&rA,Q^=A.charCodeAt(I++);return w(E[wA>>8]+E[255&wA]+E[hA>>8]+E[255&hA]+E[oA>>8]+E[255&oA]+E[nA>>8]+E[255&nA]+E[EA>>8]+E[255&EA]+E[iA>>8]+E[255&iA]+E[tA>>8]+E[255&tA]+E[gA>>8]+E[255&gA]+E[AA>>8]+E[255&AA]+E[_>>8]+E[255&_]+E[z>>8]+E[255&z]+E[W>>8]+E[255&W]+E[K>>8]+E[255&K]+E[Z>>8]+E[255&Z]+E[x>>8]+E[255&x]+E[P>>8]+E[255&P]+E[v>>8]+E[255&v]+E[S>>8]+E[255&S]+E[J>>8]+E[255&J]+E[b>>8]+E[255&b]+E[m>>8]+E[255&m]+E[d>>8]+E[255&d]+E[G>>8]+E[255&G]+E[M>>8]+E[255&M]+E[l>>8]+E[255&l]+E[y>>8]+E[255&y]+E[D>>8]+E[255&D]+E[s>>8]+E[255&s]+E[o>>8]+E[255&o]+E[n>>8]+E[255&n]+E[B>>8]+E[255&B]+E[Q>>8]+E[255&Q],512)}function V(A){var I,g,C=A.length,t=h[512].offset,Q=0,i=0|t[31],B=0,e=0|t[30],n=0,a=0|t[29],o=0,r=0|t[28],s=0,f=0|t[27],D=0,c=0|t[26],y=0,u=0|t[25],l=0,F=0|t[24],M=0,p=0|t[23],G=0,H=0|t[22],d=0,U=0|t[21],m=0,L=0|t[20],b=0,k=0|t[19],J=0,N=0|t[18],S=0,R=0|t[17],v=0,Y=0|t[16],P=0,q=0|t[15],x=0,X=0|t[14],Z=0,V=0|t[13],K=0,O=0|t[12],W=0,j=0|t[11],z=0,T=0|t[10],_=0,$=0|t[9],AA=0,IA=0|t[8],gA=0,CA=0|t[7],tA=0,QA=0|t[6],iA=0,BA=0|t[5],EA=0,eA=0|t[4],nA=0,aA=0|t[3],oA=0,rA=0|t[2],hA=0,sA=0|t[1],wA=0,fA=0|t[0];for(g=0;g>6|192)<<8,_+=e<<8,AA+=a<<8,gA+=r<<8,tA+=f<<8,iA+=c<<8,EA+=u<<8,nA+=F<<8,oA+=p<<8,hA+=H<<8,wA+=U<<8,i=65535&(Q=343*i),e=65535&(B+=Q>>>16),a=65535&(n+=B>>>16),r=65535&(o+=n>>>16),f=65535&(s+=o>>>16),c=65535&(D+=s>>>16),u=65535&(y+=D>>>16),F=65535&(l+=y>>>16),p=65535&(M+=l>>>16),H=65535&(G+=M>>>16),U=65535&(d+=G>>>16),L=65535&(m+=d>>>16),k=65535&(b+=m>>>16),N=65535&(J+=b>>>16),R=65535&(S+=J>>>16),Y=65535&(v+=S>>>16),q=65535&(P+=v>>>16),X=65535&(x+=P>>>16),V=65535&(Z+=x>>>16),O=65535&(K+=Z>>>16),j=65535&(W+=K>>>16),T=65535&(z+=W>>>16),$=65535&(_+=z>>>16),IA=65535&(AA+=_>>>16),CA=65535&(gA+=AA>>>16),QA=65535&(tA+=gA>>>16),BA=65535&(iA+=tA>>>16),eA=65535&(EA+=iA>>>16),aA=65535&(nA+=EA>>>16),rA=65535&(oA+=nA>>>16),fA=wA+((hA+=oA>>>16)>>>16)&65535,sA=65535&hA,i^=63&I|128):55296==(64512&I)&&g+1>18|240)<<8,_+=e<<8,AA+=a<<8,gA+=r<<8,tA+=f<<8,iA+=c<<8,EA+=u<<8,nA+=F<<8,oA+=p<<8,hA+=H<<8,i=65535&(Q=343*i),fA=(wA+=U<<8)+((hA+=(oA+=(nA+=(EA+=(iA+=(tA+=(gA+=(AA+=(_+=(z+=(W+=(K+=(Z+=(x+=(P+=(v+=(S+=(J+=(b+=(m+=(d+=(G+=(M+=(l+=(y+=(D+=(s+=(o+=(n+=(B+=Q>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)&65535,B=343*(e=65535&B),n=343*(a=65535&n),o=343*(r=65535&o),s=343*(f=65535&s),D=343*(c=65535&D),y=343*(u=65535&y),l=343*(F=65535&l),M=343*(p=65535&M),G=343*(H=65535&G),d=343*(U=65535&d),m=343*(L=65535&m),b=343*(k=65535&b),J=343*(N=65535&J),S=343*(R=65535&S),v=343*(Y=65535&v),P=343*(q=65535&P),x=343*(X=65535&x),Z=343*(V=65535&Z),K=343*(O=65535&K),W=343*(j=65535&W),z=343*(T=65535&z),_=343*($=65535&_),AA=343*(IA=65535&AA),gA=343*(CA=65535&gA),tA=343*(QA=65535&tA),iA=343*(BA=65535&iA),EA=343*(eA=65535&EA),nA=343*(aA=65535&nA),oA=343*(rA=65535&oA),hA=343*(sA=65535&hA),wA=343*fA,z+=(i^=I>>12&63|128)<<8,_+=e<<8,AA+=a<<8,gA+=r<<8,tA+=f<<8,iA+=c<<8,EA+=u<<8,nA+=F<<8,oA+=p<<8,hA+=H<<8,i=65535&(Q=343*i),fA=(wA+=U<<8)+((hA+=(oA+=(nA+=(EA+=(iA+=(tA+=(gA+=(AA+=(_+=(z+=(W+=(K+=(Z+=(x+=(P+=(v+=(S+=(J+=(b+=(m+=(d+=(G+=(M+=(l+=(y+=(D+=(s+=(o+=(n+=(B+=Q>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)&65535,B=343*(e=65535&B),n=343*(a=65535&n),o=343*(r=65535&o),s=343*(f=65535&s),D=343*(c=65535&D),y=343*(u=65535&y),l=343*(F=65535&l),M=343*(p=65535&M),G=343*(H=65535&G),d=343*(U=65535&d),m=343*(L=65535&m),b=343*(k=65535&b),J=343*(N=65535&J),S=343*(R=65535&S),v=343*(Y=65535&v),P=343*(q=65535&P),x=343*(X=65535&x),Z=343*(V=65535&Z),K=343*(O=65535&K),W=343*(j=65535&W),z=343*(T=65535&z),_=343*($=65535&_),AA=343*(IA=65535&AA),gA=343*(CA=65535&gA),tA=343*(QA=65535&tA),iA=343*(BA=65535&iA),EA=343*(eA=65535&EA),nA=343*(aA=65535&nA),oA=343*(rA=65535&oA),hA=343*(sA=65535&hA),wA=343*fA,z+=(i^=I>>6&63|128)<<8,_+=e<<8,AA+=a<<8,gA+=r<<8,tA+=f<<8,iA+=c<<8,EA+=u<<8,nA+=F<<8,oA+=p<<8,hA+=H<<8,wA+=U<<8,i=65535&(Q=343*i),e=65535&(B+=Q>>>16),a=65535&(n+=B>>>16),r=65535&(o+=n>>>16),f=65535&(s+=o>>>16),c=65535&(D+=s>>>16),u=65535&(y+=D>>>16),F=65535&(l+=y>>>16),p=65535&(M+=l>>>16),H=65535&(G+=M>>>16),U=65535&(d+=G>>>16),L=65535&(m+=d>>>16),k=65535&(b+=m>>>16),N=65535&(J+=b>>>16),R=65535&(S+=J>>>16),Y=65535&(v+=S>>>16),q=65535&(P+=v>>>16),X=65535&(x+=P>>>16),V=65535&(Z+=x>>>16),O=65535&(K+=Z>>>16),j=65535&(W+=K>>>16),T=65535&(z+=W>>>16),$=65535&(_+=z>>>16),IA=65535&(AA+=_>>>16),CA=65535&(gA+=AA>>>16),QA=65535&(tA+=gA>>>16),BA=65535&(iA+=tA>>>16),eA=65535&(EA+=iA>>>16),aA=65535&(nA+=EA>>>16),rA=65535&(oA+=nA>>>16),fA=wA+((hA+=oA>>>16)>>>16)&65535,sA=65535&hA,i^=63&I|128):(B=343*e,n=343*a,o=343*r,s=343*f,D=343*c,y=343*u,l=343*F,M=343*p,G=343*H,d=343*U,m=343*L,b=343*k,J=343*N,S=343*R,v=343*Y,P=343*q,x=343*X,Z=343*V,K=343*O,W=343*j,z=343*T,_=343*$,AA=343*IA,gA=343*CA,tA=343*QA,iA=343*BA,EA=343*eA,nA=343*aA,oA=343*rA,hA=343*sA,wA=343*fA,z+=(i^=I>>12|224)<<8,_+=e<<8,AA+=a<<8,gA+=r<<8,tA+=f<<8,iA+=c<<8,EA+=u<<8,nA+=F<<8,oA+=p<<8,hA+=H<<8,i=65535&(Q=343*i),fA=(wA+=U<<8)+((hA+=(oA+=(nA+=(EA+=(iA+=(tA+=(gA+=(AA+=(_+=(z+=(W+=(K+=(Z+=(x+=(P+=(v+=(S+=(J+=(b+=(m+=(d+=(G+=(M+=(l+=(y+=(D+=(s+=(o+=(n+=(B+=Q>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)&65535,B=343*(e=65535&B),n=343*(a=65535&n),o=343*(r=65535&o),s=343*(f=65535&s),D=343*(c=65535&D),y=343*(u=65535&y),l=343*(F=65535&l),M=343*(p=65535&M),G=343*(H=65535&G),d=343*(U=65535&d),m=343*(L=65535&m),b=343*(k=65535&b),J=343*(N=65535&J),S=343*(R=65535&S),v=343*(Y=65535&v),P=343*(q=65535&P),x=343*(X=65535&x),Z=343*(V=65535&Z),K=343*(O=65535&K),W=343*(j=65535&W),z=343*(T=65535&z),_=343*($=65535&_),AA=343*(IA=65535&AA),gA=343*(CA=65535&gA),tA=343*(QA=65535&tA),iA=343*(BA=65535&iA),EA=343*(eA=65535&EA),nA=343*(aA=65535&nA),oA=343*(rA=65535&oA),hA=343*(sA=65535&hA),wA=343*fA,z+=(i^=I>>6&63|128)<<8,_+=e<<8,AA+=a<<8,gA+=r<<8,tA+=f<<8,iA+=c<<8,EA+=u<<8,nA+=F<<8,oA+=p<<8,hA+=H<<8,wA+=U<<8,i=65535&(Q=343*i),e=65535&(B+=Q>>>16),a=65535&(n+=B>>>16),r=65535&(o+=n>>>16),f=65535&(s+=o>>>16),c=65535&(D+=s>>>16),u=65535&(y+=D>>>16),F=65535&(l+=y>>>16),p=65535&(M+=l>>>16),H=65535&(G+=M>>>16),U=65535&(d+=G>>>16),L=65535&(m+=d>>>16),k=65535&(b+=m>>>16),N=65535&(J+=b>>>16),R=65535&(S+=J>>>16),Y=65535&(v+=S>>>16),q=65535&(P+=v>>>16),X=65535&(x+=P>>>16),V=65535&(Z+=x>>>16),O=65535&(K+=Z>>>16),j=65535&(W+=K>>>16),T=65535&(z+=W>>>16),$=65535&(_+=z>>>16),IA=65535&(AA+=_>>>16),CA=65535&(gA+=AA>>>16),QA=65535&(tA+=gA>>>16),BA=65535&(iA+=tA>>>16),eA=65535&(EA+=iA>>>16),aA=65535&(nA+=EA>>>16),rA=65535&(oA+=nA>>>16),fA=wA+((hA+=oA>>>16)>>>16)&65535,sA=65535&hA,i^=63&I|128),B=343*e,n=343*a,o=343*r,s=343*f,D=343*c,y=343*u,l=343*F,M=343*p,G=343*H,d=343*U,m=343*L,b=343*k,J=343*N,S=343*R,v=343*Y,P=343*q,x=343*X,Z=343*V,K=343*O,W=343*j,z=343*T,_=343*$,AA=343*IA,gA=343*CA,tA=343*QA,iA=343*BA,EA=343*eA,nA=343*aA,oA=343*rA,hA=343*sA,wA=343*fA,z+=i<<8,_+=e<<8,AA+=a<<8,gA+=r<<8,tA+=f<<8,iA+=c<<8,EA+=u<<8,nA+=F<<8,oA+=p<<8,hA+=H<<8,wA+=U<<8,i=65535&(Q=343*i),e=65535&(B+=Q>>>16),a=65535&(n+=B>>>16),r=65535&(o+=n>>>16),f=65535&(s+=o>>>16),c=65535&(D+=s>>>16),u=65535&(y+=D>>>16),F=65535&(l+=y>>>16),p=65535&(M+=l>>>16),H=65535&(G+=M>>>16),U=65535&(d+=G>>>16),L=65535&(m+=d>>>16),k=65535&(b+=m>>>16),N=65535&(J+=b>>>16),R=65535&(S+=J>>>16),Y=65535&(v+=S>>>16),q=65535&(P+=v>>>16),X=65535&(x+=P>>>16),V=65535&(Z+=x>>>16),O=65535&(K+=Z>>>16),j=65535&(W+=K>>>16),T=65535&(z+=W>>>16),$=65535&(_+=z>>>16),IA=65535&(AA+=_>>>16),CA=65535&(gA+=AA>>>16),QA=65535&(tA+=gA>>>16),BA=65535&(iA+=tA>>>16),eA=65535&(EA+=iA>>>16),aA=65535&(nA+=EA>>>16),rA=65535&(oA+=nA>>>16),fA=wA+((hA+=oA>>>16)>>>16)&65535,sA=65535&hA;return w(E[fA>>8]+E[255&fA]+E[sA>>8]+E[255&sA]+E[rA>>8]+E[255&rA]+E[aA>>8]+E[255&aA]+E[eA>>8]+E[255&eA]+E[BA>>8]+E[255&BA]+E[QA>>8]+E[255&QA]+E[CA>>8]+E[255&CA]+E[IA>>8]+E[255&IA]+E[$>>8]+E[255&$]+E[T>>8]+E[255&T]+E[j>>8]+E[255&j]+E[O>>8]+E[255&O]+E[V>>8]+E[255&V]+E[X>>8]+E[255&X]+E[q>>8]+E[255&q]+E[Y>>8]+E[255&Y]+E[R>>8]+E[255&R]+E[N>>8]+E[255&N]+E[k>>8]+E[255&k]+E[L>>8]+E[255&L]+E[U>>8]+E[255&U]+E[H>>8]+E[255&H]+E[p>>8]+E[255&p]+E[F>>8]+E[255&F]+E[u>>8]+E[255&u]+E[c>>8]+E[255&c]+E[f>>8]+E[255&f]+E[r>>8]+E[255&r]+E[a>>8]+E[255&a]+E[e>>8]+E[255&e]+E[i>>8]+E[255&i],512)}function K(A){var I,g,C=A.length,t=h[512].offset,Q=0,i=0|t[31],B=0,e=0|t[30],n=0,a=0|t[29],o=0,r=0|t[28],s=0,f=0|t[27],D=0,c=0|t[26],y=0,u=0|t[25],l=0,F=0|t[24],M=0,p=0|t[23],G=0,H=0|t[22],d=0,U=0|t[21],m=0,L=0|t[20],b=0,k=0|t[19],J=0,N=0|t[18],S=0,R=0|t[17],v=0,Y=0|t[16],P=0,q=0|t[15],x=0,X=0|t[14],Z=0,V=0|t[13],K=0,O=0|t[12],W=0,j=0|t[11],z=0,T=0|t[10],_=0,$=0|t[9],AA=0,IA=0|t[8],gA=0,CA=0|t[7],tA=0,QA=0|t[6],iA=0,BA=0|t[5],EA=0,eA=0|t[4],nA=0,aA=0|t[3],oA=0,rA=0|t[2],hA=0,sA=0|t[1],wA=0,fA=0|t[0];for(g=0;g>>16),a=65535&(n+=B>>>16),r=65535&(o+=n>>>16),f=65535&(s+=o>>>16),c=65535&(D+=s>>>16),u=65535&(y+=D>>>16),F=65535&(l+=y>>>16),p=65535&(M+=l>>>16),H=65535&(G+=M>>>16),U=65535&(d+=G>>>16),L=65535&(m+=d>>>16),k=65535&(b+=m>>>16),N=65535&(J+=b>>>16),R=65535&(S+=J>>>16),Y=65535&(v+=S>>>16),q=65535&(P+=v>>>16),X=65535&(x+=P>>>16),V=65535&(Z+=x>>>16),O=65535&(K+=Z>>>16),j=65535&(W+=K>>>16),T=65535&(z+=W>>>16),$=65535&(_+=z>>>16),IA=65535&(AA+=_>>>16),CA=65535&(gA+=AA>>>16),QA=65535&(tA+=gA>>>16),BA=65535&(iA+=tA>>>16),eA=65535&(EA+=iA>>>16),aA=65535&(nA+=EA>>>16),rA=65535&(oA+=nA>>>16),fA=wA+((hA+=oA>>>16)>>>16)&65535,sA=65535&hA,(I=A.charCodeAt(g))<128?i^=I:I<2048?(B=343*e,n=343*a,o=343*r,s=343*f,D=343*c,y=343*u,l=343*F,M=343*p,G=343*H,d=343*U,m=343*L,b=343*k,J=343*N,S=343*R,v=343*Y,P=343*q,x=343*X,Z=343*V,K=343*O,W=343*j,z=343*T,_=343*$,AA=343*IA,gA=343*CA,tA=343*QA,iA=343*BA,EA=343*eA,nA=343*aA,oA=343*rA,hA=343*sA,wA=343*fA,z+=(i^=I>>6|192)<<8,_+=e<<8,AA+=a<<8,gA+=r<<8,tA+=f<<8,iA+=c<<8,EA+=u<<8,nA+=F<<8,oA+=p<<8,hA+=H<<8,wA+=U<<8,i=65535&(Q=343*i),e=65535&(B+=Q>>>16),a=65535&(n+=B>>>16),r=65535&(o+=n>>>16),f=65535&(s+=o>>>16),c=65535&(D+=s>>>16),u=65535&(y+=D>>>16),F=65535&(l+=y>>>16),p=65535&(M+=l>>>16),H=65535&(G+=M>>>16),U=65535&(d+=G>>>16),L=65535&(m+=d>>>16),k=65535&(b+=m>>>16),N=65535&(J+=b>>>16),R=65535&(S+=J>>>16),Y=65535&(v+=S>>>16),q=65535&(P+=v>>>16),X=65535&(x+=P>>>16),V=65535&(Z+=x>>>16),O=65535&(K+=Z>>>16),j=65535&(W+=K>>>16),T=65535&(z+=W>>>16),$=65535&(_+=z>>>16),IA=65535&(AA+=_>>>16),CA=65535&(gA+=AA>>>16),QA=65535&(tA+=gA>>>16),BA=65535&(iA+=tA>>>16),eA=65535&(EA+=iA>>>16),aA=65535&(nA+=EA>>>16),rA=65535&(oA+=nA>>>16),fA=wA+((hA+=oA>>>16)>>>16)&65535,sA=65535&hA,i^=63&I|128):55296==(64512&I)&&g+1>18|240)<<8,_+=e<<8,AA+=a<<8,gA+=r<<8,tA+=f<<8,iA+=c<<8,EA+=u<<8,nA+=F<<8,oA+=p<<8,hA+=H<<8,i=65535&(Q=343*i),fA=(wA+=U<<8)+((hA+=(oA+=(nA+=(EA+=(iA+=(tA+=(gA+=(AA+=(_+=(z+=(W+=(K+=(Z+=(x+=(P+=(v+=(S+=(J+=(b+=(m+=(d+=(G+=(M+=(l+=(y+=(D+=(s+=(o+=(n+=(B+=Q>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)&65535,B=343*(e=65535&B),n=343*(a=65535&n),o=343*(r=65535&o),s=343*(f=65535&s),D=343*(c=65535&D),y=343*(u=65535&y),l=343*(F=65535&l),M=343*(p=65535&M),G=343*(H=65535&G),d=343*(U=65535&d),m=343*(L=65535&m),b=343*(k=65535&b),J=343*(N=65535&J),S=343*(R=65535&S),v=343*(Y=65535&v),P=343*(q=65535&P),x=343*(X=65535&x),Z=343*(V=65535&Z),K=343*(O=65535&K),W=343*(j=65535&W),z=343*(T=65535&z),_=343*($=65535&_),AA=343*(IA=65535&AA),gA=343*(CA=65535&gA),tA=343*(QA=65535&tA),iA=343*(BA=65535&iA),EA=343*(eA=65535&EA),nA=343*(aA=65535&nA),oA=343*(rA=65535&oA),hA=343*(sA=65535&hA),wA=343*fA,z+=(i^=I>>12&63|128)<<8,_+=e<<8,AA+=a<<8,gA+=r<<8,tA+=f<<8,iA+=c<<8,EA+=u<<8,nA+=F<<8,oA+=p<<8,hA+=H<<8,i=65535&(Q=343*i),fA=(wA+=U<<8)+((hA+=(oA+=(nA+=(EA+=(iA+=(tA+=(gA+=(AA+=(_+=(z+=(W+=(K+=(Z+=(x+=(P+=(v+=(S+=(J+=(b+=(m+=(d+=(G+=(M+=(l+=(y+=(D+=(s+=(o+=(n+=(B+=Q>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)&65535,B=343*(e=65535&B),n=343*(a=65535&n),o=343*(r=65535&o),s=343*(f=65535&s),D=343*(c=65535&D),y=343*(u=65535&y),l=343*(F=65535&l),M=343*(p=65535&M),G=343*(H=65535&G),d=343*(U=65535&d),m=343*(L=65535&m),b=343*(k=65535&b),J=343*(N=65535&J),S=343*(R=65535&S),v=343*(Y=65535&v),P=343*(q=65535&P),x=343*(X=65535&x),Z=343*(V=65535&Z),K=343*(O=65535&K),W=343*(j=65535&W),z=343*(T=65535&z),_=343*($=65535&_),AA=343*(IA=65535&AA),gA=343*(CA=65535&gA),tA=343*(QA=65535&tA),iA=343*(BA=65535&iA),EA=343*(eA=65535&EA),nA=343*(aA=65535&nA),oA=343*(rA=65535&oA),hA=343*(sA=65535&hA),wA=343*fA,z+=(i^=I>>6&63|128)<<8,_+=e<<8,AA+=a<<8,gA+=r<<8,tA+=f<<8,iA+=c<<8,EA+=u<<8,nA+=F<<8,oA+=p<<8,hA+=H<<8,wA+=U<<8,i=65535&(Q=343*i),e=65535&(B+=Q>>>16),a=65535&(n+=B>>>16),r=65535&(o+=n>>>16),f=65535&(s+=o>>>16),c=65535&(D+=s>>>16),u=65535&(y+=D>>>16),F=65535&(l+=y>>>16),p=65535&(M+=l>>>16),H=65535&(G+=M>>>16),U=65535&(d+=G>>>16),L=65535&(m+=d>>>16),k=65535&(b+=m>>>16),N=65535&(J+=b>>>16),R=65535&(S+=J>>>16),Y=65535&(v+=S>>>16),q=65535&(P+=v>>>16),X=65535&(x+=P>>>16),V=65535&(Z+=x>>>16),O=65535&(K+=Z>>>16),j=65535&(W+=K>>>16),T=65535&(z+=W>>>16),$=65535&(_+=z>>>16),IA=65535&(AA+=_>>>16),CA=65535&(gA+=AA>>>16),QA=65535&(tA+=gA>>>16),BA=65535&(iA+=tA>>>16),eA=65535&(EA+=iA>>>16),aA=65535&(nA+=EA>>>16),rA=65535&(oA+=nA>>>16),fA=wA+((hA+=oA>>>16)>>>16)&65535,sA=65535&hA,i^=63&I|128):(B=343*e,n=343*a,o=343*r,s=343*f,D=343*c,y=343*u,l=343*F,M=343*p,G=343*H,d=343*U,m=343*L,b=343*k,J=343*N,S=343*R,v=343*Y,P=343*q,x=343*X,Z=343*V,K=343*O,W=343*j,z=343*T,_=343*$,AA=343*IA,gA=343*CA,tA=343*QA,iA=343*BA,EA=343*eA,nA=343*aA,oA=343*rA,hA=343*sA,wA=343*fA,z+=(i^=I>>12|224)<<8,_+=e<<8,AA+=a<<8,gA+=r<<8,tA+=f<<8,iA+=c<<8,EA+=u<<8,nA+=F<<8,oA+=p<<8,hA+=H<<8,i=65535&(Q=343*i),fA=(wA+=U<<8)+((hA+=(oA+=(nA+=(EA+=(iA+=(tA+=(gA+=(AA+=(_+=(z+=(W+=(K+=(Z+=(x+=(P+=(v+=(S+=(J+=(b+=(m+=(d+=(G+=(M+=(l+=(y+=(D+=(s+=(o+=(n+=(B+=Q>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)&65535,B=343*(e=65535&B),n=343*(a=65535&n),o=343*(r=65535&o),s=343*(f=65535&s),D=343*(c=65535&D),y=343*(u=65535&y),l=343*(F=65535&l),M=343*(p=65535&M),G=343*(H=65535&G),d=343*(U=65535&d),m=343*(L=65535&m),b=343*(k=65535&b),J=343*(N=65535&J),S=343*(R=65535&S),v=343*(Y=65535&v),P=343*(q=65535&P),x=343*(X=65535&x),Z=343*(V=65535&Z),K=343*(O=65535&K),W=343*(j=65535&W),z=343*(T=65535&z),_=343*($=65535&_),AA=343*(IA=65535&AA),gA=343*(CA=65535&gA),tA=343*(QA=65535&tA),iA=343*(BA=65535&iA),EA=343*(eA=65535&EA),nA=343*(aA=65535&nA),oA=343*(rA=65535&oA),hA=343*(sA=65535&hA),wA=343*fA,z+=(i^=I>>6&63|128)<<8,_+=e<<8,AA+=a<<8,gA+=r<<8,tA+=f<<8,iA+=c<<8,EA+=u<<8,nA+=F<<8,oA+=p<<8,hA+=H<<8,wA+=U<<8,i=65535&(Q=343*i),e=65535&(B+=Q>>>16),a=65535&(n+=B>>>16),r=65535&(o+=n>>>16),f=65535&(s+=o>>>16),c=65535&(D+=s>>>16),u=65535&(y+=D>>>16),F=65535&(l+=y>>>16),p=65535&(M+=l>>>16),H=65535&(G+=M>>>16),U=65535&(d+=G>>>16),L=65535&(m+=d>>>16),k=65535&(b+=m>>>16),N=65535&(J+=b>>>16),R=65535&(S+=J>>>16),Y=65535&(v+=S>>>16),q=65535&(P+=v>>>16),X=65535&(x+=P>>>16),V=65535&(Z+=x>>>16),O=65535&(K+=Z>>>16),j=65535&(W+=K>>>16),T=65535&(z+=W>>>16),$=65535&(_+=z>>>16),IA=65535&(AA+=_>>>16),CA=65535&(gA+=AA>>>16),QA=65535&(tA+=gA>>>16),BA=65535&(iA+=tA>>>16),eA=65535&(EA+=iA>>>16),aA=65535&(nA+=EA>>>16),rA=65535&(oA+=nA>>>16),fA=wA+((hA+=oA>>>16)>>>16)&65535,sA=65535&hA,i^=63&I|128);return w(E[fA>>8]+E[255&fA]+E[sA>>8]+E[255&sA]+E[rA>>8]+E[255&rA]+E[aA>>8]+E[255&aA]+E[eA>>8]+E[255&eA]+E[BA>>8]+E[255&BA]+E[QA>>8]+E[255&QA]+E[CA>>8]+E[255&CA]+E[IA>>8]+E[255&IA]+E[$>>8]+E[255&$]+E[T>>8]+E[255&T]+E[j>>8]+E[255&j]+E[O>>8]+E[255&O]+E[V>>8]+E[255&V]+E[X>>8]+E[255&X]+E[q>>8]+E[255&q]+E[Y>>8]+E[255&Y]+E[R>>8]+E[255&R]+E[N>>8]+E[255&N]+E[k>>8]+E[255&k]+E[L>>8]+E[255&L]+E[U>>8]+E[255&U]+E[H>>8]+E[255&H]+E[p>>8]+E[255&p]+E[F>>8]+E[255&F]+E[u>>8]+E[255&u]+E[c>>8]+E[255&c]+E[f>>8]+E[255&f]+E[r>>8]+E[255&r]+E[a>>8]+E[255&a]+E[e>>8]+E[255&e]+E[i>>8]+E[255&i],512)}function O(A){var I,g=A.length-3,C=h[1024].offset,t=0,Q=0|C[63],i=0,B=0|C[62],e=0,n=0|C[61],a=0,o=0|C[60],r=0,s=0|C[59],f=0,D=0|C[58],c=0,y=0|C[57],u=0,l=0|C[56],F=0,M=0|C[55],p=0,G=0|C[54],H=0,d=0|C[53],U=0,m=0|C[52],L=0,b=0|C[51],k=0,J=0|C[50],N=0,S=0|C[49],R=0,v=0|C[48],Y=0,P=0|C[47],q=0,x=0|C[46],X=0,Z=0|C[45],V=0,K=0|C[44],O=0,W=0|C[43],j=0,z=0|C[42],T=0,_=0|C[41],$=0,AA=0|C[40],IA=0,gA=0|C[39],CA=0,tA=0|C[38],QA=0,iA=0|C[37],BA=0,EA=0|C[36],eA=0,nA=0|C[35],aA=0,oA=0|C[34],rA=0,hA=0|C[33],sA=0,wA=0|C[32],fA=0,DA=0|C[31],cA=0,yA=0|C[30],uA=0,lA=0|C[29],FA=0,MA=0|C[28],pA=0,GA=0|C[27],HA=0,dA=0|C[26],UA=0,mA=0|C[25],LA=0,bA=0|C[24],kA=0,JA=0|C[23],NA=0,SA=0|C[22],RA=0,vA=0|C[21],YA=0,PA=0|C[20],qA=0,xA=0|C[19],XA=0,ZA=0|C[18],VA=0,KA=0|C[17],OA=0,WA=0|C[16],jA=0,zA=0|C[15],TA=0,_A=0|C[14],$A=0,AI=0|C[13],II=0,gI=0|C[12],CI=0,tI=0|C[11],QI=0,iI=0|C[10],BI=0,EI=0|C[9],eI=0,nI=0|C[8],aI=0,oI=0|C[7],rI=0,hI=0|C[6],sI=0,wI=0|C[5],fI=0,DI=0|C[4],cI=0,yI=0|C[3],uI=0,lI=0|C[2],FI=0,MI=0|C[1],pI=0,GI=0|C[0];for(I=0;I>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)&65535,i=397*(B=65535&i),e=397*(n=65535&e),a=397*(o=65535&a),r=397*(s=65535&r),f=397*(D=65535&f),c=397*(y=65535&c),u=397*(l=65535&u),F=397*(M=65535&F),p=397*(G=65535&p),H=397*(d=65535&H),U=397*(m=65535&U),L=397*(b=65535&L),k=397*(J=65535&k),N=397*(S=65535&N),R=397*(v=65535&R),Y=397*(P=65535&Y),q=397*(x=65535&q),X=397*(Z=65535&X),V=397*(K=65535&V),O=397*(W=65535&O),j=397*(z=65535&j),T=397*(_=65535&T),$=397*(AA=65535&$),IA=397*(gA=65535&IA),CA=397*(tA=65535&CA),QA=397*(iA=65535&QA),BA=397*(EA=65535&BA),eA=397*(nA=65535&eA),aA=397*(oA=65535&aA),rA=397*(hA=65535&rA),sA=397*(wA=65535&sA),fA=397*(DA=65535&fA),cA=397*(yA=65535&cA),uA=397*(lA=65535&uA),FA=397*(MA=65535&FA),pA=397*(GA=65535&pA),HA=397*(dA=65535&HA),UA=397*(mA=65535&UA),LA=397*(bA=65535&LA),kA=397*(JA=65535&kA),NA=397*(SA=65535&NA),RA=397*(vA=65535&RA),YA=397*(PA=65535&YA),qA=397*(xA=65535&qA),XA=397*(ZA=65535&XA),VA=397*(KA=65535&VA),OA=397*(WA=65535&OA),jA=397*(zA=65535&jA),TA=397*(_A=65535&TA),$A=397*(AI=65535&$A),II=397*(gI=65535&II),CI=397*(tI=65535&CI),QI=397*(iI=65535&QI),BI=397*(EI=65535&BI),eI=397*(nI=65535&eI),aI=397*(oI=65535&aI),rI=397*(hI=65535&rI),sI=397*(wI=65535&sI),fI=397*(DI=65535&fI),cI=397*(yI=65535&cI),uI=397*(lI=65535&uI),FI=397*(MI=65535&FI),pI=397*GI,RA+=(Q^=A.charCodeAt(I++))<<8,YA+=B<<8,qA+=n<<8,XA+=o<<8,VA+=s<<8,OA+=D<<8,jA+=y<<8,TA+=l<<8,$A+=M<<8,II+=G<<8,CI+=d<<8,QI+=m<<8,BI+=b<<8,eI+=J<<8,aI+=S<<8,rI+=v<<8,sI+=P<<8,fI+=x<<8,cI+=Z<<8,uI+=K<<8,FI+=W<<8,Q=65535&(t=397*Q),GI=(pI+=z<<8)+((FI+=(uI+=(cI+=(fI+=(sI+=(rI+=(aI+=(eI+=(BI+=(QI+=(CI+=(II+=($A+=(TA+=(jA+=(OA+=(VA+=(XA+=(qA+=(YA+=(RA+=(NA+=(kA+=(LA+=(UA+=(HA+=(pA+=(FA+=(uA+=(cA+=(fA+=(sA+=(rA+=(aA+=(eA+=(BA+=(QA+=(CA+=(IA+=($+=(T+=(j+=(O+=(V+=(X+=(q+=(Y+=(R+=(N+=(k+=(L+=(U+=(H+=(p+=(F+=(u+=(c+=(f+=(r+=(a+=(e+=(i+=t>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)&65535,i=397*(B=65535&i),e=397*(n=65535&e),a=397*(o=65535&a),r=397*(s=65535&r),f=397*(D=65535&f),c=397*(y=65535&c),u=397*(l=65535&u),F=397*(M=65535&F),p=397*(G=65535&p),H=397*(d=65535&H),U=397*(m=65535&U),L=397*(b=65535&L),k=397*(J=65535&k),N=397*(S=65535&N),R=397*(v=65535&R),Y=397*(P=65535&Y),q=397*(x=65535&q),X=397*(Z=65535&X),V=397*(K=65535&V),O=397*(W=65535&O),j=397*(z=65535&j),T=397*(_=65535&T),$=397*(AA=65535&$),IA=397*(gA=65535&IA),CA=397*(tA=65535&CA),QA=397*(iA=65535&QA),BA=397*(EA=65535&BA),eA=397*(nA=65535&eA),aA=397*(oA=65535&aA),rA=397*(hA=65535&rA),sA=397*(wA=65535&sA),fA=397*(DA=65535&fA),cA=397*(yA=65535&cA),uA=397*(lA=65535&uA),FA=397*(MA=65535&FA),pA=397*(GA=65535&pA),HA=397*(dA=65535&HA),UA=397*(mA=65535&UA),LA=397*(bA=65535&LA),kA=397*(JA=65535&kA),NA=397*(SA=65535&NA),RA=397*(vA=65535&RA),YA=397*(PA=65535&YA),qA=397*(xA=65535&qA),XA=397*(ZA=65535&XA),VA=397*(KA=65535&VA),OA=397*(WA=65535&OA),jA=397*(zA=65535&jA),TA=397*(_A=65535&TA),$A=397*(AI=65535&$A),II=397*(gI=65535&II),CI=397*(tI=65535&CI),QI=397*(iI=65535&QI),BI=397*(EI=65535&BI),eI=397*(nI=65535&eI),aI=397*(oI=65535&aI),rI=397*(hI=65535&rI),sI=397*(wI=65535&sI),fI=397*(DI=65535&fI),cI=397*(yI=65535&cI),uI=397*(lI=65535&uI),FI=397*(MI=65535&FI),pI=397*GI,RA+=(Q^=A.charCodeAt(I++))<<8,YA+=B<<8,qA+=n<<8,XA+=o<<8,VA+=s<<8,OA+=D<<8,jA+=y<<8,TA+=l<<8,$A+=M<<8,II+=G<<8,CI+=d<<8,QI+=m<<8,BI+=b<<8,eI+=J<<8,aI+=S<<8,rI+=v<<8,sI+=P<<8,fI+=x<<8,cI+=Z<<8,uI+=K<<8,FI+=W<<8,Q=65535&(t=397*Q),GI=(pI+=z<<8)+((FI+=(uI+=(cI+=(fI+=(sI+=(rI+=(aI+=(eI+=(BI+=(QI+=(CI+=(II+=($A+=(TA+=(jA+=(OA+=(VA+=(XA+=(qA+=(YA+=(RA+=(NA+=(kA+=(LA+=(UA+=(HA+=(pA+=(FA+=(uA+=(cA+=(fA+=(sA+=(rA+=(aA+=(eA+=(BA+=(QA+=(CA+=(IA+=($+=(T+=(j+=(O+=(V+=(X+=(q+=(Y+=(R+=(N+=(k+=(L+=(U+=(H+=(p+=(F+=(u+=(c+=(f+=(r+=(a+=(e+=(i+=t>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)&65535,i=397*(B=65535&i),e=397*(n=65535&e),a=397*(o=65535&a),r=397*(s=65535&r),f=397*(D=65535&f),c=397*(y=65535&c),u=397*(l=65535&u),F=397*(M=65535&F),p=397*(G=65535&p),H=397*(d=65535&H),U=397*(m=65535&U),L=397*(b=65535&L),k=397*(J=65535&k),N=397*(S=65535&N),R=397*(v=65535&R),Y=397*(P=65535&Y),q=397*(x=65535&q),X=397*(Z=65535&X),V=397*(K=65535&V),O=397*(W=65535&O),j=397*(z=65535&j),T=397*(_=65535&T),$=397*(AA=65535&$),IA=397*(gA=65535&IA),CA=397*(tA=65535&CA),QA=397*(iA=65535&QA),BA=397*(EA=65535&BA),eA=397*(nA=65535&eA),aA=397*(oA=65535&aA),rA=397*(hA=65535&rA),sA=397*(wA=65535&sA),fA=397*(DA=65535&fA),cA=397*(yA=65535&cA),uA=397*(lA=65535&uA),FA=397*(MA=65535&FA),pA=397*(GA=65535&pA),HA=397*(dA=65535&HA),UA=397*(mA=65535&UA),LA=397*(bA=65535&LA),kA=397*(JA=65535&kA),NA=397*(SA=65535&NA),RA=397*(vA=65535&RA),YA=397*(PA=65535&YA),qA=397*(xA=65535&qA),XA=397*(ZA=65535&XA),VA=397*(KA=65535&VA),OA=397*(WA=65535&OA),jA=397*(zA=65535&jA),TA=397*(_A=65535&TA),$A=397*(AI=65535&$A),II=397*(gI=65535&II),CI=397*(tI=65535&CI),QI=397*(iI=65535&QI),BI=397*(EI=65535&BI),eI=397*(nI=65535&eI),aI=397*(oI=65535&aI),rI=397*(hI=65535&rI),sI=397*(wI=65535&sI),fI=397*(DI=65535&fI),cI=397*(yI=65535&cI),uI=397*(lI=65535&uI),FI=397*(MI=65535&FI),pI=397*GI,RA+=(Q^=A.charCodeAt(I++))<<8,YA+=B<<8,qA+=n<<8,XA+=o<<8,VA+=s<<8,OA+=D<<8,jA+=y<<8,TA+=l<<8,$A+=M<<8,II+=G<<8,CI+=d<<8,QI+=m<<8,BI+=b<<8,eI+=J<<8,aI+=S<<8,rI+=v<<8,sI+=P<<8,fI+=x<<8,cI+=Z<<8,uI+=K<<8,FI+=W<<8,pI+=z<<8,Q=65535&(t=397*Q),B=65535&(i+=t>>>16),n=65535&(e+=i>>>16),o=65535&(a+=e>>>16),s=65535&(r+=a>>>16),D=65535&(f+=r>>>16),y=65535&(c+=f>>>16),l=65535&(u+=c>>>16),M=65535&(F+=u>>>16),G=65535&(p+=F>>>16),d=65535&(H+=p>>>16),m=65535&(U+=H>>>16),b=65535&(L+=U>>>16),J=65535&(k+=L>>>16),S=65535&(N+=k>>>16),v=65535&(R+=N>>>16),P=65535&(Y+=R>>>16),x=65535&(q+=Y>>>16),Z=65535&(X+=q>>>16),K=65535&(V+=X>>>16),W=65535&(O+=V>>>16),z=65535&(j+=O>>>16),_=65535&(T+=j>>>16),AA=65535&($+=T>>>16),gA=65535&(IA+=$>>>16),tA=65535&(CA+=IA>>>16),iA=65535&(QA+=CA>>>16),EA=65535&(BA+=QA>>>16),nA=65535&(eA+=BA>>>16),oA=65535&(aA+=eA>>>16),hA=65535&(rA+=aA>>>16),wA=65535&(sA+=rA>>>16),DA=65535&(fA+=sA>>>16),yA=65535&(cA+=fA>>>16),lA=65535&(uA+=cA>>>16),MA=65535&(FA+=uA>>>16),GA=65535&(pA+=FA>>>16),dA=65535&(HA+=pA>>>16),mA=65535&(UA+=HA>>>16),bA=65535&(LA+=UA>>>16),JA=65535&(kA+=LA>>>16),SA=65535&(NA+=kA>>>16),vA=65535&(RA+=NA>>>16),PA=65535&(YA+=RA>>>16),xA=65535&(qA+=YA>>>16),ZA=65535&(XA+=qA>>>16),KA=65535&(VA+=XA>>>16),WA=65535&(OA+=VA>>>16),zA=65535&(jA+=OA>>>16),_A=65535&(TA+=jA>>>16),AI=65535&($A+=TA>>>16),gI=65535&(II+=$A>>>16),tI=65535&(CI+=II>>>16),iI=65535&(QI+=CI>>>16),EI=65535&(BI+=QI>>>16),nI=65535&(eI+=BI>>>16),oI=65535&(aI+=eI>>>16),hI=65535&(rI+=aI>>>16),wI=65535&(sI+=rI>>>16),DI=65535&(fI+=sI>>>16),yI=65535&(cI+=fI>>>16),lI=65535&(uI+=cI>>>16),GI=pI+((FI+=uI>>>16)>>>16)&65535,MI=65535&FI;for(;I>>16),n=65535&(e+=i>>>16),o=65535&(a+=e>>>16),s=65535&(r+=a>>>16),D=65535&(f+=r>>>16),y=65535&(c+=f>>>16),l=65535&(u+=c>>>16),M=65535&(F+=u>>>16),G=65535&(p+=F>>>16),d=65535&(H+=p>>>16),m=65535&(U+=H>>>16),b=65535&(L+=U>>>16),J=65535&(k+=L>>>16),S=65535&(N+=k>>>16),v=65535&(R+=N>>>16),P=65535&(Y+=R>>>16),x=65535&(q+=Y>>>16),Z=65535&(X+=q>>>16),K=65535&(V+=X>>>16),W=65535&(O+=V>>>16),z=65535&(j+=O>>>16),_=65535&(T+=j>>>16),AA=65535&($+=T>>>16),gA=65535&(IA+=$>>>16),tA=65535&(CA+=IA>>>16),iA=65535&(QA+=CA>>>16),EA=65535&(BA+=QA>>>16),nA=65535&(eA+=BA>>>16),oA=65535&(aA+=eA>>>16),hA=65535&(rA+=aA>>>16),wA=65535&(sA+=rA>>>16),DA=65535&(fA+=sA>>>16),yA=65535&(cA+=fA>>>16),lA=65535&(uA+=cA>>>16),MA=65535&(FA+=uA>>>16),GA=65535&(pA+=FA>>>16),dA=65535&(HA+=pA>>>16),mA=65535&(UA+=HA>>>16),bA=65535&(LA+=UA>>>16),JA=65535&(kA+=LA>>>16),SA=65535&(NA+=kA>>>16),vA=65535&(RA+=NA>>>16),PA=65535&(YA+=RA>>>16),xA=65535&(qA+=YA>>>16),ZA=65535&(XA+=qA>>>16),KA=65535&(VA+=XA>>>16),WA=65535&(OA+=VA>>>16),zA=65535&(jA+=OA>>>16),_A=65535&(TA+=jA>>>16),AI=65535&($A+=TA>>>16),gI=65535&(II+=$A>>>16),tI=65535&(CI+=II>>>16),iI=65535&(QI+=CI>>>16),EI=65535&(BI+=QI>>>16),nI=65535&(eI+=BI>>>16),oI=65535&(aI+=eI>>>16),hI=65535&(rI+=aI>>>16),wI=65535&(sI+=rI>>>16),DI=65535&(fI+=sI>>>16),yI=65535&(cI+=fI>>>16),lI=65535&(uI+=cI>>>16),GI=pI+((FI+=uI>>>16)>>>16)&65535,MI=65535&FI;return w(E[GI>>8]+E[255&GI]+E[MI>>8]+E[255&MI]+E[lI>>8]+E[255&lI]+E[yI>>8]+E[255&yI]+E[DI>>8]+E[255&DI]+E[wI>>8]+E[255&wI]+E[hI>>8]+E[255&hI]+E[oI>>8]+E[255&oI]+E[nI>>8]+E[255&nI]+E[EI>>8]+E[255&EI]+E[iI>>8]+E[255&iI]+E[tI>>8]+E[255&tI]+E[gI>>8]+E[255&gI]+E[AI>>8]+E[255&AI]+E[_A>>8]+E[255&_A]+E[zA>>8]+E[255&zA]+E[WA>>8]+E[255&WA]+E[KA>>8]+E[255&KA]+E[ZA>>8]+E[255&ZA]+E[xA>>8]+E[255&xA]+E[PA>>8]+E[255&PA]+E[vA>>8]+E[255&vA]+E[SA>>8]+E[255&SA]+E[JA>>8]+E[255&JA]+E[bA>>8]+E[255&bA]+E[mA>>8]+E[255&mA]+E[dA>>8]+E[255&dA]+E[GA>>8]+E[255&GA]+E[MA>>8]+E[255&MA]+E[lA>>8]+E[255&lA]+E[yA>>8]+E[255&yA]+E[DA>>8]+E[255&DA]+E[wA>>8]+E[255&wA]+E[hA>>8]+E[255&hA]+E[oA>>8]+E[255&oA]+E[nA>>8]+E[255&nA]+E[EA>>8]+E[255&EA]+E[iA>>8]+E[255&iA]+E[tA>>8]+E[255&tA]+E[gA>>8]+E[255&gA]+E[AA>>8]+E[255&AA]+E[_>>8]+E[255&_]+E[z>>8]+E[255&z]+E[W>>8]+E[255&W]+E[K>>8]+E[255&K]+E[Z>>8]+E[255&Z]+E[x>>8]+E[255&x]+E[P>>8]+E[255&P]+E[v>>8]+E[255&v]+E[S>>8]+E[255&S]+E[J>>8]+E[255&J]+E[b>>8]+E[255&b]+E[m>>8]+E[255&m]+E[d>>8]+E[255&d]+E[G>>8]+E[255&G]+E[M>>8]+E[255&M]+E[l>>8]+E[255&l]+E[y>>8]+E[255&y]+E[D>>8]+E[255&D]+E[s>>8]+E[255&s]+E[o>>8]+E[255&o]+E[n>>8]+E[255&n]+E[B>>8]+E[255&B]+E[Q>>8]+E[255&Q],1024)}function W(A){var I,g=A.length-3,C=h[1024].offset,t=0,Q=0|C[63],i=0,B=0|C[62],e=0,n=0|C[61],a=0,o=0|C[60],r=0,s=0|C[59],f=0,D=0|C[58],c=0,y=0|C[57],u=0,l=0|C[56],F=0,M=0|C[55],p=0,G=0|C[54],H=0,d=0|C[53],U=0,m=0|C[52],L=0,b=0|C[51],k=0,J=0|C[50],N=0,S=0|C[49],R=0,v=0|C[48],Y=0,P=0|C[47],q=0,x=0|C[46],X=0,Z=0|C[45],V=0,K=0|C[44],O=0,W=0|C[43],j=0,z=0|C[42],T=0,_=0|C[41],$=0,AA=0|C[40],IA=0,gA=0|C[39],CA=0,tA=0|C[38],QA=0,iA=0|C[37],BA=0,EA=0|C[36],eA=0,nA=0|C[35],aA=0,oA=0|C[34],rA=0,hA=0|C[33],sA=0,wA=0|C[32],fA=0,DA=0|C[31],cA=0,yA=0|C[30],uA=0,lA=0|C[29],FA=0,MA=0|C[28],pA=0,GA=0|C[27],HA=0,dA=0|C[26],UA=0,mA=0|C[25],LA=0,bA=0|C[24],kA=0,JA=0|C[23],NA=0,SA=0|C[22],RA=0,vA=0|C[21],YA=0,PA=0|C[20],qA=0,xA=0|C[19],XA=0,ZA=0|C[18],VA=0,KA=0|C[17],OA=0,WA=0|C[16],jA=0,zA=0|C[15],TA=0,_A=0|C[14],$A=0,AI=0|C[13],II=0,gI=0|C[12],CI=0,tI=0|C[11],QI=0,iI=0|C[10],BI=0,EI=0|C[9],eI=0,nI=0|C[8],aI=0,oI=0|C[7],rI=0,hI=0|C[6],sI=0,wI=0|C[5],fI=0,DI=0|C[4],cI=0,yI=0|C[3],uI=0,lI=0|C[2],FI=0,MI=0|C[1],pI=0,GI=0|C[0];for(I=0;I>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)&65535,i=397*(B=65535&i),e=397*(n=65535&e),a=397*(o=65535&a),r=397*(s=65535&r),f=397*(D=65535&f),c=397*(y=65535&c),u=397*(l=65535&u),F=397*(M=65535&F),p=397*(G=65535&p),H=397*(d=65535&H),U=397*(m=65535&U),L=397*(b=65535&L),k=397*(J=65535&k),N=397*(S=65535&N),R=397*(v=65535&R),Y=397*(P=65535&Y),q=397*(x=65535&q),X=397*(Z=65535&X),V=397*(K=65535&V),O=397*(W=65535&O),j=397*(z=65535&j),T=397*(_=65535&T),$=397*(AA=65535&$),IA=397*(gA=65535&IA),CA=397*(tA=65535&CA),QA=397*(iA=65535&QA),BA=397*(EA=65535&BA),eA=397*(nA=65535&eA),aA=397*(oA=65535&aA),rA=397*(hA=65535&rA),sA=397*(wA=65535&sA),fA=397*(DA=65535&fA),cA=397*(yA=65535&cA),uA=397*(lA=65535&uA),FA=397*(MA=65535&FA),pA=397*(GA=65535&pA),HA=397*(dA=65535&HA),UA=397*(mA=65535&UA),LA=397*(bA=65535&LA),kA=397*(JA=65535&kA),NA=397*(SA=65535&NA),RA=397*(vA=65535&RA),YA=397*(PA=65535&YA),qA=397*(xA=65535&qA),XA=397*(ZA=65535&XA),VA=397*(KA=65535&VA),OA=397*(WA=65535&OA),jA=397*(zA=65535&jA),TA=397*(_A=65535&TA),$A=397*(AI=65535&$A),II=397*(gI=65535&II),CI=397*(tI=65535&CI),QI=397*(iI=65535&QI),BI=397*(EI=65535&BI),eI=397*(nI=65535&eI),aI=397*(oI=65535&aI),rI=397*(hI=65535&rI),sI=397*(wI=65535&sI),fI=397*(DI=65535&fI),cI=397*(yI=65535&cI),uI=397*(lI=65535&uI),FI=397*(MI=65535&FI),pI=397*GI,RA+=(Q^=A.charCodeAt(I++))<<8,YA+=B<<8,qA+=n<<8,XA+=o<<8,VA+=s<<8,OA+=D<<8,jA+=y<<8,TA+=l<<8,$A+=M<<8,II+=G<<8,CI+=d<<8,QI+=m<<8,BI+=b<<8,eI+=J<<8,aI+=S<<8,rI+=v<<8,sI+=P<<8,fI+=x<<8,cI+=Z<<8,uI+=K<<8,FI+=W<<8,Q=65535&(t=397*Q),GI=(pI+=z<<8)+((FI+=(uI+=(cI+=(fI+=(sI+=(rI+=(aI+=(eI+=(BI+=(QI+=(CI+=(II+=($A+=(TA+=(jA+=(OA+=(VA+=(XA+=(qA+=(YA+=(RA+=(NA+=(kA+=(LA+=(UA+=(HA+=(pA+=(FA+=(uA+=(cA+=(fA+=(sA+=(rA+=(aA+=(eA+=(BA+=(QA+=(CA+=(IA+=($+=(T+=(j+=(O+=(V+=(X+=(q+=(Y+=(R+=(N+=(k+=(L+=(U+=(H+=(p+=(F+=(u+=(c+=(f+=(r+=(a+=(e+=(i+=t>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)&65535,i=397*(B=65535&i),e=397*(n=65535&e),a=397*(o=65535&a),r=397*(s=65535&r),f=397*(D=65535&f),c=397*(y=65535&c),u=397*(l=65535&u),F=397*(M=65535&F),p=397*(G=65535&p),H=397*(d=65535&H),U=397*(m=65535&U),L=397*(b=65535&L),k=397*(J=65535&k),N=397*(S=65535&N),R=397*(v=65535&R),Y=397*(P=65535&Y),q=397*(x=65535&q),X=397*(Z=65535&X),V=397*(K=65535&V),O=397*(W=65535&O),j=397*(z=65535&j),T=397*(_=65535&T),$=397*(AA=65535&$),IA=397*(gA=65535&IA),CA=397*(tA=65535&CA),QA=397*(iA=65535&QA),BA=397*(EA=65535&BA),eA=397*(nA=65535&eA),aA=397*(oA=65535&aA),rA=397*(hA=65535&rA),sA=397*(wA=65535&sA),fA=397*(DA=65535&fA),cA=397*(yA=65535&cA),uA=397*(lA=65535&uA),FA=397*(MA=65535&FA),pA=397*(GA=65535&pA),HA=397*(dA=65535&HA),UA=397*(mA=65535&UA),LA=397*(bA=65535&LA),kA=397*(JA=65535&kA),NA=397*(SA=65535&NA),RA=397*(vA=65535&RA),YA=397*(PA=65535&YA),qA=397*(xA=65535&qA),XA=397*(ZA=65535&XA),VA=397*(KA=65535&VA),OA=397*(WA=65535&OA),jA=397*(zA=65535&jA),TA=397*(_A=65535&TA),$A=397*(AI=65535&$A),II=397*(gI=65535&II),CI=397*(tI=65535&CI),QI=397*(iI=65535&QI),BI=397*(EI=65535&BI),eI=397*(nI=65535&eI),aI=397*(oI=65535&aI),rI=397*(hI=65535&rI),sI=397*(wI=65535&sI),fI=397*(DI=65535&fI),cI=397*(yI=65535&cI),uI=397*(lI=65535&uI),FI=397*(MI=65535&FI),pI=397*GI,RA+=(Q^=A.charCodeAt(I++))<<8,YA+=B<<8,qA+=n<<8,XA+=o<<8,VA+=s<<8,OA+=D<<8,jA+=y<<8,TA+=l<<8,$A+=M<<8,II+=G<<8,CI+=d<<8,QI+=m<<8,BI+=b<<8,eI+=J<<8,aI+=S<<8,rI+=v<<8,sI+=P<<8,fI+=x<<8,cI+=Z<<8,uI+=K<<8,FI+=W<<8,Q=65535&(t=397*Q),GI=(pI+=z<<8)+((FI+=(uI+=(cI+=(fI+=(sI+=(rI+=(aI+=(eI+=(BI+=(QI+=(CI+=(II+=($A+=(TA+=(jA+=(OA+=(VA+=(XA+=(qA+=(YA+=(RA+=(NA+=(kA+=(LA+=(UA+=(HA+=(pA+=(FA+=(uA+=(cA+=(fA+=(sA+=(rA+=(aA+=(eA+=(BA+=(QA+=(CA+=(IA+=($+=(T+=(j+=(O+=(V+=(X+=(q+=(Y+=(R+=(N+=(k+=(L+=(U+=(H+=(p+=(F+=(u+=(c+=(f+=(r+=(a+=(e+=(i+=t>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)&65535,i=397*(B=65535&i),e=397*(n=65535&e),a=397*(o=65535&a),r=397*(s=65535&r),f=397*(D=65535&f),c=397*(y=65535&c),u=397*(l=65535&u),F=397*(M=65535&F),p=397*(G=65535&p),H=397*(d=65535&H),U=397*(m=65535&U),L=397*(b=65535&L),k=397*(J=65535&k),N=397*(S=65535&N),R=397*(v=65535&R),Y=397*(P=65535&Y),q=397*(x=65535&q),X=397*(Z=65535&X),V=397*(K=65535&V),O=397*(W=65535&O),j=397*(z=65535&j),T=397*(_=65535&T),$=397*(AA=65535&$),IA=397*(gA=65535&IA),CA=397*(tA=65535&CA),QA=397*(iA=65535&QA),BA=397*(EA=65535&BA),eA=397*(nA=65535&eA),aA=397*(oA=65535&aA),rA=397*(hA=65535&rA),sA=397*(wA=65535&sA),fA=397*(DA=65535&fA),cA=397*(yA=65535&cA),uA=397*(lA=65535&uA),FA=397*(MA=65535&FA),pA=397*(GA=65535&pA),HA=397*(dA=65535&HA),UA=397*(mA=65535&UA),LA=397*(bA=65535&LA),kA=397*(JA=65535&kA),NA=397*(SA=65535&NA),RA=397*(vA=65535&RA),YA=397*(PA=65535&YA),qA=397*(xA=65535&qA),XA=397*(ZA=65535&XA),VA=397*(KA=65535&VA),OA=397*(WA=65535&OA),jA=397*(zA=65535&jA),TA=397*(_A=65535&TA),$A=397*(AI=65535&$A),II=397*(gI=65535&II),CI=397*(tI=65535&CI),QI=397*(iI=65535&QI),BI=397*(EI=65535&BI),eI=397*(nI=65535&eI),aI=397*(oI=65535&aI),rI=397*(hI=65535&rI),sI=397*(wI=65535&sI),fI=397*(DI=65535&fI),cI=397*(yI=65535&cI),uI=397*(lI=65535&uI),FI=397*(MI=65535&FI),pI=397*GI,RA+=(Q^=A.charCodeAt(I++))<<8,YA+=B<<8,qA+=n<<8,XA+=o<<8,VA+=s<<8,OA+=D<<8,jA+=y<<8,TA+=l<<8,$A+=M<<8,II+=G<<8,CI+=d<<8,QI+=m<<8,BI+=b<<8,eI+=J<<8,aI+=S<<8,rI+=v<<8,sI+=P<<8,fI+=x<<8,cI+=Z<<8,uI+=K<<8,FI+=W<<8,pI+=z<<8,Q=65535&(t=397*Q),B=65535&(i+=t>>>16),n=65535&(e+=i>>>16),o=65535&(a+=e>>>16),s=65535&(r+=a>>>16),D=65535&(f+=r>>>16),y=65535&(c+=f>>>16),l=65535&(u+=c>>>16),M=65535&(F+=u>>>16),G=65535&(p+=F>>>16),d=65535&(H+=p>>>16),m=65535&(U+=H>>>16),b=65535&(L+=U>>>16),J=65535&(k+=L>>>16),S=65535&(N+=k>>>16),v=65535&(R+=N>>>16),P=65535&(Y+=R>>>16),x=65535&(q+=Y>>>16),Z=65535&(X+=q>>>16),K=65535&(V+=X>>>16),W=65535&(O+=V>>>16),z=65535&(j+=O>>>16),_=65535&(T+=j>>>16),AA=65535&($+=T>>>16),gA=65535&(IA+=$>>>16),tA=65535&(CA+=IA>>>16),iA=65535&(QA+=CA>>>16),EA=65535&(BA+=QA>>>16),nA=65535&(eA+=BA>>>16),oA=65535&(aA+=eA>>>16),hA=65535&(rA+=aA>>>16),wA=65535&(sA+=rA>>>16),DA=65535&(fA+=sA>>>16),yA=65535&(cA+=fA>>>16),lA=65535&(uA+=cA>>>16),MA=65535&(FA+=uA>>>16),GA=65535&(pA+=FA>>>16),dA=65535&(HA+=pA>>>16),mA=65535&(UA+=HA>>>16),bA=65535&(LA+=UA>>>16),JA=65535&(kA+=LA>>>16),SA=65535&(NA+=kA>>>16),vA=65535&(RA+=NA>>>16),PA=65535&(YA+=RA>>>16),xA=65535&(qA+=YA>>>16),ZA=65535&(XA+=qA>>>16),KA=65535&(VA+=XA>>>16),WA=65535&(OA+=VA>>>16),zA=65535&(jA+=OA>>>16),_A=65535&(TA+=jA>>>16),AI=65535&($A+=TA>>>16),gI=65535&(II+=$A>>>16),tI=65535&(CI+=II>>>16),iI=65535&(QI+=CI>>>16),EI=65535&(BI+=QI>>>16),nI=65535&(eI+=BI>>>16),oI=65535&(aI+=eI>>>16),hI=65535&(rI+=aI>>>16),wI=65535&(sI+=rI>>>16),DI=65535&(fI+=sI>>>16),yI=65535&(cI+=fI>>>16),lI=65535&(uI+=cI>>>16),GI=pI+((FI+=uI>>>16)>>>16)&65535,MI=65535&FI,Q^=A.charCodeAt(I++);for(;I>>16),n=65535&(e+=i>>>16),o=65535&(a+=e>>>16),s=65535&(r+=a>>>16),D=65535&(f+=r>>>16),y=65535&(c+=f>>>16),l=65535&(u+=c>>>16),M=65535&(F+=u>>>16),G=65535&(p+=F>>>16),d=65535&(H+=p>>>16),m=65535&(U+=H>>>16),b=65535&(L+=U>>>16),J=65535&(k+=L>>>16),S=65535&(N+=k>>>16),v=65535&(R+=N>>>16),P=65535&(Y+=R>>>16),x=65535&(q+=Y>>>16),Z=65535&(X+=q>>>16),K=65535&(V+=X>>>16),W=65535&(O+=V>>>16),z=65535&(j+=O>>>16),_=65535&(T+=j>>>16),AA=65535&($+=T>>>16),gA=65535&(IA+=$>>>16),tA=65535&(CA+=IA>>>16),iA=65535&(QA+=CA>>>16),EA=65535&(BA+=QA>>>16),nA=65535&(eA+=BA>>>16),oA=65535&(aA+=eA>>>16),hA=65535&(rA+=aA>>>16),wA=65535&(sA+=rA>>>16),DA=65535&(fA+=sA>>>16),yA=65535&(cA+=fA>>>16),lA=65535&(uA+=cA>>>16),MA=65535&(FA+=uA>>>16),GA=65535&(pA+=FA>>>16),dA=65535&(HA+=pA>>>16),mA=65535&(UA+=HA>>>16),bA=65535&(LA+=UA>>>16),JA=65535&(kA+=LA>>>16),SA=65535&(NA+=kA>>>16),vA=65535&(RA+=NA>>>16),PA=65535&(YA+=RA>>>16),xA=65535&(qA+=YA>>>16),ZA=65535&(XA+=qA>>>16),KA=65535&(VA+=XA>>>16),WA=65535&(OA+=VA>>>16),zA=65535&(jA+=OA>>>16),_A=65535&(TA+=jA>>>16),AI=65535&($A+=TA>>>16),gI=65535&(II+=$A>>>16),tI=65535&(CI+=II>>>16),iI=65535&(QI+=CI>>>16),EI=65535&(BI+=QI>>>16),nI=65535&(eI+=BI>>>16),oI=65535&(aI+=eI>>>16),hI=65535&(rI+=aI>>>16),wI=65535&(sI+=rI>>>16),DI=65535&(fI+=sI>>>16),yI=65535&(cI+=fI>>>16),lI=65535&(uI+=cI>>>16),GI=pI+((FI+=uI>>>16)>>>16)&65535,MI=65535&FI,Q^=A.charCodeAt(I++);return w(E[GI>>8]+E[255&GI]+E[MI>>8]+E[255&MI]+E[lI>>8]+E[255&lI]+E[yI>>8]+E[255&yI]+E[DI>>8]+E[255&DI]+E[wI>>8]+E[255&wI]+E[hI>>8]+E[255&hI]+E[oI>>8]+E[255&oI]+E[nI>>8]+E[255&nI]+E[EI>>8]+E[255&EI]+E[iI>>8]+E[255&iI]+E[tI>>8]+E[255&tI]+E[gI>>8]+E[255&gI]+E[AI>>8]+E[255&AI]+E[_A>>8]+E[255&_A]+E[zA>>8]+E[255&zA]+E[WA>>8]+E[255&WA]+E[KA>>8]+E[255&KA]+E[ZA>>8]+E[255&ZA]+E[xA>>8]+E[255&xA]+E[PA>>8]+E[255&PA]+E[vA>>8]+E[255&vA]+E[SA>>8]+E[255&SA]+E[JA>>8]+E[255&JA]+E[bA>>8]+E[255&bA]+E[mA>>8]+E[255&mA]+E[dA>>8]+E[255&dA]+E[GA>>8]+E[255&GA]+E[MA>>8]+E[255&MA]+E[lA>>8]+E[255&lA]+E[yA>>8]+E[255&yA]+E[DA>>8]+E[255&DA]+E[wA>>8]+E[255&wA]+E[hA>>8]+E[255&hA]+E[oA>>8]+E[255&oA]+E[nA>>8]+E[255&nA]+E[EA>>8]+E[255&EA]+E[iA>>8]+E[255&iA]+E[tA>>8]+E[255&tA]+E[gA>>8]+E[255&gA]+E[AA>>8]+E[255&AA]+E[_>>8]+E[255&_]+E[z>>8]+E[255&z]+E[W>>8]+E[255&W]+E[K>>8]+E[255&K]+E[Z>>8]+E[255&Z]+E[x>>8]+E[255&x]+E[P>>8]+E[255&P]+E[v>>8]+E[255&v]+E[S>>8]+E[255&S]+E[J>>8]+E[255&J]+E[b>>8]+E[255&b]+E[m>>8]+E[255&m]+E[d>>8]+E[255&d]+E[G>>8]+E[255&G]+E[M>>8]+E[255&M]+E[l>>8]+E[255&l]+E[y>>8]+E[255&y]+E[D>>8]+E[255&D]+E[s>>8]+E[255&s]+E[o>>8]+E[255&o]+E[n>>8]+E[255&n]+E[B>>8]+E[255&B]+E[Q>>8]+E[255&Q],1024)}function j(A){var I,g,C=A.length,t=h[1024].offset,Q=0,i=0|t[63],B=0,e=0|t[62],n=0,a=0|t[61],o=0,r=0|t[60],s=0,f=0|t[59],D=0,c=0|t[58],y=0,u=0|t[57],l=0,F=0|t[56],M=0,p=0|t[55],G=0,H=0|t[54],d=0,U=0|t[53],m=0,L=0|t[52],b=0,k=0|t[51],J=0,N=0|t[50],S=0,R=0|t[49],v=0,Y=0|t[48],P=0,q=0|t[47],x=0,X=0|t[46],Z=0,V=0|t[45],K=0,O=0|t[44],W=0,j=0|t[43],z=0,T=0|t[42],_=0,$=0|t[41],AA=0,IA=0|t[40],gA=0,CA=0|t[39],tA=0,QA=0|t[38],iA=0,BA=0|t[37],EA=0,eA=0|t[36],nA=0,aA=0|t[35],oA=0,rA=0|t[34],hA=0,sA=0|t[33],wA=0,fA=0|t[32],DA=0,cA=0|t[31],yA=0,uA=0|t[30],lA=0,FA=0|t[29],MA=0,pA=0|t[28],GA=0,HA=0|t[27],dA=0,UA=0|t[26],mA=0,LA=0|t[25],bA=0,kA=0|t[24],JA=0,NA=0|t[23],SA=0,RA=0|t[22],vA=0,YA=0|t[21],PA=0,qA=0|t[20],xA=0,XA=0|t[19],ZA=0,VA=0|t[18],KA=0,OA=0|t[17],WA=0,jA=0|t[16],zA=0,TA=0|t[15],_A=0,$A=0|t[14],AI=0,II=0|t[13],gI=0,CI=0|t[12],tI=0,QI=0|t[11],iI=0,BI=0|t[10],EI=0,eI=0|t[9],nI=0,aI=0|t[8],oI=0,rI=0|t[7],hI=0,sI=0|t[6],wI=0,fI=0|t[5],DI=0,cI=0|t[4],yI=0,uI=0|t[3],lI=0,FI=0|t[2],MI=0,pI=0|t[1],GI=0,HI=0|t[0];for(g=0;g>6|192)<<8,PA+=e<<8,xA+=a<<8,ZA+=r<<8,KA+=f<<8,WA+=c<<8,zA+=u<<8,_A+=F<<8,AI+=p<<8,gI+=H<<8,tI+=U<<8,iI+=L<<8,EI+=k<<8,nI+=N<<8,oI+=R<<8,hI+=Y<<8,wI+=q<<8,DI+=X<<8,yI+=V<<8,lI+=O<<8,MI+=j<<8,GI+=T<<8,i=65535&(Q=397*i),e=65535&(B+=Q>>>16),a=65535&(n+=B>>>16),r=65535&(o+=n>>>16),f=65535&(s+=o>>>16),c=65535&(D+=s>>>16),u=65535&(y+=D>>>16),F=65535&(l+=y>>>16),p=65535&(M+=l>>>16),H=65535&(G+=M>>>16),U=65535&(d+=G>>>16),L=65535&(m+=d>>>16),k=65535&(b+=m>>>16),N=65535&(J+=b>>>16),R=65535&(S+=J>>>16),Y=65535&(v+=S>>>16),q=65535&(P+=v>>>16),X=65535&(x+=P>>>16),V=65535&(Z+=x>>>16),O=65535&(K+=Z>>>16),j=65535&(W+=K>>>16),T=65535&(z+=W>>>16),$=65535&(_+=z>>>16),IA=65535&(AA+=_>>>16),CA=65535&(gA+=AA>>>16),QA=65535&(tA+=gA>>>16),BA=65535&(iA+=tA>>>16),eA=65535&(EA+=iA>>>16),aA=65535&(nA+=EA>>>16),rA=65535&(oA+=nA>>>16),sA=65535&(hA+=oA>>>16),fA=65535&(wA+=hA>>>16),cA=65535&(DA+=wA>>>16),uA=65535&(yA+=DA>>>16),FA=65535&(lA+=yA>>>16),pA=65535&(MA+=lA>>>16),HA=65535&(GA+=MA>>>16),UA=65535&(dA+=GA>>>16),LA=65535&(mA+=dA>>>16),kA=65535&(bA+=mA>>>16),NA=65535&(JA+=bA>>>16),RA=65535&(SA+=JA>>>16),YA=65535&(vA+=SA>>>16),qA=65535&(PA+=vA>>>16),XA=65535&(xA+=PA>>>16),VA=65535&(ZA+=xA>>>16),OA=65535&(KA+=ZA>>>16),jA=65535&(WA+=KA>>>16),TA=65535&(zA+=WA>>>16),$A=65535&(_A+=zA>>>16),II=65535&(AI+=_A>>>16),CI=65535&(gI+=AI>>>16),QI=65535&(tI+=gI>>>16),BI=65535&(iI+=tI>>>16),eI=65535&(EI+=iI>>>16),aI=65535&(nI+=EI>>>16),rI=65535&(oI+=nI>>>16),sI=65535&(hI+=oI>>>16),fI=65535&(wI+=hI>>>16),cI=65535&(DI+=wI>>>16),uI=65535&(yI+=DI>>>16),FI=65535&(lI+=yI>>>16),HI=GI+((MI+=lI>>>16)>>>16)&65535,pI=65535&MI,i^=63&I|128):55296==(64512&I)&&g+1>18|240)<<8,PA+=e<<8,xA+=a<<8,ZA+=r<<8,KA+=f<<8,WA+=c<<8,zA+=u<<8,_A+=F<<8,AI+=p<<8,gI+=H<<8,tI+=U<<8,iI+=L<<8,EI+=k<<8,nI+=N<<8,oI+=R<<8,hI+=Y<<8,wI+=q<<8,DI+=X<<8,yI+=V<<8,lI+=O<<8,MI+=j<<8,i=65535&(Q=397*i),HI=(GI+=T<<8)+((MI+=(lI+=(yI+=(DI+=(wI+=(hI+=(oI+=(nI+=(EI+=(iI+=(tI+=(gI+=(AI+=(_A+=(zA+=(WA+=(KA+=(ZA+=(xA+=(PA+=(vA+=(SA+=(JA+=(bA+=(mA+=(dA+=(GA+=(MA+=(lA+=(yA+=(DA+=(wA+=(hA+=(oA+=(nA+=(EA+=(iA+=(tA+=(gA+=(AA+=(_+=(z+=(W+=(K+=(Z+=(x+=(P+=(v+=(S+=(J+=(b+=(m+=(d+=(G+=(M+=(l+=(y+=(D+=(s+=(o+=(n+=(B+=Q>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)&65535,B=397*(e=65535&B),n=397*(a=65535&n),o=397*(r=65535&o),s=397*(f=65535&s),D=397*(c=65535&D),y=397*(u=65535&y),l=397*(F=65535&l),M=397*(p=65535&M),G=397*(H=65535&G),d=397*(U=65535&d),m=397*(L=65535&m),b=397*(k=65535&b),J=397*(N=65535&J),S=397*(R=65535&S),v=397*(Y=65535&v),P=397*(q=65535&P),x=397*(X=65535&x),Z=397*(V=65535&Z),K=397*(O=65535&K),W=397*(j=65535&W),z=397*(T=65535&z),_=397*($=65535&_),AA=397*(IA=65535&AA),gA=397*(CA=65535&gA),tA=397*(QA=65535&tA),iA=397*(BA=65535&iA),EA=397*(eA=65535&EA),nA=397*(aA=65535&nA),oA=397*(rA=65535&oA),hA=397*(sA=65535&hA),wA=397*(fA=65535&wA),DA=397*(cA=65535&DA),yA=397*(uA=65535&yA),lA=397*(FA=65535&lA),MA=397*(pA=65535&MA),GA=397*(HA=65535&GA),dA=397*(UA=65535&dA),mA=397*(LA=65535&mA),bA=397*(kA=65535&bA),JA=397*(NA=65535&JA),SA=397*(RA=65535&SA),vA=397*(YA=65535&vA),PA=397*(qA=65535&PA),xA=397*(XA=65535&xA),ZA=397*(VA=65535&ZA),KA=397*(OA=65535&KA),WA=397*(jA=65535&WA),zA=397*(TA=65535&zA),_A=397*($A=65535&_A),AI=397*(II=65535&AI),gI=397*(CI=65535&gI),tI=397*(QI=65535&tI),iI=397*(BI=65535&iI),EI=397*(eI=65535&EI),nI=397*(aI=65535&nI),oI=397*(rI=65535&oI),hI=397*(sI=65535&hI),wI=397*(fI=65535&wI),DI=397*(cI=65535&DI),yI=397*(uI=65535&yI),lI=397*(FI=65535&lI),MI=397*(pI=65535&MI),GI=397*HI,vA+=(i^=I>>12&63|128)<<8,PA+=e<<8,xA+=a<<8,ZA+=r<<8,KA+=f<<8,WA+=c<<8,zA+=u<<8,_A+=F<<8,AI+=p<<8,gI+=H<<8,tI+=U<<8,iI+=L<<8,EI+=k<<8,nI+=N<<8,oI+=R<<8,hI+=Y<<8,wI+=q<<8,DI+=X<<8,yI+=V<<8,lI+=O<<8,MI+=j<<8,i=65535&(Q=397*i),HI=(GI+=T<<8)+((MI+=(lI+=(yI+=(DI+=(wI+=(hI+=(oI+=(nI+=(EI+=(iI+=(tI+=(gI+=(AI+=(_A+=(zA+=(WA+=(KA+=(ZA+=(xA+=(PA+=(vA+=(SA+=(JA+=(bA+=(mA+=(dA+=(GA+=(MA+=(lA+=(yA+=(DA+=(wA+=(hA+=(oA+=(nA+=(EA+=(iA+=(tA+=(gA+=(AA+=(_+=(z+=(W+=(K+=(Z+=(x+=(P+=(v+=(S+=(J+=(b+=(m+=(d+=(G+=(M+=(l+=(y+=(D+=(s+=(o+=(n+=(B+=Q>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)&65535,B=397*(e=65535&B),n=397*(a=65535&n),o=397*(r=65535&o),s=397*(f=65535&s),D=397*(c=65535&D),y=397*(u=65535&y),l=397*(F=65535&l),M=397*(p=65535&M),G=397*(H=65535&G),d=397*(U=65535&d),m=397*(L=65535&m),b=397*(k=65535&b),J=397*(N=65535&J),S=397*(R=65535&S),v=397*(Y=65535&v),P=397*(q=65535&P),x=397*(X=65535&x),Z=397*(V=65535&Z),K=397*(O=65535&K),W=397*(j=65535&W),z=397*(T=65535&z),_=397*($=65535&_),AA=397*(IA=65535&AA),gA=397*(CA=65535&gA),tA=397*(QA=65535&tA),iA=397*(BA=65535&iA),EA=397*(eA=65535&EA),nA=397*(aA=65535&nA),oA=397*(rA=65535&oA),hA=397*(sA=65535&hA),wA=397*(fA=65535&wA),DA=397*(cA=65535&DA),yA=397*(uA=65535&yA),lA=397*(FA=65535&lA),MA=397*(pA=65535&MA),GA=397*(HA=65535&GA),dA=397*(UA=65535&dA),mA=397*(LA=65535&mA),bA=397*(kA=65535&bA),JA=397*(NA=65535&JA),SA=397*(RA=65535&SA),vA=397*(YA=65535&vA),PA=397*(qA=65535&PA),xA=397*(XA=65535&xA),ZA=397*(VA=65535&ZA),KA=397*(OA=65535&KA),WA=397*(jA=65535&WA),zA=397*(TA=65535&zA),_A=397*($A=65535&_A),AI=397*(II=65535&AI),gI=397*(CI=65535&gI),tI=397*(QI=65535&tI),iI=397*(BI=65535&iI),EI=397*(eI=65535&EI),nI=397*(aI=65535&nI),oI=397*(rI=65535&oI),hI=397*(sI=65535&hI),wI=397*(fI=65535&wI),DI=397*(cI=65535&DI),yI=397*(uI=65535&yI),lI=397*(FI=65535&lI),MI=397*(pI=65535&MI),GI=397*HI,vA+=(i^=I>>6&63|128)<<8,PA+=e<<8,xA+=a<<8,ZA+=r<<8,KA+=f<<8,WA+=c<<8,zA+=u<<8,_A+=F<<8,AI+=p<<8,gI+=H<<8,tI+=U<<8,iI+=L<<8,EI+=k<<8,nI+=N<<8,oI+=R<<8,hI+=Y<<8,wI+=q<<8,DI+=X<<8,yI+=V<<8,lI+=O<<8,MI+=j<<8,GI+=T<<8,i=65535&(Q=397*i),e=65535&(B+=Q>>>16),a=65535&(n+=B>>>16),r=65535&(o+=n>>>16),f=65535&(s+=o>>>16),c=65535&(D+=s>>>16),u=65535&(y+=D>>>16),F=65535&(l+=y>>>16),p=65535&(M+=l>>>16),H=65535&(G+=M>>>16),U=65535&(d+=G>>>16),L=65535&(m+=d>>>16),k=65535&(b+=m>>>16),N=65535&(J+=b>>>16),R=65535&(S+=J>>>16),Y=65535&(v+=S>>>16),q=65535&(P+=v>>>16),X=65535&(x+=P>>>16),V=65535&(Z+=x>>>16),O=65535&(K+=Z>>>16),j=65535&(W+=K>>>16),T=65535&(z+=W>>>16),$=65535&(_+=z>>>16),IA=65535&(AA+=_>>>16),CA=65535&(gA+=AA>>>16),QA=65535&(tA+=gA>>>16),BA=65535&(iA+=tA>>>16),eA=65535&(EA+=iA>>>16),aA=65535&(nA+=EA>>>16),rA=65535&(oA+=nA>>>16),sA=65535&(hA+=oA>>>16),fA=65535&(wA+=hA>>>16),cA=65535&(DA+=wA>>>16),uA=65535&(yA+=DA>>>16),FA=65535&(lA+=yA>>>16),pA=65535&(MA+=lA>>>16),HA=65535&(GA+=MA>>>16),UA=65535&(dA+=GA>>>16),LA=65535&(mA+=dA>>>16),kA=65535&(bA+=mA>>>16),NA=65535&(JA+=bA>>>16),RA=65535&(SA+=JA>>>16),YA=65535&(vA+=SA>>>16),qA=65535&(PA+=vA>>>16),XA=65535&(xA+=PA>>>16),VA=65535&(ZA+=xA>>>16),OA=65535&(KA+=ZA>>>16),jA=65535&(WA+=KA>>>16),TA=65535&(zA+=WA>>>16),$A=65535&(_A+=zA>>>16),II=65535&(AI+=_A>>>16),CI=65535&(gI+=AI>>>16),QI=65535&(tI+=gI>>>16),BI=65535&(iI+=tI>>>16),eI=65535&(EI+=iI>>>16),aI=65535&(nI+=EI>>>16),rI=65535&(oI+=nI>>>16),sI=65535&(hI+=oI>>>16),fI=65535&(wI+=hI>>>16),cI=65535&(DI+=wI>>>16),uI=65535&(yI+=DI>>>16),FI=65535&(lI+=yI>>>16),HI=GI+((MI+=lI>>>16)>>>16)&65535,pI=65535&MI,i^=63&I|128):(B=397*e,n=397*a,o=397*r,s=397*f,D=397*c,y=397*u,l=397*F,M=397*p,G=397*H,d=397*U,m=397*L,b=397*k,J=397*N,S=397*R,v=397*Y,P=397*q,x=397*X,Z=397*V,K=397*O,W=397*j,z=397*T,_=397*$,AA=397*IA,gA=397*CA,tA=397*QA,iA=397*BA,EA=397*eA,nA=397*aA,oA=397*rA,hA=397*sA,wA=397*fA,DA=397*cA,yA=397*uA,lA=397*FA,MA=397*pA,GA=397*HA,dA=397*UA,mA=397*LA,bA=397*kA,JA=397*NA,SA=397*RA,vA=397*YA,PA=397*qA,xA=397*XA,ZA=397*VA,KA=397*OA,WA=397*jA,zA=397*TA,_A=397*$A,AI=397*II,gI=397*CI,tI=397*QI,iI=397*BI,EI=397*eI,nI=397*aI,oI=397*rI,hI=397*sI,wI=397*fI,DI=397*cI,yI=397*uI,lI=397*FI,MI=397*pI,GI=397*HI,vA+=(i^=I>>12|224)<<8,PA+=e<<8,xA+=a<<8,ZA+=r<<8,KA+=f<<8,WA+=c<<8,zA+=u<<8,_A+=F<<8,AI+=p<<8,gI+=H<<8,tI+=U<<8,iI+=L<<8,EI+=k<<8,nI+=N<<8,oI+=R<<8,hI+=Y<<8,wI+=q<<8,DI+=X<<8,yI+=V<<8,lI+=O<<8,MI+=j<<8,i=65535&(Q=397*i),HI=(GI+=T<<8)+((MI+=(lI+=(yI+=(DI+=(wI+=(hI+=(oI+=(nI+=(EI+=(iI+=(tI+=(gI+=(AI+=(_A+=(zA+=(WA+=(KA+=(ZA+=(xA+=(PA+=(vA+=(SA+=(JA+=(bA+=(mA+=(dA+=(GA+=(MA+=(lA+=(yA+=(DA+=(wA+=(hA+=(oA+=(nA+=(EA+=(iA+=(tA+=(gA+=(AA+=(_+=(z+=(W+=(K+=(Z+=(x+=(P+=(v+=(S+=(J+=(b+=(m+=(d+=(G+=(M+=(l+=(y+=(D+=(s+=(o+=(n+=(B+=Q>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)&65535,B=397*(e=65535&B),n=397*(a=65535&n),o=397*(r=65535&o),s=397*(f=65535&s),D=397*(c=65535&D),y=397*(u=65535&y),l=397*(F=65535&l),M=397*(p=65535&M),G=397*(H=65535&G),d=397*(U=65535&d),m=397*(L=65535&m),b=397*(k=65535&b),J=397*(N=65535&J),S=397*(R=65535&S),v=397*(Y=65535&v),P=397*(q=65535&P),x=397*(X=65535&x),Z=397*(V=65535&Z),K=397*(O=65535&K),W=397*(j=65535&W),z=397*(T=65535&z),_=397*($=65535&_),AA=397*(IA=65535&AA),gA=397*(CA=65535&gA),tA=397*(QA=65535&tA),iA=397*(BA=65535&iA),EA=397*(eA=65535&EA),nA=397*(aA=65535&nA),oA=397*(rA=65535&oA),hA=397*(sA=65535&hA),wA=397*(fA=65535&wA),DA=397*(cA=65535&DA),yA=397*(uA=65535&yA),lA=397*(FA=65535&lA),MA=397*(pA=65535&MA),GA=397*(HA=65535&GA),dA=397*(UA=65535&dA),mA=397*(LA=65535&mA),bA=397*(kA=65535&bA),JA=397*(NA=65535&JA),SA=397*(RA=65535&SA),vA=397*(YA=65535&vA),PA=397*(qA=65535&PA),xA=397*(XA=65535&xA),ZA=397*(VA=65535&ZA),KA=397*(OA=65535&KA),WA=397*(jA=65535&WA),zA=397*(TA=65535&zA),_A=397*($A=65535&_A),AI=397*(II=65535&AI),gI=397*(CI=65535&gI),tI=397*(QI=65535&tI),iI=397*(BI=65535&iI),EI=397*(eI=65535&EI),nI=397*(aI=65535&nI),oI=397*(rI=65535&oI),hI=397*(sI=65535&hI),wI=397*(fI=65535&wI),DI=397*(cI=65535&DI),yI=397*(uI=65535&yI),lI=397*(FI=65535&lI),MI=397*(pI=65535&MI),GI=397*HI,vA+=(i^=I>>6&63|128)<<8,PA+=e<<8,xA+=a<<8,ZA+=r<<8,KA+=f<<8,WA+=c<<8,zA+=u<<8,_A+=F<<8,AI+=p<<8,gI+=H<<8,tI+=U<<8,iI+=L<<8,EI+=k<<8,nI+=N<<8,oI+=R<<8,hI+=Y<<8,wI+=q<<8,DI+=X<<8,yI+=V<<8,lI+=O<<8,MI+=j<<8,GI+=T<<8,i=65535&(Q=397*i),e=65535&(B+=Q>>>16),a=65535&(n+=B>>>16),r=65535&(o+=n>>>16),f=65535&(s+=o>>>16),c=65535&(D+=s>>>16),u=65535&(y+=D>>>16),F=65535&(l+=y>>>16),p=65535&(M+=l>>>16),H=65535&(G+=M>>>16),U=65535&(d+=G>>>16),L=65535&(m+=d>>>16),k=65535&(b+=m>>>16),N=65535&(J+=b>>>16),R=65535&(S+=J>>>16),Y=65535&(v+=S>>>16),q=65535&(P+=v>>>16),X=65535&(x+=P>>>16),V=65535&(Z+=x>>>16),O=65535&(K+=Z>>>16),j=65535&(W+=K>>>16),T=65535&(z+=W>>>16),$=65535&(_+=z>>>16),IA=65535&(AA+=_>>>16),CA=65535&(gA+=AA>>>16),QA=65535&(tA+=gA>>>16),BA=65535&(iA+=tA>>>16),eA=65535&(EA+=iA>>>16),aA=65535&(nA+=EA>>>16),rA=65535&(oA+=nA>>>16),sA=65535&(hA+=oA>>>16),fA=65535&(wA+=hA>>>16),cA=65535&(DA+=wA>>>16),uA=65535&(yA+=DA>>>16),FA=65535&(lA+=yA>>>16),pA=65535&(MA+=lA>>>16),HA=65535&(GA+=MA>>>16),UA=65535&(dA+=GA>>>16),LA=65535&(mA+=dA>>>16),kA=65535&(bA+=mA>>>16),NA=65535&(JA+=bA>>>16),RA=65535&(SA+=JA>>>16),YA=65535&(vA+=SA>>>16),qA=65535&(PA+=vA>>>16),XA=65535&(xA+=PA>>>16),VA=65535&(ZA+=xA>>>16),OA=65535&(KA+=ZA>>>16),jA=65535&(WA+=KA>>>16),TA=65535&(zA+=WA>>>16),$A=65535&(_A+=zA>>>16),II=65535&(AI+=_A>>>16),CI=65535&(gI+=AI>>>16),QI=65535&(tI+=gI>>>16),BI=65535&(iI+=tI>>>16),eI=65535&(EI+=iI>>>16),aI=65535&(nI+=EI>>>16),rI=65535&(oI+=nI>>>16),sI=65535&(hI+=oI>>>16),fI=65535&(wI+=hI>>>16),cI=65535&(DI+=wI>>>16),uI=65535&(yI+=DI>>>16),FI=65535&(lI+=yI>>>16),HI=GI+((MI+=lI>>>16)>>>16)&65535,pI=65535&MI,i^=63&I|128),B=397*e,n=397*a,o=397*r,s=397*f,D=397*c,y=397*u,l=397*F,M=397*p,G=397*H,d=397*U,m=397*L,b=397*k,J=397*N,S=397*R,v=397*Y,P=397*q,x=397*X,Z=397*V,K=397*O,W=397*j,z=397*T,_=397*$,AA=397*IA,gA=397*CA,tA=397*QA,iA=397*BA,EA=397*eA,nA=397*aA,oA=397*rA,hA=397*sA,wA=397*fA,DA=397*cA,yA=397*uA,lA=397*FA,MA=397*pA,GA=397*HA,dA=397*UA,mA=397*LA,bA=397*kA,JA=397*NA,SA=397*RA,vA=397*YA,PA=397*qA,xA=397*XA,ZA=397*VA,KA=397*OA,WA=397*jA,zA=397*TA,_A=397*$A,AI=397*II,gI=397*CI,tI=397*QI,iI=397*BI,EI=397*eI,nI=397*aI,oI=397*rI,hI=397*sI,wI=397*fI,DI=397*cI,yI=397*uI,lI=397*FI,MI=397*pI,GI=397*HI,vA+=i<<8,PA+=e<<8,xA+=a<<8,ZA+=r<<8,KA+=f<<8,WA+=c<<8,zA+=u<<8,_A+=F<<8,AI+=p<<8,gI+=H<<8,tI+=U<<8,iI+=L<<8,EI+=k<<8,nI+=N<<8,oI+=R<<8,hI+=Y<<8,wI+=q<<8,DI+=X<<8,yI+=V<<8,lI+=O<<8,MI+=j<<8,GI+=T<<8,i=65535&(Q=397*i),e=65535&(B+=Q>>>16),a=65535&(n+=B>>>16),r=65535&(o+=n>>>16),f=65535&(s+=o>>>16),c=65535&(D+=s>>>16),u=65535&(y+=D>>>16),F=65535&(l+=y>>>16),p=65535&(M+=l>>>16),H=65535&(G+=M>>>16),U=65535&(d+=G>>>16),L=65535&(m+=d>>>16),k=65535&(b+=m>>>16),N=65535&(J+=b>>>16),R=65535&(S+=J>>>16),Y=65535&(v+=S>>>16),q=65535&(P+=v>>>16),X=65535&(x+=P>>>16),V=65535&(Z+=x>>>16),O=65535&(K+=Z>>>16),j=65535&(W+=K>>>16),T=65535&(z+=W>>>16),$=65535&(_+=z>>>16),IA=65535&(AA+=_>>>16),CA=65535&(gA+=AA>>>16),QA=65535&(tA+=gA>>>16),BA=65535&(iA+=tA>>>16),eA=65535&(EA+=iA>>>16),aA=65535&(nA+=EA>>>16),rA=65535&(oA+=nA>>>16),sA=65535&(hA+=oA>>>16),fA=65535&(wA+=hA>>>16),cA=65535&(DA+=wA>>>16),uA=65535&(yA+=DA>>>16),FA=65535&(lA+=yA>>>16),pA=65535&(MA+=lA>>>16),HA=65535&(GA+=MA>>>16),UA=65535&(dA+=GA>>>16),LA=65535&(mA+=dA>>>16),kA=65535&(bA+=mA>>>16),NA=65535&(JA+=bA>>>16),RA=65535&(SA+=JA>>>16),YA=65535&(vA+=SA>>>16),qA=65535&(PA+=vA>>>16),XA=65535&(xA+=PA>>>16),VA=65535&(ZA+=xA>>>16),OA=65535&(KA+=ZA>>>16),jA=65535&(WA+=KA>>>16),TA=65535&(zA+=WA>>>16),$A=65535&(_A+=zA>>>16),II=65535&(AI+=_A>>>16),CI=65535&(gI+=AI>>>16),QI=65535&(tI+=gI>>>16),BI=65535&(iI+=tI>>>16),eI=65535&(EI+=iI>>>16),aI=65535&(nI+=EI>>>16),rI=65535&(oI+=nI>>>16),sI=65535&(hI+=oI>>>16),fI=65535&(wI+=hI>>>16),cI=65535&(DI+=wI>>>16),uI=65535&(yI+=DI>>>16),FI=65535&(lI+=yI>>>16),HI=GI+((MI+=lI>>>16)>>>16)&65535,pI=65535&MI;return w(E[HI>>8]+E[255&HI]+E[pI>>8]+E[255&pI]+E[FI>>8]+E[255&FI]+E[uI>>8]+E[255&uI]+E[cI>>8]+E[255&cI]+E[fI>>8]+E[255&fI]+E[sI>>8]+E[255&sI]+E[rI>>8]+E[255&rI]+E[aI>>8]+E[255&aI]+E[eI>>8]+E[255&eI]+E[BI>>8]+E[255&BI]+E[QI>>8]+E[255&QI]+E[CI>>8]+E[255&CI]+E[II>>8]+E[255&II]+E[$A>>8]+E[255&$A]+E[TA>>8]+E[255&TA]+E[jA>>8]+E[255&jA]+E[OA>>8]+E[255&OA]+E[VA>>8]+E[255&VA]+E[XA>>8]+E[255&XA]+E[qA>>8]+E[255&qA]+E[YA>>8]+E[255&YA]+E[RA>>8]+E[255&RA]+E[NA>>8]+E[255&NA]+E[kA>>8]+E[255&kA]+E[LA>>8]+E[255&LA]+E[UA>>8]+E[255&UA]+E[HA>>8]+E[255&HA]+E[pA>>8]+E[255&pA]+E[FA>>8]+E[255&FA]+E[uA>>8]+E[255&uA]+E[cA>>8]+E[255&cA]+E[fA>>8]+E[255&fA]+E[sA>>8]+E[255&sA]+E[rA>>8]+E[255&rA]+E[aA>>8]+E[255&aA]+E[eA>>8]+E[255&eA]+E[BA>>8]+E[255&BA]+E[QA>>8]+E[255&QA]+E[CA>>8]+E[255&CA]+E[IA>>8]+E[255&IA]+E[$>>8]+E[255&$]+E[T>>8]+E[255&T]+E[j>>8]+E[255&j]+E[O>>8]+E[255&O]+E[V>>8]+E[255&V]+E[X>>8]+E[255&X]+E[q>>8]+E[255&q]+E[Y>>8]+E[255&Y]+E[R>>8]+E[255&R]+E[N>>8]+E[255&N]+E[k>>8]+E[255&k]+E[L>>8]+E[255&L]+E[U>>8]+E[255&U]+E[H>>8]+E[255&H]+E[p>>8]+E[255&p]+E[F>>8]+E[255&F]+E[u>>8]+E[255&u]+E[c>>8]+E[255&c]+E[f>>8]+E[255&f]+E[r>>8]+E[255&r]+E[a>>8]+E[255&a]+E[e>>8]+E[255&e]+E[i>>8]+E[255&i],1024)}function z(A){var I,g,C=A.length,t=h[1024].offset,Q=0,i=0|t[63],B=0,e=0|t[62],n=0,a=0|t[61],o=0,r=0|t[60],s=0,f=0|t[59],D=0,c=0|t[58],y=0,u=0|t[57],l=0,F=0|t[56],M=0,p=0|t[55],G=0,H=0|t[54],d=0,U=0|t[53],m=0,L=0|t[52],b=0,k=0|t[51],J=0,N=0|t[50],S=0,R=0|t[49],v=0,Y=0|t[48],P=0,q=0|t[47],x=0,X=0|t[46],Z=0,V=0|t[45],K=0,O=0|t[44],W=0,j=0|t[43],z=0,T=0|t[42],_=0,$=0|t[41],AA=0,IA=0|t[40],gA=0,CA=0|t[39],tA=0,QA=0|t[38],iA=0,BA=0|t[37],EA=0,eA=0|t[36],nA=0,aA=0|t[35],oA=0,rA=0|t[34],hA=0,sA=0|t[33],wA=0,fA=0|t[32],DA=0,cA=0|t[31],yA=0,uA=0|t[30],lA=0,FA=0|t[29],MA=0,pA=0|t[28],GA=0,HA=0|t[27],dA=0,UA=0|t[26],mA=0,LA=0|t[25],bA=0,kA=0|t[24],JA=0,NA=0|t[23],SA=0,RA=0|t[22],vA=0,YA=0|t[21],PA=0,qA=0|t[20],xA=0,XA=0|t[19],ZA=0,VA=0|t[18],KA=0,OA=0|t[17],WA=0,jA=0|t[16],zA=0,TA=0|t[15],_A=0,$A=0|t[14],AI=0,II=0|t[13],gI=0,CI=0|t[12],tI=0,QI=0|t[11],iI=0,BI=0|t[10],EI=0,eI=0|t[9],nI=0,aI=0|t[8],oI=0,rI=0|t[7],hI=0,sI=0|t[6],wI=0,fI=0|t[5],DI=0,cI=0|t[4],yI=0,uI=0|t[3],lI=0,FI=0|t[2],MI=0,pI=0|t[1],GI=0,HI=0|t[0];for(g=0;g>>16),a=65535&(n+=B>>>16),r=65535&(o+=n>>>16),f=65535&(s+=o>>>16),c=65535&(D+=s>>>16),u=65535&(y+=D>>>16),F=65535&(l+=y>>>16),p=65535&(M+=l>>>16),H=65535&(G+=M>>>16),U=65535&(d+=G>>>16),L=65535&(m+=d>>>16),k=65535&(b+=m>>>16),N=65535&(J+=b>>>16),R=65535&(S+=J>>>16),Y=65535&(v+=S>>>16),q=65535&(P+=v>>>16),X=65535&(x+=P>>>16),V=65535&(Z+=x>>>16),O=65535&(K+=Z>>>16),j=65535&(W+=K>>>16),T=65535&(z+=W>>>16),$=65535&(_+=z>>>16),IA=65535&(AA+=_>>>16),CA=65535&(gA+=AA>>>16),QA=65535&(tA+=gA>>>16),BA=65535&(iA+=tA>>>16),eA=65535&(EA+=iA>>>16),aA=65535&(nA+=EA>>>16),rA=65535&(oA+=nA>>>16),sA=65535&(hA+=oA>>>16),fA=65535&(wA+=hA>>>16),cA=65535&(DA+=wA>>>16),uA=65535&(yA+=DA>>>16),FA=65535&(lA+=yA>>>16),pA=65535&(MA+=lA>>>16),HA=65535&(GA+=MA>>>16),UA=65535&(dA+=GA>>>16),LA=65535&(mA+=dA>>>16),kA=65535&(bA+=mA>>>16),NA=65535&(JA+=bA>>>16),RA=65535&(SA+=JA>>>16),YA=65535&(vA+=SA>>>16),qA=65535&(PA+=vA>>>16),XA=65535&(xA+=PA>>>16),VA=65535&(ZA+=xA>>>16),OA=65535&(KA+=ZA>>>16),jA=65535&(WA+=KA>>>16),TA=65535&(zA+=WA>>>16),$A=65535&(_A+=zA>>>16),II=65535&(AI+=_A>>>16),CI=65535&(gI+=AI>>>16),QI=65535&(tI+=gI>>>16),BI=65535&(iI+=tI>>>16),eI=65535&(EI+=iI>>>16),aI=65535&(nI+=EI>>>16),rI=65535&(oI+=nI>>>16),sI=65535&(hI+=oI>>>16),fI=65535&(wI+=hI>>>16),cI=65535&(DI+=wI>>>16),uI=65535&(yI+=DI>>>16),FI=65535&(lI+=yI>>>16),HI=GI+((MI+=lI>>>16)>>>16)&65535,pI=65535&MI,(I=A.charCodeAt(g))<128?i^=I:I<2048?(B=397*e,n=397*a,o=397*r,s=397*f,D=397*c,y=397*u,l=397*F,M=397*p,G=397*H,d=397*U,m=397*L,b=397*k,J=397*N,S=397*R,v=397*Y,P=397*q,x=397*X,Z=397*V,K=397*O,W=397*j,z=397*T,_=397*$,AA=397*IA,gA=397*CA,tA=397*QA,iA=397*BA,EA=397*eA,nA=397*aA,oA=397*rA,hA=397*sA,wA=397*fA,DA=397*cA,yA=397*uA,lA=397*FA,MA=397*pA,GA=397*HA,dA=397*UA,mA=397*LA,bA=397*kA,JA=397*NA,SA=397*RA,vA=397*YA,PA=397*qA,xA=397*XA,ZA=397*VA,KA=397*OA,WA=397*jA,zA=397*TA,_A=397*$A,AI=397*II,gI=397*CI,tI=397*QI,iI=397*BI,EI=397*eI,nI=397*aI,oI=397*rI,hI=397*sI,wI=397*fI,DI=397*cI,yI=397*uI,lI=397*FI,MI=397*pI,GI=397*HI,vA+=(i^=I>>6|192)<<8,PA+=e<<8,xA+=a<<8,ZA+=r<<8,KA+=f<<8,WA+=c<<8,zA+=u<<8,_A+=F<<8,AI+=p<<8,gI+=H<<8,tI+=U<<8,iI+=L<<8,EI+=k<<8,nI+=N<<8,oI+=R<<8,hI+=Y<<8,wI+=q<<8,DI+=X<<8,yI+=V<<8,lI+=O<<8,MI+=j<<8,GI+=T<<8,i=65535&(Q=397*i),e=65535&(B+=Q>>>16),a=65535&(n+=B>>>16),r=65535&(o+=n>>>16),f=65535&(s+=o>>>16),c=65535&(D+=s>>>16),u=65535&(y+=D>>>16),F=65535&(l+=y>>>16),p=65535&(M+=l>>>16),H=65535&(G+=M>>>16),U=65535&(d+=G>>>16),L=65535&(m+=d>>>16),k=65535&(b+=m>>>16),N=65535&(J+=b>>>16),R=65535&(S+=J>>>16),Y=65535&(v+=S>>>16),q=65535&(P+=v>>>16),X=65535&(x+=P>>>16),V=65535&(Z+=x>>>16),O=65535&(K+=Z>>>16),j=65535&(W+=K>>>16),T=65535&(z+=W>>>16),$=65535&(_+=z>>>16),IA=65535&(AA+=_>>>16),CA=65535&(gA+=AA>>>16),QA=65535&(tA+=gA>>>16),BA=65535&(iA+=tA>>>16),eA=65535&(EA+=iA>>>16),aA=65535&(nA+=EA>>>16),rA=65535&(oA+=nA>>>16),sA=65535&(hA+=oA>>>16),fA=65535&(wA+=hA>>>16),cA=65535&(DA+=wA>>>16),uA=65535&(yA+=DA>>>16),FA=65535&(lA+=yA>>>16),pA=65535&(MA+=lA>>>16),HA=65535&(GA+=MA>>>16),UA=65535&(dA+=GA>>>16),LA=65535&(mA+=dA>>>16),kA=65535&(bA+=mA>>>16),NA=65535&(JA+=bA>>>16),RA=65535&(SA+=JA>>>16),YA=65535&(vA+=SA>>>16),qA=65535&(PA+=vA>>>16),XA=65535&(xA+=PA>>>16),VA=65535&(ZA+=xA>>>16),OA=65535&(KA+=ZA>>>16),jA=65535&(WA+=KA>>>16),TA=65535&(zA+=WA>>>16),$A=65535&(_A+=zA>>>16),II=65535&(AI+=_A>>>16),CI=65535&(gI+=AI>>>16),QI=65535&(tI+=gI>>>16),BI=65535&(iI+=tI>>>16),eI=65535&(EI+=iI>>>16),aI=65535&(nI+=EI>>>16),rI=65535&(oI+=nI>>>16),sI=65535&(hI+=oI>>>16),fI=65535&(wI+=hI>>>16),cI=65535&(DI+=wI>>>16),uI=65535&(yI+=DI>>>16),FI=65535&(lI+=yI>>>16),HI=GI+((MI+=lI>>>16)>>>16)&65535,pI=65535&MI,i^=63&I|128):55296==(64512&I)&&g+1>18|240)<<8,PA+=e<<8,xA+=a<<8,ZA+=r<<8,KA+=f<<8,WA+=c<<8,zA+=u<<8,_A+=F<<8,AI+=p<<8,gI+=H<<8,tI+=U<<8,iI+=L<<8,EI+=k<<8,nI+=N<<8,oI+=R<<8,hI+=Y<<8,wI+=q<<8,DI+=X<<8,yI+=V<<8,lI+=O<<8,MI+=j<<8,i=65535&(Q=397*i),HI=(GI+=T<<8)+((MI+=(lI+=(yI+=(DI+=(wI+=(hI+=(oI+=(nI+=(EI+=(iI+=(tI+=(gI+=(AI+=(_A+=(zA+=(WA+=(KA+=(ZA+=(xA+=(PA+=(vA+=(SA+=(JA+=(bA+=(mA+=(dA+=(GA+=(MA+=(lA+=(yA+=(DA+=(wA+=(hA+=(oA+=(nA+=(EA+=(iA+=(tA+=(gA+=(AA+=(_+=(z+=(W+=(K+=(Z+=(x+=(P+=(v+=(S+=(J+=(b+=(m+=(d+=(G+=(M+=(l+=(y+=(D+=(s+=(o+=(n+=(B+=Q>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)&65535,B=397*(e=65535&B),n=397*(a=65535&n),o=397*(r=65535&o),s=397*(f=65535&s),D=397*(c=65535&D),y=397*(u=65535&y),l=397*(F=65535&l),M=397*(p=65535&M),G=397*(H=65535&G),d=397*(U=65535&d),m=397*(L=65535&m),b=397*(k=65535&b),J=397*(N=65535&J),S=397*(R=65535&S),v=397*(Y=65535&v),P=397*(q=65535&P),x=397*(X=65535&x),Z=397*(V=65535&Z),K=397*(O=65535&K),W=397*(j=65535&W),z=397*(T=65535&z),_=397*($=65535&_),AA=397*(IA=65535&AA),gA=397*(CA=65535&gA),tA=397*(QA=65535&tA),iA=397*(BA=65535&iA),EA=397*(eA=65535&EA),nA=397*(aA=65535&nA),oA=397*(rA=65535&oA),hA=397*(sA=65535&hA),wA=397*(fA=65535&wA),DA=397*(cA=65535&DA),yA=397*(uA=65535&yA),lA=397*(FA=65535&lA),MA=397*(pA=65535&MA),GA=397*(HA=65535&GA),dA=397*(UA=65535&dA),mA=397*(LA=65535&mA),bA=397*(kA=65535&bA),JA=397*(NA=65535&JA),SA=397*(RA=65535&SA),vA=397*(YA=65535&vA),PA=397*(qA=65535&PA),xA=397*(XA=65535&xA),ZA=397*(VA=65535&ZA),KA=397*(OA=65535&KA),WA=397*(jA=65535&WA),zA=397*(TA=65535&zA),_A=397*($A=65535&_A),AI=397*(II=65535&AI),gI=397*(CI=65535&gI),tI=397*(QI=65535&tI),iI=397*(BI=65535&iI),EI=397*(eI=65535&EI),nI=397*(aI=65535&nI),oI=397*(rI=65535&oI),hI=397*(sI=65535&hI),wI=397*(fI=65535&wI),DI=397*(cI=65535&DI),yI=397*(uI=65535&yI),lI=397*(FI=65535&lI),MI=397*(pI=65535&MI),GI=397*HI,vA+=(i^=I>>12&63|128)<<8,PA+=e<<8,xA+=a<<8,ZA+=r<<8,KA+=f<<8,WA+=c<<8,zA+=u<<8,_A+=F<<8,AI+=p<<8,gI+=H<<8,tI+=U<<8,iI+=L<<8,EI+=k<<8,nI+=N<<8,oI+=R<<8,hI+=Y<<8,wI+=q<<8,DI+=X<<8,yI+=V<<8,lI+=O<<8,MI+=j<<8,i=65535&(Q=397*i),HI=(GI+=T<<8)+((MI+=(lI+=(yI+=(DI+=(wI+=(hI+=(oI+=(nI+=(EI+=(iI+=(tI+=(gI+=(AI+=(_A+=(zA+=(WA+=(KA+=(ZA+=(xA+=(PA+=(vA+=(SA+=(JA+=(bA+=(mA+=(dA+=(GA+=(MA+=(lA+=(yA+=(DA+=(wA+=(hA+=(oA+=(nA+=(EA+=(iA+=(tA+=(gA+=(AA+=(_+=(z+=(W+=(K+=(Z+=(x+=(P+=(v+=(S+=(J+=(b+=(m+=(d+=(G+=(M+=(l+=(y+=(D+=(s+=(o+=(n+=(B+=Q>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)&65535,B=397*(e=65535&B),n=397*(a=65535&n),o=397*(r=65535&o),s=397*(f=65535&s),D=397*(c=65535&D),y=397*(u=65535&y),l=397*(F=65535&l),M=397*(p=65535&M),G=397*(H=65535&G),d=397*(U=65535&d),m=397*(L=65535&m),b=397*(k=65535&b),J=397*(N=65535&J),S=397*(R=65535&S),v=397*(Y=65535&v),P=397*(q=65535&P),x=397*(X=65535&x),Z=397*(V=65535&Z),K=397*(O=65535&K),W=397*(j=65535&W),z=397*(T=65535&z),_=397*($=65535&_),AA=397*(IA=65535&AA),gA=397*(CA=65535&gA),tA=397*(QA=65535&tA),iA=397*(BA=65535&iA),EA=397*(eA=65535&EA),nA=397*(aA=65535&nA),oA=397*(rA=65535&oA),hA=397*(sA=65535&hA),wA=397*(fA=65535&wA),DA=397*(cA=65535&DA),yA=397*(uA=65535&yA),lA=397*(FA=65535&lA),MA=397*(pA=65535&MA),GA=397*(HA=65535&GA),dA=397*(UA=65535&dA),mA=397*(LA=65535&mA),bA=397*(kA=65535&bA),JA=397*(NA=65535&JA),SA=397*(RA=65535&SA),vA=397*(YA=65535&vA),PA=397*(qA=65535&PA),xA=397*(XA=65535&xA),ZA=397*(VA=65535&ZA),KA=397*(OA=65535&KA),WA=397*(jA=65535&WA),zA=397*(TA=65535&zA),_A=397*($A=65535&_A),AI=397*(II=65535&AI),gI=397*(CI=65535&gI),tI=397*(QI=65535&tI),iI=397*(BI=65535&iI),EI=397*(eI=65535&EI),nI=397*(aI=65535&nI),oI=397*(rI=65535&oI),hI=397*(sI=65535&hI),wI=397*(fI=65535&wI),DI=397*(cI=65535&DI),yI=397*(uI=65535&yI),lI=397*(FI=65535&lI),MI=397*(pI=65535&MI),GI=397*HI,vA+=(i^=I>>6&63|128)<<8,PA+=e<<8,xA+=a<<8,ZA+=r<<8,KA+=f<<8,WA+=c<<8,zA+=u<<8,_A+=F<<8,AI+=p<<8,gI+=H<<8,tI+=U<<8,iI+=L<<8,EI+=k<<8,nI+=N<<8,oI+=R<<8,hI+=Y<<8,wI+=q<<8,DI+=X<<8,yI+=V<<8,lI+=O<<8,MI+=j<<8,GI+=T<<8,i=65535&(Q=397*i),e=65535&(B+=Q>>>16),a=65535&(n+=B>>>16),r=65535&(o+=n>>>16),f=65535&(s+=o>>>16),c=65535&(D+=s>>>16),u=65535&(y+=D>>>16),F=65535&(l+=y>>>16),p=65535&(M+=l>>>16),H=65535&(G+=M>>>16),U=65535&(d+=G>>>16),L=65535&(m+=d>>>16),k=65535&(b+=m>>>16),N=65535&(J+=b>>>16),R=65535&(S+=J>>>16),Y=65535&(v+=S>>>16),q=65535&(P+=v>>>16),X=65535&(x+=P>>>16),V=65535&(Z+=x>>>16),O=65535&(K+=Z>>>16),j=65535&(W+=K>>>16),T=65535&(z+=W>>>16),$=65535&(_+=z>>>16),IA=65535&(AA+=_>>>16),CA=65535&(gA+=AA>>>16),QA=65535&(tA+=gA>>>16),BA=65535&(iA+=tA>>>16),eA=65535&(EA+=iA>>>16),aA=65535&(nA+=EA>>>16),rA=65535&(oA+=nA>>>16),sA=65535&(hA+=oA>>>16),fA=65535&(wA+=hA>>>16),cA=65535&(DA+=wA>>>16),uA=65535&(yA+=DA>>>16),FA=65535&(lA+=yA>>>16),pA=65535&(MA+=lA>>>16),HA=65535&(GA+=MA>>>16),UA=65535&(dA+=GA>>>16),LA=65535&(mA+=dA>>>16),kA=65535&(bA+=mA>>>16),NA=65535&(JA+=bA>>>16),RA=65535&(SA+=JA>>>16),YA=65535&(vA+=SA>>>16),qA=65535&(PA+=vA>>>16),XA=65535&(xA+=PA>>>16),VA=65535&(ZA+=xA>>>16),OA=65535&(KA+=ZA>>>16),jA=65535&(WA+=KA>>>16),TA=65535&(zA+=WA>>>16),$A=65535&(_A+=zA>>>16),II=65535&(AI+=_A>>>16),CI=65535&(gI+=AI>>>16),QI=65535&(tI+=gI>>>16),BI=65535&(iI+=tI>>>16),eI=65535&(EI+=iI>>>16),aI=65535&(nI+=EI>>>16),rI=65535&(oI+=nI>>>16),sI=65535&(hI+=oI>>>16),fI=65535&(wI+=hI>>>16),cI=65535&(DI+=wI>>>16),uI=65535&(yI+=DI>>>16),FI=65535&(lI+=yI>>>16),HI=GI+((MI+=lI>>>16)>>>16)&65535,pI=65535&MI,i^=63&I|128):(B=397*e,n=397*a,o=397*r,s=397*f,D=397*c,y=397*u,l=397*F,M=397*p,G=397*H,d=397*U,m=397*L,b=397*k,J=397*N,S=397*R,v=397*Y,P=397*q,x=397*X,Z=397*V,K=397*O,W=397*j,z=397*T,_=397*$,AA=397*IA,gA=397*CA,tA=397*QA,iA=397*BA,EA=397*eA,nA=397*aA,oA=397*rA,hA=397*sA,wA=397*fA,DA=397*cA,yA=397*uA,lA=397*FA,MA=397*pA,GA=397*HA,dA=397*UA,mA=397*LA,bA=397*kA,JA=397*NA,SA=397*RA,vA=397*YA,PA=397*qA,xA=397*XA,ZA=397*VA,KA=397*OA,WA=397*jA,zA=397*TA,_A=397*$A,AI=397*II,gI=397*CI,tI=397*QI,iI=397*BI,EI=397*eI,nI=397*aI,oI=397*rI,hI=397*sI,wI=397*fI,DI=397*cI,yI=397*uI,lI=397*FI,MI=397*pI,GI=397*HI,vA+=(i^=I>>12|224)<<8,PA+=e<<8,xA+=a<<8,ZA+=r<<8,KA+=f<<8,WA+=c<<8,zA+=u<<8,_A+=F<<8,AI+=p<<8,gI+=H<<8,tI+=U<<8,iI+=L<<8,EI+=k<<8,nI+=N<<8,oI+=R<<8,hI+=Y<<8,wI+=q<<8,DI+=X<<8,yI+=V<<8,lI+=O<<8,MI+=j<<8,i=65535&(Q=397*i),HI=(GI+=T<<8)+((MI+=(lI+=(yI+=(DI+=(wI+=(hI+=(oI+=(nI+=(EI+=(iI+=(tI+=(gI+=(AI+=(_A+=(zA+=(WA+=(KA+=(ZA+=(xA+=(PA+=(vA+=(SA+=(JA+=(bA+=(mA+=(dA+=(GA+=(MA+=(lA+=(yA+=(DA+=(wA+=(hA+=(oA+=(nA+=(EA+=(iA+=(tA+=(gA+=(AA+=(_+=(z+=(W+=(K+=(Z+=(x+=(P+=(v+=(S+=(J+=(b+=(m+=(d+=(G+=(M+=(l+=(y+=(D+=(s+=(o+=(n+=(B+=Q>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)>>>16)&65535,B=397*(e=65535&B),n=397*(a=65535&n),o=397*(r=65535&o),s=397*(f=65535&s),D=397*(c=65535&D),y=397*(u=65535&y),l=397*(F=65535&l),M=397*(p=65535&M),G=397*(H=65535&G),d=397*(U=65535&d),m=397*(L=65535&m),b=397*(k=65535&b),J=397*(N=65535&J),S=397*(R=65535&S),v=397*(Y=65535&v),P=397*(q=65535&P),x=397*(X=65535&x),Z=397*(V=65535&Z),K=397*(O=65535&K),W=397*(j=65535&W),z=397*(T=65535&z),_=397*($=65535&_),AA=397*(IA=65535&AA),gA=397*(CA=65535&gA),tA=397*(QA=65535&tA),iA=397*(BA=65535&iA),EA=397*(eA=65535&EA),nA=397*(aA=65535&nA),oA=397*(rA=65535&oA),hA=397*(sA=65535&hA),wA=397*(fA=65535&wA),DA=397*(cA=65535&DA),yA=397*(uA=65535&yA),lA=397*(FA=65535&lA),MA=397*(pA=65535&MA),GA=397*(HA=65535&GA),dA=397*(UA=65535&dA),mA=397*(LA=65535&mA),bA=397*(kA=65535&bA),JA=397*(NA=65535&JA),SA=397*(RA=65535&SA),vA=397*(YA=65535&vA),PA=397*(qA=65535&PA),xA=397*(XA=65535&xA),ZA=397*(VA=65535&ZA),KA=397*(OA=65535&KA),WA=397*(jA=65535&WA),zA=397*(TA=65535&zA),_A=397*($A=65535&_A),AI=397*(II=65535&AI),gI=397*(CI=65535&gI),tI=397*(QI=65535&tI),iI=397*(BI=65535&iI),EI=397*(eI=65535&EI),nI=397*(aI=65535&nI),oI=397*(rI=65535&oI),hI=397*(sI=65535&hI),wI=397*(fI=65535&wI),DI=397*(cI=65535&DI),yI=397*(uI=65535&yI),lI=397*(FI=65535&lI),MI=397*(pI=65535&MI),GI=397*HI,vA+=(i^=I>>6&63|128)<<8,PA+=e<<8,xA+=a<<8,ZA+=r<<8,KA+=f<<8,WA+=c<<8,zA+=u<<8,_A+=F<<8,AI+=p<<8,gI+=H<<8,tI+=U<<8,iI+=L<<8,EI+=k<<8,nI+=N<<8,oI+=R<<8,hI+=Y<<8,wI+=q<<8,DI+=X<<8,yI+=V<<8,lI+=O<<8,MI+=j<<8,GI+=T<<8,i=65535&(Q=397*i),e=65535&(B+=Q>>>16),a=65535&(n+=B>>>16),r=65535&(o+=n>>>16),f=65535&(s+=o>>>16),c=65535&(D+=s>>>16),u=65535&(y+=D>>>16),F=65535&(l+=y>>>16),p=65535&(M+=l>>>16),H=65535&(G+=M>>>16),U=65535&(d+=G>>>16),L=65535&(m+=d>>>16),k=65535&(b+=m>>>16),N=65535&(J+=b>>>16),R=65535&(S+=J>>>16),Y=65535&(v+=S>>>16),q=65535&(P+=v>>>16),X=65535&(x+=P>>>16),V=65535&(Z+=x>>>16),O=65535&(K+=Z>>>16),j=65535&(W+=K>>>16),T=65535&(z+=W>>>16),$=65535&(_+=z>>>16),IA=65535&(AA+=_>>>16),CA=65535&(gA+=AA>>>16),QA=65535&(tA+=gA>>>16),BA=65535&(iA+=tA>>>16),eA=65535&(EA+=iA>>>16),aA=65535&(nA+=EA>>>16),rA=65535&(oA+=nA>>>16),sA=65535&(hA+=oA>>>16),fA=65535&(wA+=hA>>>16),cA=65535&(DA+=wA>>>16),uA=65535&(yA+=DA>>>16),FA=65535&(lA+=yA>>>16),pA=65535&(MA+=lA>>>16),HA=65535&(GA+=MA>>>16),UA=65535&(dA+=GA>>>16),LA=65535&(mA+=dA>>>16),kA=65535&(bA+=mA>>>16),NA=65535&(JA+=bA>>>16),RA=65535&(SA+=JA>>>16),YA=65535&(vA+=SA>>>16),qA=65535&(PA+=vA>>>16),XA=65535&(xA+=PA>>>16),VA=65535&(ZA+=xA>>>16),OA=65535&(KA+=ZA>>>16),jA=65535&(WA+=KA>>>16),TA=65535&(zA+=WA>>>16),$A=65535&(_A+=zA>>>16),II=65535&(AI+=_A>>>16),CI=65535&(gI+=AI>>>16),QI=65535&(tI+=gI>>>16),BI=65535&(iI+=tI>>>16),eI=65535&(EI+=iI>>>16),aI=65535&(nI+=EI>>>16),rI=65535&(oI+=nI>>>16),sI=65535&(hI+=oI>>>16),fI=65535&(wI+=hI>>>16),cI=65535&(DI+=wI>>>16),uI=65535&(yI+=DI>>>16),FI=65535&(lI+=yI>>>16),HI=GI+((MI+=lI>>>16)>>>16)&65535,pI=65535&MI,i^=63&I|128);return w(E[HI>>8]+E[255&HI]+E[pI>>8]+E[255&pI]+E[FI>>8]+E[255&FI]+E[uI>>8]+E[255&uI]+E[cI>>8]+E[255&cI]+E[fI>>8]+E[255&fI]+E[sI>>8]+E[255&sI]+E[rI>>8]+E[255&rI]+E[aI>>8]+E[255&aI]+E[eI>>8]+E[255&eI]+E[BI>>8]+E[255&BI]+E[QI>>8]+E[255&QI]+E[CI>>8]+E[255&CI]+E[II>>8]+E[255&II]+E[$A>>8]+E[255&$A]+E[TA>>8]+E[255&TA]+E[jA>>8]+E[255&jA]+E[OA>>8]+E[255&OA]+E[VA>>8]+E[255&VA]+E[XA>>8]+E[255&XA]+E[qA>>8]+E[255&qA]+E[YA>>8]+E[255&YA]+E[RA>>8]+E[255&RA]+E[NA>>8]+E[255&NA]+E[kA>>8]+E[255&kA]+E[LA>>8]+E[255&LA]+E[UA>>8]+E[255&UA]+E[HA>>8]+E[255&HA]+E[pA>>8]+E[255&pA]+E[FA>>8]+E[255&FA]+E[uA>>8]+E[255&uA]+E[cA>>8]+E[255&cA]+E[fA>>8]+E[255&fA]+E[sA>>8]+E[255&sA]+E[rA>>8]+E[255&rA]+E[aA>>8]+E[255&aA]+E[eA>>8]+E[255&eA]+E[BA>>8]+E[255&BA]+E[QA>>8]+E[255&QA]+E[CA>>8]+E[255&CA]+E[IA>>8]+E[255&IA]+E[$>>8]+E[255&$]+E[T>>8]+E[255&T]+E[j>>8]+E[255&j]+E[O>>8]+E[255&O]+E[V>>8]+E[255&V]+E[X>>8]+E[255&X]+E[q>>8]+E[255&q]+E[Y>>8]+E[255&Y]+E[R>>8]+E[255&R]+E[N>>8]+E[255&N]+E[k>>8]+E[255&k]+E[L>>8]+E[255&L]+E[U>>8]+E[255&U]+E[H>>8]+E[255&H]+E[p>>8]+E[255&p]+E[F>>8]+E[255&F]+E[u>>8]+E[255&u]+E[c>>8]+E[255&c]+E[f>>8]+E[255&f]+E[r>>8]+E[255&r]+E[a>>8]+E[255&a]+E[e>>8]+E[255&e]+E[i>>8]+E[255&i],1024)}return I=F,g=H,C=L,t=N,Q=Y,i=X,B=O,y("1a"),u(!1),l(),{hash:c,setKeyspace:function(A){if(52!==A&&!h[A])throw new Error("Supported FNV keyspacs: 32, 52, 64, 128, 256, 512, and 1024 bit");r=A},version:y,useUTF8:u,seed:l,fast1a32:function(A){var I,g=A.length-3,C=0,t=40389,Q=0,i=33052;for(I=0;I>>16)&65535),Q+=(t^=A.charCodeAt(I++))<<8,t=65535&(C=403*t),Q=403*(i=Q+(C>>>16)&65535),Q+=(t^=A.charCodeAt(I++))<<8,t=65535&(C=403*t),Q=403*(i=Q+(C>>>16)&65535),i=(Q+=(t^=A.charCodeAt(I++))<<8)+((C=403*t)>>>16)&65535,t=65535&C;for(;I>>16)&65535,t=65535&C;return(i<<16>>>0)+t},fast1a32hex:function(A){var I,g=A.length-3,C=0,t=40389,Q=0,i=33052;for(I=0;I>>16)&65535),Q+=(t^=A.charCodeAt(I++))<<8,t=65535&(C=403*t),Q=403*(i=Q+(C>>>16)&65535),Q+=(t^=A.charCodeAt(I++))<<8,t=65535&(C=403*t),Q=403*(i=Q+(C>>>16)&65535),i=(Q+=(t^=A.charCodeAt(I++))<<8)+((C=403*t)>>>16)&65535,t=65535&C;for(;I>>16)&65535,t=65535&C;return E[i>>>8&255]+E[255&i]+E[t>>>8&255]+E[255&t]},fast1a52:function(A){var I,g=A.length-3,C=0,t=8997,Q=0,i=33826,B=0,E=40164,e=0,n=52210;for(I=0;I>>16)>>>16)>>>16)&65535,Q=435*(i=65535&Q),B=435*(E=65535&B),e=435*n,B+=(t^=A.charCodeAt(I++))<<8,t=65535&(C=435*t),n=(e+=i<<8)+((B+=(Q+=C>>>16)>>>16)>>>16)&65535,Q=435*(i=65535&Q),B=435*(E=65535&B),e=435*n,B+=(t^=A.charCodeAt(I++))<<8,t=65535&(C=435*t),n=(e+=i<<8)+((B+=(Q+=C>>>16)>>>16)>>>16)&65535,Q=435*(i=65535&Q),B=435*(E=65535&B),e=435*n,B+=(t^=A.charCodeAt(I++))<<8,e+=i<<8,t=65535&(C=435*t),i=65535&(Q+=C>>>16),n=e+((B+=Q>>>16)>>>16)&65535,E=65535&B;for(;I>>16),n=e+((B+=Q>>>16)>>>16)&65535,E=65535&B;return 281474976710656*(15&n)+4294967296*E+65536*i+(t^n>>4)},fast1a52hex:function(A){var I,g=A.length-3,C=0,t=8997,Q=0,i=33826,B=0,n=40164,a=0,o=52210;for(I=0;I>>16)>>>16)>>>16)&65535,Q=435*(i=65535&Q),B=435*(n=65535&B),a=435*o,B+=(t^=A.charCodeAt(I++))<<8,t=65535&(C=435*t),o=(a+=i<<8)+((B+=(Q+=C>>>16)>>>16)>>>16)&65535,Q=435*(i=65535&Q),B=435*(n=65535&B),a=435*o,B+=(t^=A.charCodeAt(I++))<<8,t=65535&(C=435*t),o=(a+=i<<8)+((B+=(Q+=C>>>16)>>>16)>>>16)&65535,Q=435*(i=65535&Q),B=435*(n=65535&B),a=435*o,B+=(t^=A.charCodeAt(I++))<<8,a+=i<<8,t=65535&(C=435*t),i=65535&(Q+=C>>>16),o=a+((B+=Q>>>16)>>>16)&65535,n=65535&B;for(;I>>16),o=a+((B+=Q>>>16)>>>16)&65535,n=65535&B;return e[15&o]+E[n>>8]+E[255&n]+E[i>>8]+E[255&i]+E[t>>8^o>>12]+E[255&(t^o>>4)]},fast1a64:function(A){var I,g=A.length-3,C=0,t=8997,Q=0,i=33826,B=0,e=40164,n=0,a=52210;for(I=0;I>>16)>>>16)>>>16)&65535,Q=435*(i=65535&Q),B=435*(e=65535&B),n=435*a,B+=(t^=A.charCodeAt(I++))<<8,t=65535&(C=435*t),a=(n+=i<<8)+((B+=(Q+=C>>>16)>>>16)>>>16)&65535,Q=435*(i=65535&Q),B=435*(e=65535&B),n=435*a,B+=(t^=A.charCodeAt(I++))<<8,t=65535&(C=435*t),a=(n+=i<<8)+((B+=(Q+=C>>>16)>>>16)>>>16)&65535,Q=435*(i=65535&Q),B=435*(e=65535&B),n=435*a,B+=(t^=A.charCodeAt(I++))<<8,n+=i<<8,t=65535&(C=435*t),i=65535&(Q+=C>>>16),a=n+((B+=Q>>>16)>>>16)&65535,e=65535&B;for(;I>>16),a=n+((B+=Q>>>16)>>>16)&65535,e=65535&B;return E[a>>8]+E[255&a]+E[e>>8]+E[255&e]+E[i>>8]+E[255&i]+E[t>>8]+E[255&t]},fast1a32utf:function(A){var I,g,C=A.length,t=0,Q=40389,i=0,B=33052;for(g=0;g>6|192)<<8)+((t=403*Q)>>>16)&65535,Q=65535&t,Q^=63&I|128):55296==(64512&I)&&g+1>18|240)<<8,Q=65535&(t=403*Q),i=403*(B=i+(t>>>16)&65535),i+=(Q^=I>>12&63|128)<<8,Q=65535&(t=403*Q),i=403*(B=i+(t>>>16)&65535),B=(i+=(Q^=I>>6&63|128)<<8)+((t=403*Q)>>>16)&65535,Q=65535&t,Q^=63&I|128):(i=403*B,i+=(Q^=I>>12|224)<<8,Q=65535&(t=403*Q),i=403*(B=i+(t>>>16)&65535),B=(i+=(Q^=I>>6&63|128)<<8)+((t=403*Q)>>>16)&65535,Q=65535&t,Q^=63&I|128),i=403*B,B=(i+=Q<<8)+((t=403*Q)>>>16)&65535,Q=65535&t;return(B<<16>>>0)+Q},fast1a32hexutf:function(A){var I,g,C=A.length,t=0,Q=40389,i=0,B=33052;for(g=0;g>6|192)<<8)+((t=403*Q)>>>16)&65535,Q=65535&t,Q^=63&I|128):55296==(64512&I)&&g+1>18|240)<<8,Q=65535&(t=403*Q),i=403*(B=i+(t>>>16)&65535),i+=(Q^=I>>12&63|128)<<8,Q=65535&(t=403*Q),i=403*(B=i+(t>>>16)&65535),B=(i+=(Q^=I>>6&63|128)<<8)+((t=403*Q)>>>16)&65535,Q=65535&t,Q^=63&I|128):(i=403*B,i+=(Q^=I>>12|224)<<8,Q=65535&(t=403*Q),i=403*(B=i+(t>>>16)&65535),B=(i+=(Q^=I>>6&63|128)<<8)+((t=403*Q)>>>16)&65535,Q=65535&t,Q^=63&I|128),i=403*B,B=(i+=Q<<8)+((t=403*Q)>>>16)&65535,Q=65535&t;return E[B>>>8&255]+E[255&B]+E[Q>>>8&255]+E[255&Q]},fast1a52utf:function(A){var I,g,C=A.length,t=0,Q=8997,i=0,B=33826,E=0,e=40164,n=0,a=52210;for(g=0;g>6|192)<<8,n+=B<<8,Q=65535&(t=435*Q),B=65535&(i+=t>>>16),a=n+((E+=i>>>16)>>>16)&65535,e=65535&E,Q^=63&I|128):55296==(64512&I)&&g+1>18|240)<<8,Q=65535&(t=435*Q),a=(n+=B<<8)+((E+=(i+=t>>>16)>>>16)>>>16)&65535,i=435*(B=65535&i),E=435*(e=65535&E),n=435*a,E+=(Q^=I>>12&63|128)<<8,Q=65535&(t=435*Q),a=(n+=B<<8)+((E+=(i+=t>>>16)>>>16)>>>16)&65535,i=435*(B=65535&i),E=435*(e=65535&E),n=435*a,E+=(Q^=I>>6&63|128)<<8,n+=B<<8,Q=65535&(t=435*Q),B=65535&(i+=t>>>16),a=n+((E+=i>>>16)>>>16)&65535,e=65535&E,Q^=63&I|128):(i=435*B,E=435*e,n=435*a,E+=(Q^=I>>12|224)<<8,Q=65535&(t=435*Q),a=(n+=B<<8)+((E+=(i+=t>>>16)>>>16)>>>16)&65535,i=435*(B=65535&i),E=435*(e=65535&E),n=435*a,E+=(Q^=I>>6&63|128)<<8,n+=B<<8,Q=65535&(t=435*Q),B=65535&(i+=t>>>16),a=n+((E+=i>>>16)>>>16)&65535,e=65535&E,Q^=63&I|128),i=435*B,E=435*e,n=435*a,E+=Q<<8,n+=B<<8,Q=65535&(t=435*Q),B=65535&(i+=t>>>16),a=n+((E+=i>>>16)>>>16)&65535,e=65535&E;return 281474976710656*(15&a)+4294967296*e+65536*B+(Q^a>>4)},fast1a52hexutf:function(A){var I,g,C=A.length,t=0,Q=8997,i=0,B=33826,n=0,a=40164,o=0,r=52210;for(g=0;g>6|192)<<8,o+=B<<8,Q=65535&(t=435*Q),B=65535&(i+=t>>>16),r=o+((n+=i>>>16)>>>16)&65535,a=65535&n,Q^=63&I|128):55296==(64512&I)&&g+1>18|240)<<8,Q=65535&(t=435*Q),r=(o+=B<<8)+((n+=(i+=t>>>16)>>>16)>>>16)&65535,i=435*(B=65535&i),n=435*(a=65535&n),o=435*r,n+=(Q^=I>>12&63|128)<<8,Q=65535&(t=435*Q),r=(o+=B<<8)+((n+=(i+=t>>>16)>>>16)>>>16)&65535,i=435*(B=65535&i),n=435*(a=65535&n),o=435*r,n+=(Q^=I>>6&63|128)<<8,o+=B<<8,Q=65535&(t=435*Q),B=65535&(i+=t>>>16),r=o+((n+=i>>>16)>>>16)&65535,a=65535&n,Q^=63&I|128):(i=435*B,n=435*a,o=435*r,n+=(Q^=I>>12|224)<<8,Q=65535&(t=435*Q),r=(o+=B<<8)+((n+=(i+=t>>>16)>>>16)>>>16)&65535,i=435*(B=65535&i),n=435*(a=65535&n),o=435*r,n+=(Q^=I>>6&63|128)<<8,o+=B<<8,Q=65535&(t=435*Q),B=65535&(i+=t>>>16),r=o+((n+=i>>>16)>>>16)&65535,a=65535&n,Q^=63&I|128),i=435*B,n=435*a,o=435*r,n+=Q<<8,o+=B<<8,Q=65535&(t=435*Q),B=65535&(i+=t>>>16),r=o+((n+=i>>>16)>>>16)&65535,a=65535&n;return e[15&r]+E[a>>8]+E[255&a]+E[B>>8]+E[255&B]+E[Q>>8^r>>12]+E[255&(Q^r>>4)]},fast1a64utf:function(A){var I,g,C=A.length,t=0,Q=8997,i=0,B=33826,e=0,n=40164,a=0,o=52210;for(g=0;g>6|192)<<8,a+=B<<8,Q=65535&(t=435*Q),B=65535&(i+=t>>>16),o=a+((e+=i>>>16)>>>16)&65535,n=65535&e,Q^=63&I|128):55296==(64512&I)&&g+1>18|240)<<8,Q=65535&(t=435*Q),o=(a+=B<<8)+((e+=(i+=t>>>16)>>>16)>>>16)&65535,i=435*(B=65535&i),e=435*(n=65535&e),a=435*o,e+=(Q^=I>>12&63|128)<<8,Q=65535&(t=435*Q),o=(a+=B<<8)+((e+=(i+=t>>>16)>>>16)>>>16)&65535,i=435*(B=65535&i),e=435*(n=65535&e),a=435*o,e+=(Q^=I>>6&63|128)<<8,a+=B<<8,Q=65535&(t=435*Q),B=65535&(i+=t>>>16),o=a+((e+=i>>>16)>>>16)&65535,n=65535&e,Q^=63&I|128):(i=435*B,e=435*n,a=435*o,e+=(Q^=I>>12|224)<<8,Q=65535&(t=435*Q),o=(a+=B<<8)+((e+=(i+=t>>>16)>>>16)>>>16)&65535,i=435*(B=65535&i),e=435*(n=65535&e),a=435*o,e+=(Q^=I>>6&63|128)<<8,a+=B<<8,Q=65535&(t=435*Q),B=65535&(i+=t>>>16),o=a+((e+=i>>>16)>>>16)&65535,n=65535&e,Q^=63&I|128),i=435*B,e=435*n,a=435*o,e+=Q<<8,a+=B<<8,Q=65535&(t=435*Q),B=65535&(i+=t>>>16),o=a+((e+=i>>>16)>>>16)&65535,n=65535&e;return E[o>>8]+E[255&o]+E[n>>8]+E[255&n]+E[B>>8]+E[255&B]+E[Q>>8]+E[255&Q]}}}();A.exports=I}));async function Gg(A,I){I=I||{};let g,C=32767,t=!1;for(;!t;)try{g=new WebAssembly.Memory({initial:C}),t=!0}catch(A){if(1===C)throw A;console.warn("Could not allocate "+1024*C*64+" bytes. This may cause severe instability. Trying with "+1024*C*64/2+" bytes"),C=Math.floor(C/2)}const Q=await WebAssembly.compile(A);let i;const B=await WebAssembly.instantiate(Q,{env:{memory:g},runtime:{error:function(A,g,C,t,Q,B){let E;throw E=7==A?e(g)+" "+i.getFr(t).toString()+" != "+i.getFr(Q).toString()+" "+e(B):9==A?e(g)+" "+i.getFr(t).toString()+" "+e(Q):5==A&&I.sym?e(g)+" "+I.sym.labelIdx2Name[Q]:e(g)+" "+C+" "+t+" "+Q+" "+B,console.log("ERROR: ",A,E),new Error(E)},log:function(A){console.log(i.getFr(A).toString())},logGetSignal:function(A,g){I.logGetSignal&&I.logGetSignal(A,i.getFr(g))},logSetSignal:function(A,g){I.logSetSignal&&I.logSetSignal(A,i.getFr(g))},logStartComponent:function(A){I.logStartComponent&&I.logStartComponent(A)},logFinishComponent:function(A){I.logFinishComponent&&I.logFinishComponent(A)}}}),E=I&&(I.sanityCheck||I.logGetSignal||I.logSetSignal||I.logStartComponent||I.logFinishComponent);return i=new Hg(g,B,E),i;function e(A){const I=new Uint8Array(g.buffer),C=[];for(let g=0;I[A+g]>0;g++)C.push(I[A+g]);return String.fromCharCode.apply(null,C)}}class Hg{constructor(A,I,g){this.memory=A,this.i32=new Uint32Array(A.buffer),this.instance=I,this.n32=(this.instance.exports.getFrLen()>>2)-2;const C=this.instance.exports.getPRawPrime(),t=new Array(this.n32);for(let A=0;A>2)+A];this.prime=hI.fromArray(t,4294967296),this.Fr=new HA(this.prime),this.mask32=hI.fromString("FFFFFFFF",16),this.NVars=this.instance.exports.getNVars(),this.n64=Math.floor((this.Fr.bitLength-1)/64)+1,this.R=this.Fr.e(hI.shiftLeft(1,64*this.n64)),this.RInv=this.Fr.inv(this.R),this.sanityCheck=g}async _doCalculateWitness(A,I){this.instance.exports.init(this.sanityCheck||I?1:0);const g=this.allocInt(),C=this.allocFr();Object.keys(A).forEach((I=>{const t=function(A){return pg.hash(A,64).hex()}(I),Q=parseInt(t.slice(0,8),16),i=parseInt(t.slice(8,16),16);try{this.instance.exports.getSignalOffset32(g,0,Q,i)}catch(A){throw new Error(`Signal ${I} is not an input of the circuit.`)}const B=this.getInt(g),E=(e=A[I],function A(I,g){if(Array.isArray(g))for(let C=0;C>2]}setInt(A,I){this.i32[A>>2]=I}getFr(A){const I=this,g=A>>2;if(2147483648&I.i32[g+1]){const A=new Array(I.n32);for(let C=0;C>2]=t,void(g.i32[1+(A>>2)]=0)}g.i32[A>>2]=0,g.i32[1+(A>>2)]=2147483648;const Q=hI.toArray(I,4294967296);for(let I=0;I>2)+I]=C>=0?Q[C]:0}}}async function dg(A,I,g,C){const t=await LI(I),Q=await t.read(t.totalSize);await t.close();const i=await Gg(Q),B=await i.calculateBinWitness(A),E=await kI(g,"wtns",2,2);await async function(A,I,g){await JI(A,1);const C=8*(Math.floor((hI.bitLength(g)-1)/64)+1);if(await A.writeULE32(C),await vI(A,g,C),I.byteLength%C!=0)throw new Error("Invalid witness length");await A.writeULE32(I.byteLength/C),await NI(A),await JI(A,2),await A.write(I),await NI(A)}(E,B,i.prime),await E.close()}const{unstringifyBigInts:Ug}=sI;function mg(A){let I=A.toString(16);for(;I.length<64;)I="0"+I;return I=`"0x${I}"`,I}var Lg=Object.freeze({__proto__:null,fullProve:async function(A,I,g,C){const t={type:"mem"};return await dg(A,I,t),await Mg(g,t,C)},prove:Mg,verify:async function(A,I,g,C){A=Ug(A),g=Ug(g),I=Ug(I);const t=await KI(A.curve),Q=t.G1.fromObject(A.IC[0]),i=new Uint8Array(2*t.G1.F.n8*I.length),B=new Uint8Array(t.Fr.n8*I.length);for(let g=0;g1)throw new Error(A.fileName+": File has more than one header");A.pos=I[1][0].p;const g=await A.readULE32(),C=await A.read(g),t=hI.fromRprLE(C),Q=await VI(t);if(8*Q.F1.n64!=g)throw new Error(A.fileName+": Invalid size");const i=await A.readULE32(),B=await A.readULE32();if(A.pos-I[1][0].p!=I[1][0].size)throw new Error("Invalid PTau header size");return{curve:Q,power:i,ceremonyPower:B}}function vg(A,I,g,C){const t={tau:{},alpha:{},beta:{}};return t.tau.g1_s=Q(),t.tau.g1_sx=Q(),t.alpha.g1_s=Q(),t.alpha.g1_sx=Q(),t.beta.g1_s=Q(),t.beta.g1_sx=Q(),t.tau.g2_spx=i(),t.alpha.g2_spx=i(),t.beta.g2_spx=i(),t;function Q(){let t;return t=C?g.G1.fromRprLEM(A,I):g.G1.fromRprUncompressed(A,I),I+=2*g.G1.F.n8,t}function i(){let t;return t=C?g.G2.fromRprLEM(A,I):g.G2.fromRprUncompressed(A,I),I+=2*g.G2.F.n8,t}}function Yg(A,I,g,C,t){async function Q(C){t?g.G1.toRprLEM(A,I,C):g.G1.toRprUncompressed(A,I,C),I+=2*g.F1.n8}async function i(C){t?g.G2.toRprLEM(A,I,C):g.G2.toRprUncompressed(A,I,C),I+=2*g.F2.n8}return Q(C.tau.g1_s),Q(C.tau.g1_sx),Q(C.alpha.g1_s),Q(C.alpha.g1_sx),Q(C.beta.g1_s),Q(C.beta.g1_sx),i(C.tau.g2_spx),i(C.alpha.g2_spx),i(C.beta.g2_spx),A}async function Pg(A,I){const g={};g.tauG1=await E(),g.tauG2=await e(),g.alphaG1=await E(),g.betaG1=await E(),g.betaG2=await e(),g.key=await async function(A,I,g){return vg(await A.read(2*I.F1.n8*6+2*I.F2.n8*3),0,I,g)}(A,I,!0),g.partialHash=await A.read(216),g.nextChallenge=await A.read(64),g.type=await A.readULE32();const C=new Uint8Array(2*I.G1.F.n8*6+2*I.G2.F.n8*3);Yg(C,0,I,g.key,!1);const t=_I(64);t.setPartialHash(g.partialHash),t.update(C),g.responseHash=t.digest();const Q=await A.readULE32(),i=A.pos;let B=0;for(;A.pos-i1)throw new Error(A.fileName+": File has more than one contributions section");A.pos=g[7][0].p;const C=await A.readULE32(),t=[];for(let g=0;g0){const I=new Uint8Array(Q);await A.writeULE32(I.byteLength),await A.write(I)}else await A.writeULE32(0);async function i(g){I.G1.toRprLEM(C,0,g),await A.write(C)}async function B(g){I.G2.toRprLEM(t,0,g),await A.write(t)}}async function Xg(A,I,g){await A.writeULE32(7);const C=A.pos;await A.writeULE64(0),await A.writeULE32(g.length);for(let C=0;C0?a[a.length-1].nextChallenge:Zg(e,n,Q);const c=await kI(g,"ptau",1,t?7:2);await Sg(c,e,n);const y=await f.read(64);if(Cg(i,D)&&(D=y,a[a.length-1].nextChallenge=D),!Cg(y,D))throw new Error("Wrong contribution. this contribution is not based on the previus hash");const u=new _I(64);u.update(y);const l=[];let F;F=await G(f,c,"G1",2,2**n*2-1,[1],"tauG1"),o.tauG1=F[0],F=await G(f,c,"G2",3,2**n,[1],"tauG2"),o.tauG2=F[0],F=await G(f,c,"G1",4,2**n,[0],"alphaG1"),o.alphaG1=F[0],F=await G(f,c,"G1",5,2**n,[0],"betaG1"),o.betaG1=F[0],F=await G(f,c,"G2",6,1,[0],"betaG2"),o.betaG2=F[0],o.partialHash=u.getPartialHash();const M=await f.read(2*e.F1.n8*6+2*e.F2.n8*3);o.key=vg(M,0,e,!1),u.update(new Uint8Array(M));const p=u.digest();if(Q&&Q.info(gg(p,"Contribution Response Hash imported: ")),t){const A=new _I(64);A.update(p),await H(A,c,"G1",2,2**n*2-1,"tauG1",Q),await H(A,c,"G2",3,2**n,"tauG2",Q),await H(A,c,"G1",4,2**n,"alphaTauG1",Q),await H(A,c,"G1",5,2**n,"betaTauG1",Q),await H(A,c,"G2",6,1,"betaG2",Q),o.nextChallenge=A.digest(),Q&&Q.info(gg(o.nextChallenge,"Next Challenge Hash: "))}else o.nextChallenge=i;return a.push(o),await Xg(c,e,a),await f.close(),await c.close(),await B.close(),o.nextChallenge;async function G(A,I,g,C,i,B,E){return t?await async function(A,I,g,C,t,i,B){const E=e[g],n=E.F.n8,a=2*E.F.n8,o=[];await JI(I,C);const r=Math.floor((1<<24)/a);l[C]=I.pos;for(let g=0;g=g&&I=I&&t1?E[E.length-2]:e;const a=E[E.length-1];if(I&&I.debug("Validating contribution #"+E[E.length-1].id),!await Og(Q,a,n,I))return!1;const o=_I(64);o.update(a.responseHash),I&&I.debug("Verifying powers in tau*G1 section");const r=await y(2,"G1","tauG1",2**i*2-1,[0,1],I);if(g=await Kg(Q,r.R1,r.R2,Q.G2.g,a.tauG2),!0!==g)return I&&I.error("tauG1 section. Powers do not match"),!1;if(!Q.G1.eq(Q.G1.g,r.singularPoints[0]))return I&&I.error("First element of tau*G1 section must be the generator"),!1;if(!Q.G1.eq(a.tauG1,r.singularPoints[1]))return I&&I.error("Second element of tau*G1 section does not match the one in the contribution section"),!1;I&&I.debug("Verifying powers in tau*G2 section");const h=await y(3,"G2","tauG2",2**i,[0,1],I);if(g=await Kg(Q,Q.G1.g,a.tauG1,h.R1,h.R2),!0!==g)return I&&I.error("tauG2 section. Powers do not match"),!1;if(!Q.G2.eq(Q.G2.g,h.singularPoints[0]))return I&&I.error("First element of tau*G2 section must be the generator"),!1;if(!Q.G2.eq(a.tauG2,h.singularPoints[1]))return I&&I.error("Second element of tau*G2 section does not match the one in the contribution section"),!1;I&&I.debug("Verifying powers in alpha*tau*G1 section");const s=await y(4,"G1","alphatauG1",2**i,[0],I);if(g=await Kg(Q,s.R1,s.R2,Q.G2.g,a.tauG2),!0!==g)return I&&I.error("alphaTauG1 section. Powers do not match"),!1;if(!Q.G1.eq(a.alphaG1,s.singularPoints[0]))return I&&I.error("First element of alpha*tau*G1 section (alpha*G1) does not match the one in the contribution section"),!1;I&&I.debug("Verifying powers in beta*tau*G1 section");const w=await y(5,"G1","betatauG1",2**i,[0],I);if(g=await Kg(Q,w.R1,w.R2,Q.G2.g,a.tauG2),!0!==g)return I&&I.error("betaTauG1 section. Powers do not match"),!1;if(!Q.G1.eq(a.betaG1,w.singularPoints[0]))return I&&I.error("First element of beta*tau*G1 section (beta*G1) does not match the one in the contribution section"),!1;const f=await async function(A){const I=Q.G2,g=2*I.F.n8,i=new Uint8Array(g);if(!t[6])throw A.error("File has no BetaG2 section"),new Error("File has no BetaG2 section");if(t[6].length>1)throw A.error("File has no BetaG2 section"),new Error("File has more than one GetaG2 section");C.pos=t[6][0].p;const B=await C.read(g),E=I.fromRprLEM(B);return I.toRprUncompressed(i,0,E),o.update(i),E}(I);if(!Q.G2.eq(a.betaG2,f))return I&&I.error("betaG2 element in betaG2 section does not match the one in the contribution section"),!1;const D=o.digest();if(i==B&&!Cg(D,a.nextChallenge))return I&&I.error("Hash of the values does not match the next challenge of the last contributor in the contributions section"),!1;I&&I.info(gg(D,"Next challenge hash: ")),c(a,n);for(let A=E.length-2;A>=0;A--){const g=E[A],C=A>0?E[A-1]:e;if(!await Og(Q,g,C,I))return!1;c(g,C)}if(I&&I.info("-----------------------------------------------------"),t[12]&&t[13]&&t[14]&&t[15]){let A;if(A=await u("G1",2,12,"tauG1",I),!A)return!1;if(A=await u("G2",3,13,"tauG2",I),!A)return!1;if(A=await u("G1",4,14,"alphaTauG1",I),!A)return!1;if(A=await u("G1",5,15,"betaTauG1",I),!A)return!1}else I&&I.warn('this file does not contain phase2 precalculated values. Please run: \n snarkjs "powersoftau preparephase2" to prepare this file to be used in the phase2 ceremony.');return await C.close(),I&&I.info("Powers of Tau Ok!"),!0;function c(A,g){if(!I)return;I.info("-----------------------------------------------------"),I.info(`Contribution #${A.id}: ${A.name||""}`),I.info(gg(A.nextChallenge,"Next Challenge: "));const C=new Uint8Array(2*Q.G1.F.n8*6+2*Q.G2.F.n8*3);Yg(C,0,Q,A.key,!1);const t=_I(64);t.setPartialHash(A.partialHash),t.update(C);const i=t.digest();I.info(gg(i,"Response Hash:")),I.info(gg(g.nextChallenge,"Response Hash:")),1==A.type&&(I.info(`Beacon generator: ${eg(A.beaconHash)}`),I.info(`Beacon iterations Exp: ${A.numIterationsExp}`))}async function y(A,I,g,i,B,E){const e=Q[I],n=2*e.F.n8;await SI(C,t,A);const a=[];let r=e.zero,h=e.zero,s=e.zero;for(let A=0;A0){const A=e.fromRprLEM(t,0),I=cA.randomBytes(4).readUInt32BE(0,!0);r=e.add(r,e.timesScalar(s,I)),h=e.add(h,e.timesScalar(A,I))}const f=await e.multiExpAffine(t.slice(0,(I-1)*n),w),D=await e.multiExpAffine(t.slice(n),w);r=e.add(r,f),h=e.add(h,D),s=e.fromRprLEM(t,(I-1)*n);for(let g=0;g=A&&C1;)e/=2,n+=1;if(2**n!=E)throw new Error("Invalid file size");t&&t.debug("Power to tau size: "+n);const a=await ig(C),o=await mI(g),r=_I(64);for(let A=0;A{t.debug(I+".g1_s: "+A.G1.toString(w[I].g1_s,16)),t.debug(I+".g1_sx: "+A.G1.toString(w[I].g1_sx,16)),t.debug(I+".g2_sp: "+A.G2.toString(w[I].g2_sp,16)),t.debug(I+".g2_spx: "+A.G2.toString(w[I].g2_spx,16)),t.debug("")}));const f=_I(64);await o.write(s),f.update(s),await jg(Q,o,f,A,"G1",2**n*2-1,A.Fr.one,w.tau.prvKey,"COMPRESSED","tauG1",t),await jg(Q,o,f,A,"G2",2**n,A.Fr.one,w.tau.prvKey,"COMPRESSED","tauG2",t),await jg(Q,o,f,A,"G1",2**n,w.alpha.prvKey,w.tau.prvKey,"COMPRESSED","alphaTauG1",t),await jg(Q,o,f,A,"G1",2**n,w.beta.prvKey,w.tau.prvKey,"COMPRESSED","betaTauG1",t),await jg(Q,o,f,A,"G2",1,w.beta.prvKey,w.tau.prvKey,"COMPRESSED","betaTauG2",t);const D=new Uint8Array(2*A.F1.n8*6+2*A.F2.n8*3);Yg(D,0,A,w,!1),await o.write(D),f.update(D);const c=f.digest();t&&t.info(gg(c,"Contribution Response Hash: ")),await o.close(),await Q.close()},beacon:async function(A,I,g,C,t,Q){const i=Eg(C);if(0==i.byteLength||2*i.byteLength!=C.length)return Q&&Q.error("Invalid Beacon Hash. (It must be a valid hexadecimal sequence)"),!1;if(i.length>=256)return Q&&Q.error("Maximum lenght of beacon hash is 255 bytes"),!1;if((t=parseInt(t))<10||t>63)return Q&&Q.error("Invalid numIterationsExp. (Must be between 10 and 63)"),!1;await _I.ready();const{fd:B,sections:E}=await bI(A,"ptau",1),{curve:e,power:n,ceremonyPower:a}=await Rg(B,E);if(n!=a)return Q&&Q.error("This file has been reduced. You cannot contribute into a reduced file."),!1;E[12]&&Q&&Q.warn("Contributing into a file that has phase2 calculated. You will have to prepare phase2 again.");const o=await qg(B,e,E),r={name:g,type:1,numIterationsExp:t,beaconHash:i};let h;h=o.length>0?o[o.length-1].nextChallenge:Zg(e,n,Q),r.key=Vg(e,h,i,t);const s=new _I(64);s.update(h);const w=await kI(I,"ptau",1,7);await Sg(w,e,n);const f=[];let D;D=await l(2,"G1",2**n*2-1,e.Fr.e(1),r.key.tau.prvKey,"tauG1",Q),r.tauG1=D[1],D=await l(3,"G2",2**n,e.Fr.e(1),r.key.tau.prvKey,"tauG2",Q),r.tauG2=D[1],D=await l(4,"G1",2**n,r.key.alpha.prvKey,r.key.tau.prvKey,"alphaTauG1",Q),r.alphaG1=D[0],D=await l(5,"G1",2**n,r.key.beta.prvKey,r.key.tau.prvKey,"betaTauG1",Q),r.betaG1=D[0],D=await l(6,"G2",1,r.key.beta.prvKey,r.key.tau.prvKey,"betaTauG2",Q),r.betaG2=D[0],r.partialHash=s.getPartialHash();const c=new Uint8Array(2*e.F1.n8*6+2*e.F2.n8*3);Yg(c,0,e,r.key,!1),s.update(new Uint8Array(c));const y=s.digest();Q&&Q.info(gg(y,"Contribution Response Hash imported: "));const u=new _I(64);return u.update(y),await F(w,"G1",2,2**n*2-1,"tauG1",Q),await F(w,"G2",3,2**n,"tauG2",Q),await F(w,"G1",4,2**n,"alphaTauG1",Q),await F(w,"G1",5,2**n,"betaTauG1",Q),await F(w,"G2",6,1,"betaG2",Q),r.nextChallenge=u.digest(),Q&&Q.info(gg(r.nextChallenge,"Next Challenge Hash: ")),o.push(r),await Xg(w,e,o),await B.close(),await w.close(),y;async function l(A,I,g,C,t,Q,i){const n=[];B.pos=E[A][0].p,await JI(w,A),f[A]=w.pos;const a=e[I],o=2*a.F.n8,r=Math.floor((1<<20)/o);let h=C;for(let A=0;A0?n[n.length-1].nextChallenge:Zg(B,E,t),a.key=Ng(B,o,r);const h=new _I(64);h.update(o);const s=await kI(I,"ptau",1,7);await Sg(s,B,E);const w=[];let f;f=await u(2,"G1",2**E*2-1,B.Fr.e(1),a.key.tau.prvKey,"tauG1"),a.tauG1=f[1],f=await u(3,"G2",2**E,B.Fr.e(1),a.key.tau.prvKey,"tauG2"),a.tauG2=f[1],f=await u(4,"G1",2**E,a.key.alpha.prvKey,a.key.tau.prvKey,"alphaTauG1"),a.alphaG1=f[0],f=await u(5,"G1",2**E,a.key.beta.prvKey,a.key.tau.prvKey,"betaTauG1"),a.betaG1=f[0],f=await u(6,"G2",1,a.key.beta.prvKey,a.key.tau.prvKey,"betaTauG2"),a.betaG2=f[0],a.partialHash=h.getPartialHash();const D=new Uint8Array(2*B.F1.n8*6+2*B.F2.n8*3);Yg(D,0,B,a.key,!1),h.update(new Uint8Array(D));const c=h.digest();t&&t.info(gg(c,"Contribution Response Hash imported: "));const y=new _I(64);return y.update(c),await l(s,"G1",2,2**E*2-1,"tauG1"),await l(s,"G2",3,2**E,"tauG2"),await l(s,"G1",4,2**E,"alphaTauG1"),await l(s,"G1",5,2**E,"betaTauG1"),await l(s,"G2",6,1,"betaG2"),a.nextChallenge=y.digest(),t&&t.info(gg(a.nextChallenge,"Next Challenge Hash: ")),n.push(a),await Xg(s,B,n),await Q.close(),await s.close(),c;async function u(A,I,g,C,E,e){const n=[];Q.pos=i[A][0].p,await JI(s,A),w[A]=s.pos;const a=B[I],o=2*a.F.n8,r=Math.floor((1<<20)/o);let f=C;for(let A=0;A=this.length&&(this.length=A+1),!0}getKeys(){const A=new AC;for(let I=0;I1<<20?new AC:[];for(let A=0;A1<<20?new AC:[];for(let A=0;A{g[C]=QC(A,I[C])})),g}return"bigint"==typeof I||void 0!==I.eq?I.toString(10):I}var iC=Object.freeze({__proto__:null,print:function(A,I,g){for(let I=0;I{let C="";return Object.keys(g).forEach((t=>{let Q=I.varIdx2Name[t];"one"==Q&&(Q="");let i=A.curve.Fr.toString(g[t]);"1"==i&&(i=""),"-1"==i&&(i="-"),""!=C&&"-"!=i[0]&&(i="+"+i),""!=C&&(i=" "+i),C=C+i+Q})),C},Q=`[ ${t(C[0])} ] * [ ${t(C[1])} ] - [ ${t(C[2])} ] = 0`;g&&g.info(Q)}},info:async function(A,I){const g=await gC(A);return hI.eq(g.prime,tC)?I&&I.info("Curve: bn-128"):hI.eq(g.prime,CC)?I&&I.info("Curve: bls12-381"):I&&I.info(`Unknown Curve. Prime: ${hI.toString(g.prime)}`),I&&I.info(`# of Wires: ${g.nVars}`),I&&I.info(`# of Constraints: ${g.nConstraints}`),I&&I.info(`# of Private Inputs: ${g.nPrvInputs}`),I&&I.info(`# of Public Inputs: ${g.nPubInputs}`),I&&I.info(`# of Labels: ${g.nLabels}`),I&&I.info(`# of Outputs: ${g.nOutputs}`),g},exportJson:async function(A,I){const g=await gC(A,!0,!0,!0,I),C=g.curve.Fr;return delete g.curve,QC(C,g)}});async function BC(A){const I={labelIdx2Name:["one"],varIdx2Name:["one"],componentIdx2Name:[]},g=await LI(A),C=await g.read(g.totalSize),t=new TextDecoder("utf-8").decode(C).split("\n");for(let A=0;A=this.length&&(this.length=A+1),!0}getKeys(){const A=new oC;for(let I=0;IE)return C&&C.error(`circuit too big for this power of tau ceremony. ${a.nConstraints}*2 > 2**${E}`),-1;if(!i[12])return C&&C.error("Powers of tau is not prepared."),-1;const w=a.nOutputs+a.nPubInputs,f=2**s;await JI(o,1),await o.writeULE32(1),await NI(o),await JI(o,2);const D=B.q,c=8*(Math.floor((hI.bitLength(D)-1)/64)+1),y=B.r,u=8*(Math.floor((hI.bitLength(y)-1)/64)+1),l=hI.mod(hI.shl(1,8*u),y),F=B.Fr.e(hI.mod(hI.mul(l,l),y));let M,p,G;await o.writeULE32(c),await vI(o,D,c),await o.writeULE32(u),await vI(o,y,u),await o.writeULE32(a.nVars),await o.writeULE32(w),await o.writeULE32(f),M=await Q.read(r,i[4][0].p),await o.write(M),M=await B.G1.batchLEMtoU(M),t.update(M),p=await Q.read(r,i[5][0].p),await o.write(p),p=await B.G1.batchLEMtoU(p),t.update(p),G=await Q.read(h,i[6][0].p),await o.write(G),G=await B.G2.batchLEMtoU(G),t.update(G);const H=new Uint8Array(r);B.G1.toRprLEM(H,0,B.G1.g);const d=new Uint8Array(h);B.G2.toRprLEM(d,0,B.G2.g);const U=new Uint8Array(r);B.G1.toRprUncompressed(U,0,B.G1.g);const m=new Uint8Array(h);B.G2.toRprUncompressed(m,0,B.G2.g),await o.write(d),await o.write(H),await o.write(d),t.update(m),t.update(U),t.update(m),await NI(o),C&&C.info("Reading r1cs");let L=await qI(e,n,2);const b=new oC(a.nVars),k=new oC(a.nVars),J=new oC(a.nVars),N=new oC(a.nVars-w-1),S=new Array(w+1);C&&C.info("Reading tauG1");let R=await qI(Q,i,12,(f-1)*r,f*r);C&&C.info("Reading tauG2");let v=await qI(Q,i,13,(f-1)*h,f*h);C&&C.info("Reading alphatauG1");let Y=await qI(Q,i,14,(f-1)*r,f*r);C&&C.info("Reading betatauG1");let P=await qI(Q,i,15,(f-1)*r,f*r);await async function(){const A=new Uint8Array(12+B.Fr.n8),I=new DataView(A.buffer),g=new Uint8Array(B.Fr.n8);B.Fr.toRprLE(g,0,B.Fr.e(1));let t=0;function Q(){const A=L.slice(t,t+4);t+=4;return new DataView(A.buffer).getUint32(0,!0)}const i=new oC;for(let A=0;A=0?B.Fr.fromRprLE(L.slice(C[3],C[3]+B.Fr.n8),0):B.Fr.fromRprLE(g,0);const Q=B.Fr.mul(t,F);B.Fr.toRprLE(A,12,Q),E.set(A,n),n+=A.length}await o.write(E),await NI(o)}(),await x(3,"G1",S,"IC"),await async function(){await JI(o,9);const A=new VA(f*r);if(s(C&&C.debug(`Writing points end ${Q}: ${n}/${g.length}`),A)))),e+=t,A++}const n=await Promise.all(E);for(let A=0;A32768?(r=new VA(s*Q),h=new VA(s*B.Fr.n8)):(r=new Uint8Array(s*Q),h=new Uint8Array(s*B.Fr.n8));let w=0,f=0;const D=[R,v,Y,P],c=new Uint8Array(B.Fr.n8);B.Fr.toRprLE(c,0,B.Fr.e(1));let y=0;for(let A=0;A=0?h.set(L.slice(I[A][t][2],I[A][t][2]+B.Fr.n8),y*B.Fr.n8):h.set(c,y*B.Fr.n8),y++;if(I.length>1){const A=[];A.push({cmd:"ALLOCSET",var:0,buff:r}),A.push({cmd:"ALLOCSET",var:1,buff:h}),A.push({cmd:"ALLOC",var:2,len:I.length*i}),w=0,f=0;let g=0;for(let C=0;C=0;A--){const I=n.contributions[A];C&&C.info("-------------------------"),C&&C.info(gg(I.contributionHash,`contribution #${A+1} ${I.name?I.name:""}:`)),1==I.type&&(C&&C.info(`Beacon generator: ${eg(I.beaconHash)}`),C&&C.info(`Beacon iterations Exp: ${I.numIterationsExp}`))}return C&&C.info("-------------------------"),C&&C.info("ZKey Ok!"),!0;async function D(A,I){const g=2*E.G1.F.n8,C=A.byteLength/g,t=E.tm.concurrency,Q=Math.floor(C/t),i=[];for(let g=0;go.contributions.length)return t&&t.error("The impoerted file does not include new contributions"),!1;for(let A=0;A=256)return Q&&Q.error("Maximum lenght of beacon hash is 255 bytes"),!1;if((t=parseInt(t))<10||t>63)return Q&&Q.error("Invalid numIterationsExp. (Must be between 10 and 63)"),!1;const{fd:B,sections:E}=await bI(A,"zkey",2),e=await sg(B,E);if("groth16"!=e.protocol)throw new Error("zkey file is not groth16");const n=await VI(e.q),a=await fg(B,n,E),o=await kI(I,"zkey",1,10),r=await Bg(i,t),h=_I(64);h.update(a.csHash);for(let A=0;A>5,this.byteCount=this.blockCount<<2,this.outputBlocks=g>>5,this.extraBytes=(31&g)>>3;for(var C=0;C<50;++C)this.s[C]=0}function b(A,I,g){L.call(this,A,I,g)}L.prototype.update=function(A){if(this.finalized)throw new Error("finalize already called");var g,C=typeof A;if("string"!==C){if("object"!==C)throw new Error(I);if(null===A)throw new Error(I);if(i&&A.constructor===ArrayBuffer)A=new Uint8Array(A);else if(!(Array.isArray(A)||i&&ArrayBuffer.isView(A)))throw new Error(I);g=!0}for(var t,Q,B=this.blocks,E=this.byteCount,e=A.length,a=this.blockCount,o=0,r=this.s;o>2]|=A[o]<>2]|=Q<>2]|=(192|Q>>6)<>2]|=(128|63&Q)<=57344?(B[t>>2]|=(224|Q>>12)<>2]|=(128|Q>>6&63)<>2]|=(128|63&Q)<>2]|=(240|Q>>18)<>2]|=(128|Q>>12&63)<>2]|=(128|Q>>6&63)<>2]|=(128|63&Q)<=E){for(this.start=t-E,this.block=B[a],t=0;t>=8);g>0;)t.unshift(g),g=255&(A>>=8),++C;return I?t.push(C):t.unshift(C),this.update(t),t.length},L.prototype.encodeString=function(A){var g,C=typeof A;if("string"!==C){if("object"!==C)throw new Error(I);if(null===A)throw new Error(I);if(i&&A.constructor===ArrayBuffer)A=new Uint8Array(A);else if(!(Array.isArray(A)||i&&ArrayBuffer.isView(A)))throw new Error(I);g=!0}var t=0,Q=A.length;if(g)t=Q;else for(var B=0;B=57344?t+=3:(E=65536+((1023&E)<<10|1023&A.charCodeAt(++B)),t+=4)}return t+=this.encode(8*t),this.update(A),t},L.prototype.bytepad=function(A,I){for(var g=this.encode(I),C=0;C>2]|=this.padding[3&I],this.lastByteIndex===this.byteCount)for(A[0]=A[g],I=1;I>4&15]+B[15&A]+B[A>>12&15]+B[A>>8&15]+B[A>>20&15]+B[A>>16&15]+B[A>>28&15]+B[A>>24&15];i%I==0&&(k(g),Q=0)}return t&&(A=g[Q],E+=B[A>>4&15]+B[15&A],t>1&&(E+=B[A>>12&15]+B[A>>8&15]),t>2&&(E+=B[A>>20&15]+B[A>>16&15])),E},L.prototype.arrayBuffer=function(){this.finalize();var A,I=this.blockCount,g=this.s,C=this.outputBlocks,t=this.extraBytes,Q=0,i=0,B=this.outputBits>>3;A=t?new ArrayBuffer(C+1<<2):new ArrayBuffer(B);for(var E=new Uint32Array(A);i>8&255,E[A+2]=I>>16&255,E[A+3]=I>>24&255;B%g==0&&k(C)}return Q&&(A=B<<2,I=C[i],E[A]=255&I,Q>1&&(E[A+1]=I>>8&255),Q>2&&(E[A+2]=I>>16&255)),E},b.prototype=new L,b.prototype.finalize=function(){return this.encode(this.outputBits,!0),L.prototype.finalize.call(this)};var k=function(A){var I,g,C,t,Q,i,B,E,e,n,o,r,h,s,w,f,D,c,y,u,l,F,M,p,G,H,d,U,m,L,b,k,J,N,S,R,v,Y,P,q,x,X,Z,V,K,O,W,j,z,T,_,$,AA,IA,gA,CA,tA,QA,iA,BA,EA,eA,nA;for(C=0;C<48;C+=2)t=A[0]^A[10]^A[20]^A[30]^A[40],Q=A[1]^A[11]^A[21]^A[31]^A[41],i=A[2]^A[12]^A[22]^A[32]^A[42],B=A[3]^A[13]^A[23]^A[33]^A[43],E=A[4]^A[14]^A[24]^A[34]^A[44],e=A[5]^A[15]^A[25]^A[35]^A[45],n=A[6]^A[16]^A[26]^A[36]^A[46],o=A[7]^A[17]^A[27]^A[37]^A[47],I=(r=A[8]^A[18]^A[28]^A[38]^A[48])^(i<<1|B>>>31),g=(h=A[9]^A[19]^A[29]^A[39]^A[49])^(B<<1|i>>>31),A[0]^=I,A[1]^=g,A[10]^=I,A[11]^=g,A[20]^=I,A[21]^=g,A[30]^=I,A[31]^=g,A[40]^=I,A[41]^=g,I=t^(E<<1|e>>>31),g=Q^(e<<1|E>>>31),A[2]^=I,A[3]^=g,A[12]^=I,A[13]^=g,A[22]^=I,A[23]^=g,A[32]^=I,A[33]^=g,A[42]^=I,A[43]^=g,I=i^(n<<1|o>>>31),g=B^(o<<1|n>>>31),A[4]^=I,A[5]^=g,A[14]^=I,A[15]^=g,A[24]^=I,A[25]^=g,A[34]^=I,A[35]^=g,A[44]^=I,A[45]^=g,I=E^(r<<1|h>>>31),g=e^(h<<1|r>>>31),A[6]^=I,A[7]^=g,A[16]^=I,A[17]^=g,A[26]^=I,A[27]^=g,A[36]^=I,A[37]^=g,A[46]^=I,A[47]^=g,I=n^(t<<1|Q>>>31),g=o^(Q<<1|t>>>31),A[8]^=I,A[9]^=g,A[18]^=I,A[19]^=g,A[28]^=I,A[29]^=g,A[38]^=I,A[39]^=g,A[48]^=I,A[49]^=g,s=A[0],w=A[1],O=A[11]<<4|A[10]>>>28,W=A[10]<<4|A[11]>>>28,U=A[20]<<3|A[21]>>>29,m=A[21]<<3|A[20]>>>29,BA=A[31]<<9|A[30]>>>23,EA=A[30]<<9|A[31]>>>23,X=A[40]<<18|A[41]>>>14,Z=A[41]<<18|A[40]>>>14,N=A[2]<<1|A[3]>>>31,S=A[3]<<1|A[2]>>>31,f=A[13]<<12|A[12]>>>20,D=A[12]<<12|A[13]>>>20,j=A[22]<<10|A[23]>>>22,z=A[23]<<10|A[22]>>>22,L=A[33]<<13|A[32]>>>19,b=A[32]<<13|A[33]>>>19,eA=A[42]<<2|A[43]>>>30,nA=A[43]<<2|A[42]>>>30,IA=A[5]<<30|A[4]>>>2,gA=A[4]<<30|A[5]>>>2,R=A[14]<<6|A[15]>>>26,v=A[15]<<6|A[14]>>>26,c=A[25]<<11|A[24]>>>21,y=A[24]<<11|A[25]>>>21,T=A[34]<<15|A[35]>>>17,_=A[35]<<15|A[34]>>>17,k=A[45]<<29|A[44]>>>3,J=A[44]<<29|A[45]>>>3,p=A[6]<<28|A[7]>>>4,G=A[7]<<28|A[6]>>>4,CA=A[17]<<23|A[16]>>>9,tA=A[16]<<23|A[17]>>>9,Y=A[26]<<25|A[27]>>>7,P=A[27]<<25|A[26]>>>7,u=A[36]<<21|A[37]>>>11,l=A[37]<<21|A[36]>>>11,$=A[47]<<24|A[46]>>>8,AA=A[46]<<24|A[47]>>>8,V=A[8]<<27|A[9]>>>5,K=A[9]<<27|A[8]>>>5,H=A[18]<<20|A[19]>>>12,d=A[19]<<20|A[18]>>>12,QA=A[29]<<7|A[28]>>>25,iA=A[28]<<7|A[29]>>>25,q=A[38]<<8|A[39]>>>24,x=A[39]<<8|A[38]>>>24,F=A[48]<<14|A[49]>>>18,M=A[49]<<14|A[48]>>>18,A[0]=s^~f&c,A[1]=w^~D&y,A[10]=p^~H&U,A[11]=G^~d&m,A[20]=N^~R&Y,A[21]=S^~v&P,A[30]=V^~O&j,A[31]=K^~W&z,A[40]=IA^~CA&QA,A[41]=gA^~tA&iA,A[2]=f^~c&u,A[3]=D^~y&l,A[12]=H^~U&L,A[13]=d^~m&b,A[22]=R^~Y&q,A[23]=v^~P&x,A[32]=O^~j&T,A[33]=W^~z&_,A[42]=CA^~QA&BA,A[43]=tA^~iA&EA,A[4]=c^~u&F,A[5]=y^~l&M,A[14]=U^~L&k,A[15]=m^~b&J,A[24]=Y^~q&X,A[25]=P^~x&Z,A[34]=j^~T&$,A[35]=z^~_&AA,A[44]=QA^~BA&eA,A[45]=iA^~EA&nA,A[6]=u^~F&s,A[7]=l^~M&w,A[16]=L^~k&p,A[17]=b^~J&G,A[26]=q^~X&N,A[27]=x^~Z&S,A[36]=T^~$&V,A[37]=_^~AA&K,A[46]=BA^~eA&IA,A[47]=EA^~nA&gA,A[8]=F^~s&f,A[9]=M^~w&D,A[18]=k^~p&H,A[19]=J^~G&d,A[28]=X^~N&R,A[29]=Z^~S&v,A[38]=$^~V&O,A[39]=AA^~K&W,A[48]=eA^~IA&CA,A[49]=nA^~gA&tA,A[0]^=a[C],A[1]^=a[C+1]};if(Q)A.exports=F;else for(p=0;p3*E.domainSize-4&&!n.isZero(I))throw new Error("T Polynomial is not divisible")}g&&g.debug("ifft Tz");const G=await n.ifft(F);for(let A=0;A<4*E.domainSize;A++){const I=G.slice(A*o,(A+1)*o);if(A>3*E.domainSize+5){if(!n.isZero(I))throw new Error("Tz Polynomial is not well calculated")}else p.set(n.add(p.slice(A*o,(A+1)*o),I),A*o)}function d(A,I,g,C,t){let Q,i;const B=n.mul(A,I),E=n.mul(A,C),e=n.mul(g,I);Q=B;let a=n.mul(g,C);return i=n.add(E,e),t&&(i=n.add(i,n.mul(h[t],a))),[Q,i]}function L(A,I,g,C,t,Q,i,B,E){let e,a;const o=n.mul(A,I),r=n.mul(A,Q),s=n.mul(t,I),D=n.mul(t,Q),c=n.mul(g,C),y=n.mul(g,B),u=n.mul(i,C),l=n.mul(i,B);e=n.mul(o,c);let F=n.mul(s,c);F=n.add(F,n.mul(r,c)),F=n.add(F,n.mul(o,u)),F=n.add(F,n.mul(o,y));let M=n.mul(D,c);M=n.add(M,n.mul(s,u)),M=n.add(M,n.mul(s,y)),M=n.add(M,n.mul(r,u)),M=n.add(M,n.mul(r,y)),M=n.add(M,n.mul(o,l));let p=n.mul(r,l);p=n.add(p,n.mul(s,l)),p=n.add(p,n.mul(D,y)),p=n.add(p,n.mul(D,u));let G=n.mul(D,l);return a=F,E&&(a=n.add(a,n.mul(h[E],M)),a=n.add(a,n.mul(w[E],p)),a=n.add(a,n.mul(f[E],G))),[e,a]}H=p.slice(0,(3*E.domainSize+6)*o),U.T1=await x(p.slice(0,E.domainSize*o),"multiexp T1"),U.T2=await x(p.slice(E.domainSize*o,2*E.domainSize*o),"multiexp T2"),U.T3=await x(p.slice(2*E.domainSize*o,(3*E.domainSize+6)*o),"multiexp T3")}(),await async function(){const A=new VA(E.domainSize*o);await i.readToBuffer(A,0,E.domainSize*o,B[7][0].p);const I=new VA(E.domainSize*o);await i.readToBuffer(I,0,E.domainSize*o,B[8][0].p);const C=new VA(E.domainSize*o);await i.readToBuffer(C,0,E.domainSize*o,B[9][0].p);const t=new VA(E.domainSize*o);await i.readToBuffer(t,0,E.domainSize*o,B[10][0].p);const Q=new VA(E.domainSize*o);await i.readToBuffer(Q,0,E.domainSize*o,B[11][0].p);const e=new VA(E.domainSize*o);await i.readToBuffer(e,0,E.domainSize*o,B[12][0].p+10*E.domainSize*o);const r=new Uint8Array(2*a.F.n8*3);a.toRprUncompressed(r,0,U.T1),a.toRprUncompressed(r,2*a.F.n8,U.T2),a.toRprUncompressed(r,4*a.F.n8,U.T3),N.xi=Y(r),g&&g.debug("xi: "+n.toString(N.xi));U.eval_a=P(F,N.xi),U.eval_b=P(M,N.xi),U.eval_c=P(p,N.xi),U.eval_s1=P(b,N.xi),U.eval_s2=P(k,N.xi),U.eval_t=P(H,N.xi),U.eval_zw=P(G,n.mul(N.xi,n.w[E.power]));const h=n.mul(U.eval_a,U.eval_b);let s=U.eval_a;const w=n.mul(N.beta,N.xi);s=n.add(s,w),s=n.add(s,N.gamma);let f=U.eval_b;f=n.add(f,n.mul(w,E.k1)),f=n.add(f,N.gamma);let D=U.eval_c;D=n.add(D,n.mul(w,E.k2)),D=n.add(D,N.gamma);const c=n.mul(n.mul(n.mul(s,f),D),N.alpha);let y=U.eval_a;y=n.add(y,n.mul(N.beta,U.eval_s1)),y=n.add(y,N.gamma);let u=U.eval_b;u=n.add(u,n.mul(N.beta,U.eval_s2)),u=n.add(u,N.gamma);let l=n.mul(y,u);l=n.mul(l,N.beta),l=n.mul(l,U.eval_zw),l=n.mul(l,N.alpha),N.xim=N.xi;for(let A=0;A=0;t--)C=n.add(n.mul(C,I),A.slice(t*o,(t+1)*o));return C}function q(A,I){const g=A.byteLength/o,C=new VA(g*o);C.set(n.zero,(g-1)*o),C.set(A.slice((g-1)*o,g*o),(g-2)*o);for(let t=g-3;t>=0;t--)C.set(n.add(A.slice((t+1)*o,(t+2)*o),n.mul(I,C.slice((t+1)*o,(t+2)*o))),t*o);if(!n.eq(A.slice(0,o),n.mul(n.neg(I),C.slice(0,o))))throw new Error("Polinomial does not divide");return C}async function x(A,I){const C=A.byteLength/o,t=J.slice(0,C*e.G1.F.n8*2),Q=await e.Fr.batchFromMontgomery(A);let i=await e.G1.multiExpAffine(t,Q,g,I);return i=e.G1.toAffine(i),i}async function X(A,I){I=I||[];let g=await n.ifft(A);const C=new VA(o*E.domainSize*4);C.set(g,0);const t=new VA(o*(E.domainSize+I.length));t.set(g,0);for(let A=0;A>1),g=A.slice(A.length>>1),C=Q(I),t=Q(g),B=C[0],E=t[0],e=c++,n=i.Fr.zero,a=h.neg(C[1]),o=h.neg(t[1]),r=i.Fr.one,s=i.Fr.zero;return f.push([B,E,e,n,a,o,r,s]),D.push([B,E,C[1],t[1]]),[e,i.Fr.one]}for(let A=1;A<=y;A++){const I=A,g=0,C=0,t=i.Fr.zero,Q=i.Fr.one,B=i.Fr.zero,E=i.Fr.zero,e=i.Fr.zero;f.push([I,g,C,t,Q,B,E,e])}for(let A=0;AB)return C&&C.error(`circuit too big for this power of tau ceremony. ${f.length} > 2**${B}`),-1;if(!Q[12])return C&&C.error("Powers of tau is not prepared."),-1;const M=new VA(F*a),p=Q[12][0].p+(2**l-1)*a;await t.readToBuffer(M,0,F*a,p);const[G,H]=function(){let A=h.two;for(;g(A,[],l);)h.add(A,h.one);let I=h.add(A,h.one);for(;g(I,[A],l);)h.add(I,h.one);return[A,I];function g(A,I,g){const C=2**g;let t=h.one;for(let Q=0;Q