var CryptoJS=CryptoJS||function(n,t){var u={},f=u.lib={},o=function(){},i=f.Base={extend:function(n){o.prototype=this;var t=new o;return n&&t.mixIn(n),t.hasOwnProperty("init")||(t.init=function(){t.$super.init.apply(this,arguments)}),t.init.prototype=t,t.$super=this,t},create:function(){var n=this.extend();return n.init.apply(n,arguments),n},init:function(){},mixIn:function(n){for(var t in n)n.hasOwnProperty(t)&&(this[t]=n[t]);n.hasOwnProperty("toString")&&(this.toString=n.toString)},clone:function(){return this.init.prototype.extend(this)}},r=f.WordArray=i.extend({init:function(n,i){n=this.words=n||[];this.sigBytes=i!=t?i:4*n.length},toString:function(n){return(n||l).stringify(this)},concat:function(n){var i=this.words,r=n.words,u=this.sigBytes,t;if(n=n.sigBytes,this.clamp(),u%4)for(t=0;t<n;t++)i[u+t>>>2]|=(r[t>>>2]>>>24-8*(t%4)&255)<<24-8*((u+t)%4);else if(65535<r.length)for(t=0;t<n;t+=4)i[u+t>>>2]=r[t>>>2];else i.push.apply(i,r);return this.sigBytes+=n,this},clamp:function(){var i=this.words,t=this.sigBytes;i[t>>>2]&=4294967295<<32-8*(t%4);i.length=n.ceil(t/4)},clone:function(){var n=i.clone.call(this);return n.words=this.words.slice(0),n},random:function(t){for(var i=[],u=0;u<t;u+=4)i.push(4294967296*n.random()|0);return new r.init(i,t)}}),e=u.enc={},l=e.Hex={stringify:function(n){var u=n.words,i,t,r;for(n=n.sigBytes,i=[],t=0;t<n;t++)r=u[t>>>2]>>>24-8*(t%4)&255,i.push((r>>>4).toString(16)),i.push((r&15).toString(16));return i.join("")},parse:function(n){for(var i=n.length,u=[],t=0;t<i;t+=2)u[t>>>3]|=parseInt(n.substr(t,2),16)<<24-4*(t%8);return new r.init(u,i/2)}},s=e.Latin1={stringify:function(n){var r=n.words,i,t;for(n=n.sigBytes,i=[],t=0;t<n;t++)i.push(String.fromCharCode(r[t>>>2]>>>24-8*(t%4)&255));return i.join("")},parse:function(n){for(var i=n.length,u=[],t=0;t<i;t++)u[t>>>2]|=(n.charCodeAt(t)&255)<<24-8*(t%4);return new r.init(u,i)}},a=e.Utf8={stringify:function(n){try{return decodeURIComponent(escape(s.stringify(n)))}catch(t){throw Error("Malformed UTF-8 data");}},parse:function(n){return s.parse(unescape(encodeURIComponent(n)))}},h=f.BufferedBlockAlgorithm=i.extend({reset:function(){this._data=new r.init;this._nDataBytes=0},_append:function(n){"string"==typeof n&&(n=a.parse(n));this._data.concat(n);this._nDataBytes+=n.sigBytes},_process:function(t){var e=this._data,s=e.words,u=e.sigBytes,o=this.blockSize,f=u/(4*o),f=t?n.ceil(f):n.max((f|0)-this._minBufferSize,0),i;if(t=f*o,u=n.min(4*t,u),t){for(i=0;i<t;i+=o)this._doProcessBlock(s,i);i=s.splice(0,t);e.sigBytes-=u}return new r.init(i,u)},clone:function(){var n=i.clone.call(this);return n._data=this._data.clone(),n},_minBufferSize:0}),c;return f.Hasher=h.extend({cfg:i.extend(),init:function(n){this.cfg=this.cfg.extend(n);this.reset()},reset:function(){h.reset.call(this);this._doReset()},update:function(n){return this._append(n),this._process(),this},finalize:function(n){return n&&this._append(n),this._doFinalize()},blockSize:16,_createHelper:function(n){return function(t,i){return new n.init(i).finalize(t)}},_createHmacHelper:function(n){return function(t,i){return new c.HMAC.init(n,i).finalize(t)}}}),c=u.algo={},u}(Math);(function(n){function i(n,t,i,r,u,f,e){return n=n+(t&i|~t&r)+u+e,(n<<f|n>>>32-f)+t}function r(n,t,i,r,u,f,e){return n=n+(t&r|i&~r)+u+e,(n<<f|n>>>32-f)+t}function u(n,t,i,r,u,f,e){return n=n+(t^i^r)+u+e,(n<<f|n>>>32-f)+t}function f(n,t,i,r,u,f,e){return n=n+(i^(t|~r))+u+e,(n<<f|n>>>32-f)+t}for(var o=CryptoJS,e=o.lib,c=e.WordArray,s=e.Hasher,e=o.algo,t=[],h=0;64>h;h++)t[h]=4294967296*n.abs(n.sin(h+1))|0;e=e.MD5=s.extend({_doReset:function(){this._hash=new c.init([1732584193,4023233417,2562383102,271733878])},_doProcessBlock:function(n,e){for(var v,a,l=0;16>l;l++)v=e+l,a=n[v],n[v]=(a<<8|a>>>24)&16711935|(a<<24|a>>>8)&4278255360;var l=this._hash.words,v=n[e+0],a=n[e+1],y=n[e+2],p=n[e+3],w=n[e+4],b=n[e+5],k=n[e+6],d=n[e+7],g=n[e+8],nt=n[e+9],tt=n[e+10],it=n[e+11],rt=n[e+12],ut=n[e+13],ft=n[e+14],et=n[e+15],o=l[0],s=l[1],h=l[2],c=l[3],o=i(o,s,h,c,v,7,t[0]),c=i(c,o,s,h,a,12,t[1]),h=i(h,c,o,s,y,17,t[2]),s=i(s,h,c,o,p,22,t[3]),o=i(o,s,h,c,w,7,t[4]),c=i(c,o,s,h,b,12,t[5]),h=i(h,c,o,s,k,17,t[6]),s=i(s,h,c,o,d,22,t[7]),o=i(o,s,h,c,g,7,t[8]),c=i(c,o,s,h,nt,12,t[9]),h=i(h,c,o,s,tt,17,t[10]),s=i(s,h,c,o,it,22,t[11]),o=i(o,s,h,c,rt,7,t[12]),c=i(c,o,s,h,ut,12,t[13]),h=i(h,c,o,s,ft,17,t[14]),s=i(s,h,c,o,et,22,t[15]),o=r(o,s,h,c,a,5,t[16]),c=r(c,o,s,h,k,9,t[17]),h=r(h,c,o,s,it,14,t[18]),s=r(s,h,c,o,v,20,t[19]),o=r(o,s,h,c,b,5,t[20]),c=r(c,o,s,h,tt,9,t[21]),h=r(h,c,o,s,et,14,t[22]),s=r(s,h,c,o,w,20,t[23]),o=r(o,s,h,c,nt,5,t[24]),c=r(c,o,s,h,ft,9,t[25]),h=r(h,c,o,s,p,14,t[26]),s=r(s,h,c,o,g,20,t[27]),o=r(o,s,h,c,ut,5,t[28]),c=r(c,o,s,h,y,9,t[29]),h=r(h,c,o,s,d,14,t[30]),s=r(s,h,c,o,rt,20,t[31]),o=u(o,s,h,c,b,4,t[32]),c=u(c,o,s,h,g,11,t[33]),h=u(h,c,o,s,it,16,t[34]),s=u(s,h,c,o,ft,23,t[35]),o=u(o,s,h,c,a,4,t[36]),c=u(c,o,s,h,w,11,t[37]),h=u(h,c,o,s,d,16,t[38]),s=u(s,h,c,o,tt,23,t[39]),o=u(o,s,h,c,ut,4,t[40]),c=u(c,o,s,h,v,11,t[41]),h=u(h,c,o,s,p,16,t[42]),s=u(s,h,c,o,k,23,t[43]),o=u(o,s,h,c,nt,4,t[44]),c=u(c,o,s,h,rt,11,t[45]),h=u(h,c,o,s,et,16,t[46]),s=u(s,h,c,o,y,23,t[47]),o=f(o,s,h,c,v,6,t[48]),c=f(c,o,s,h,d,10,t[49]),h=f(h,c,o,s,ft,15,t[50]),s=f(s,h,c,o,b,21,t[51]),o=f(o,s,h,c,rt,6,t[52]),c=f(c,o,s,h,p,10,t[53]),h=f(h,c,o,s,tt,15,t[54]),s=f(s,h,c,o,a,21,t[55]),o=f(o,s,h,c,g,6,t[56]),c=f(c,o,s,h,et,10,t[57]),h=f(h,c,o,s,k,15,t[58]),s=f(s,h,c,o,ut,21,t[59]),o=f(o,s,h,c,w,6,t[60]),c=f(c,o,s,h,it,10,t[61]),h=f(h,c,o,s,y,15,t[62]),s=f(s,h,c,o,nt,21,t[63]);l[0]=l[0]+o|0;l[1]=l[1]+s|0;l[2]=l[2]+h|0;l[3]=l[3]+c|0},_doFinalize:function(){var u=this._data,r=u.words,t=8*this._nDataBytes,i=8*u.sigBytes,f;for(r[i>>>5]|=128<<24-i%32,f=n.floor(t/4294967296),r[(i+64>>>9<<4)+15]=(f<<8|f>>>24)&16711935|(f<<24|f>>>8)&4278255360,r[(i+64>>>9<<4)+14]=(t<<8|t>>>24)&16711935|(t<<24|t>>>8)&4278255360,u.sigBytes=4*(r.length+1),this._process(),u=this._hash,r=u.words,t=0;4>t;t++)i=r[t],r[t]=(i<<8|i>>>24)&16711935|(i<<24|i>>>8)&4278255360;return u},clone:function(){var n=s.clone.call(this);return n._hash=this._hash.clone(),n}});o.MD5=s._createHelper(e);o.HmacMD5=s._createHmacHelper(e)})(Math),function(n){function u(n,t,i){var p=0,w=[],b=0,k,r,tt,d,u,g,l,v=!1,nt=!1,it=[],rt=[],y,ut=!1;if(i=i||{},k=i.encoding||"UTF8",y=i.numRounds||1,tt=c(t,k),y!==parseInt(y,10)||1>y)throw Error("numRounds must a integer >= 1");if(g=function(t,i){return a(t,i,n)},l=function(t,i,r,u){var f,e;if("SHA-384"===n||"SHA-512"===n)f=(i+129>>>10<<5)+31,e=32;else throw Error("Unexpected error in SHA-2 implementation");for(;t.length<=f;)t.push(0);for(t[i>>>5]|=128<<24-i%32,t[f]=i+r,r=t.length,i=0;i<r;i+=e)u=a(t.slice(i,i+e),u,n);if("SHA-384"===n)t=[u[0].a,u[0].b,u[1].a,u[1].b,u[2].a,u[2].b,u[3].a,u[3].b,u[4].a,u[4].b,u[5].a,u[5].b];else if("SHA-512"===n)t=[u[0].a,u[0].b,u[1].a,u[1].b,u[2].a,u[2].b,u[3].a,u[3].b,u[4].a,u[4].b,u[5].a,u[5].b,u[6].a,u[6].b,u[7].a,u[7].b];else throw Error("Unexpected error in SHA-2 implementation");return t},"SHA-384"===n)u=1024,d=384;else if("SHA-512"===n)u=1024,d=512;else throw Error("Chosen SHA variant is not supported");r=f(n);this.setHMACKey=function(t,i,e){var o;if(!0===nt)throw Error("HMAC key already set");if(!0===v)throw Error("Cannot set HMAC key after finalizing hash");if(!0===ut)throw Error("Cannot set HMAC key after calling update");if(k=(e||{}).encoding||"UTF8",i=c(i,k)(t),t=i.binLen,i=i.value,o=u>>>3,e=o/4-1,o<t/8){for(i=l(i,t,0,f(n));i.length<=e;)i.push(0);i[e]&=4294967040}else if(o>t/8){for(;i.length<=e;)i.push(0);i[e]&=4294967040}for(t=0;t<=e;t+=1)it[t]=i[t]^909522486,rt[t]=i[t]^1549556828;r=g(it,r);p=u;nt=!0};this.update=function(n){var t,e,i,f=0,o=u>>>5;for(t=tt(n,w,b),n=t.binLen,e=t.value,t=n>>>5,i=0;i<t;i+=o)f+u<=n&&(r=g(e.slice(i,i+o),r),f+=u);p+=f;w=e.slice(f>>>5);b=n%u;ut=!0};this.getHash=function(t,i){var u,c,a;if(!0===nt)throw Error("Cannot call getHash after setting HMAC key");a=h(i);switch(t){case"HEX":u=function(n){return e(n,a)};break;case"B64":u=function(n){return o(n,a)};break;case"BYTES":u=s;break;default:throw Error("format must be HEX, B64, or BYTES");}if(!1===v)for(r=l(w,b,p,r),c=1;c<y;c+=1)r=l(r,d,0,f(n));return v=!0,u(r)};this.getHMAC=function(t,i){var c,y,a;if(!1===nt)throw Error("Cannot call getHMAC without first setting HMAC key");a=h(i);switch(t){case"HEX":c=function(n){return e(n,a)};break;case"B64":c=function(n){return o(n,a)};break;case"BYTES":c=s;break;default:throw Error("outputFormat must be HEX, B64, or BYTES");}return!1===v&&(y=l(w,b,p,r),r=g(rt,f(n)),r=l(y,d,u,r)),v=!0,c(r)}}function t(n,t){this.a=n;this.b=t}function y(n,t,i){var u=n.length,r,f,e,o,s;if(t=t||[0],i=i||0,s=i>>>3,0!=u%2)throw Error("String of HEX type must be in byte increments");for(r=0;r<u;r+=2){if(f=parseInt(n.substr(r,2),16),isNaN(f))throw Error("String of HEX type contains invalid characters");for(o=(r>>>1)+s,e=o>>>2;t.length<=e;)t.push(0);t[e]|=f<<8*(3-o%4)}return{value:t,binLen:4*u+i}}function p(n,t,i){var r=[],u,o,f,e,r=t||[0];for(i=i||0,o=i>>>3,u=0;u<n.length;u+=1)t=n.charCodeAt(u),e=u+o,f=e>>>2,r.length<=f&&r.push(0),r[f]|=t<<8*(3-e%4);return{value:r,binLen:8*n.length+i}}function w(n,t,i){var f=[],s=0,e,u,r,h,o,c,f=t||[0];if(i=i||0,t=i>>>3,-1===n.search(/^[a-zA-Z0-9=+\/]+$/))throw Error("Invalid character in base-64 string");if(u=n.indexOf("="),n=n.replace(/\=/g,""),-1!==u&&u<n.length)throw Error("Invalid '=' found in base-64 string");for(u=0;u<n.length;u+=4){for(o=n.substr(u,4),r=h=0;r<o.length;r+=1)e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(o[r]),h|=e<<18-6*r;for(r=0;r<o.length-1;r+=1){for(c=s+t,e=c>>>2;f.length<=e;)f.push(0);f[e]|=(h>>>16-8*r&255)<<8*(3-c%4);s+=1}}return{value:f,binLen:8*s+i}}function e(n,t){for(var r="",f=4*n.length,u,i=0;i<f;i+=1)u=n[i>>>2]>>>8*(3-i%4),r+="0123456789abcdef".charAt(u>>>4&15)+"0123456789abcdef".charAt(u&15);return t.outputUpper?r.toUpperCase():r}function o(n,t){for(var f="",e=4*n.length,u,r,i=0;i<e;i+=3)for(r=i+1>>>2,u=n.length<=r?0:n[r],r=i+2>>>2,r=n.length<=r?0:n[r],r=(n[i>>>2]>>>8*(3-i%4)&255)<<16|(u>>>8*(3-(i+1)%4)&255)<<8|r>>>8*(3-(i+2)%4)&255,u=0;4>u;u+=1)f+=8*i+6*u<=32*n.length?"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(r>>>6*(3-u)&63):t.b64Pad;return f}function s(n){for(var i="",u=4*n.length,r,t=0;t<u;t+=1)r=n[t>>>2]>>>8*(3-t%4)&255,i+=String.fromCharCode(r);return i}function h(n){var t={outputUpper:!1,b64Pad:"="};if(n=n||{},t.outputUpper=n.outputUpper||!1,!0===n.hasOwnProperty("b64Pad")&&(t.b64Pad=n.b64Pad),"boolean"!=typeof t.outputUpper)throw Error("Invalid outputUpper formatting option");if("string"!=typeof t.b64Pad)throw Error("Invalid b64Pad formatting option");return t}function c(n,t){var i;switch(t){case"UTF8":case"UTF16BE":case"UTF16LE":break;default:throw Error("encoding must be UTF8, UTF16BE, or UTF16LE");}switch(n){case"HEX":i=y;break;case"TEXT":i=function(n,i,r){var f=[],e=[],c=0,u,o,l,s,h,f=i||[0];if(i=r||0,l=i>>>3,"UTF8"===t)for(u=0;u<n.length;u+=1)for(r=n.charCodeAt(u),e=[],128>r?e.push(r):2048>r?(e.push(192|r>>>6),e.push(128|r&63)):55296>r||57344<=r?e.push(224|r>>>12,128|r>>>6&63,128|r&63):(u+=1,r=65536+((r&1023)<<10|n.charCodeAt(u)&1023),e.push(240|r>>>18,128|r>>>12&63,128|r>>>6&63,128|r&63)),o=0;o<e.length;o+=1){for(h=c+l,s=h>>>2;f.length<=s;)f.push(0);f[s]|=e[o]<<8*(3-h%4);c+=1}else if("UTF16BE"===t||"UTF16LE"===t)for(u=0;u<n.length;u+=1){for(r=n.charCodeAt(u),"UTF16LE"===t&&(o=r&255,r=o<<8|r>>>8),h=c+l,s=h>>>2;f.length<=s;)f.push(0);f[s]|=r<<8*(2-h%4);c+=2}return{value:f,binLen:8*c+i}};break;case"B64":i=w;break;case"BYTES":i=p;break;default:throw Error("format must be HEX, TEXT, B64, or BYTES");}return i}function r(n,i){var r=null,r=new t(n.a,n.b);return 32>=i?new t(r.a>>>i|r.b<<32-i&4294967295,r.b>>>i|r.a<<32-i&4294967295):new t(r.b>>>i-32|r.a<<64-i&4294967295,r.a>>>i-32|r.b<<64-i&4294967295)}function l(n,i){return 32>=i?new t(n.a>>>i,n.b>>>i|n.a<<32-i&4294967295):new t(0,n.a>>>i-32)}function b(n,i,r){return new t(n.a&i.a^~n.a&r.a,n.b&i.b^~n.b&r.b)}function k(n,i,r){return new t(n.a&i.a^n.a&r.a^i.a&r.a,n.b&i.b^n.b&r.b^i.b&r.b)}function d(n){var i=r(n,28),u=r(n,34);return n=r(n,39),new t(i.a^u.a^n.a,i.b^u.b^n.b)}function g(n){var i=r(n,14),u=r(n,18);return n=r(n,41),new t(i.a^u.a^n.a,i.b^u.b^n.b)}function nt(n){var i=r(n,1),u=r(n,8);return n=l(n,7),new t(i.a^u.a^n.a,i.b^u.b^n.b)}function tt(n){var i=r(n,19),u=r(n,61);return n=l(n,6),new t(i.a^u.a^n.a,i.b^u.b^n.b)}function it(n,i){var r,u,f;return r=(n.b&65535)+(i.b&65535),u=(n.b>>>16)+(i.b>>>16)+(r>>>16),f=(u&65535)<<16|r&65535,r=(n.a&65535)+(i.a&65535)+(u>>>16),u=(n.a>>>16)+(i.a>>>16)+(r>>>16),new t((u&65535)<<16|r&65535,f)}function rt(n,i,r,u){var f,e,o;return f=(n.b&65535)+(i.b&65535)+(r.b&65535)+(u.b&65535),e=(n.b>>>16)+(i.b>>>16)+(r.b>>>16)+(u.b>>>16)+(f>>>16),o=(e&65535)<<16|f&65535,f=(n.a&65535)+(i.a&65535)+(r.a&65535)+(u.a&65535)+(e>>>16),e=(n.a>>>16)+(i.a>>>16)+(r.a>>>16)+(u.a>>>16)+(f>>>16),new t((e&65535)<<16|f&65535,o)}function ut(n,i,r,u,f){var e,o,s;return e=(n.b&65535)+(i.b&65535)+(r.b&65535)+(u.b&65535)+(f.b&65535),o=(n.b>>>16)+(i.b>>>16)+(r.b>>>16)+(u.b>>>16)+(f.b>>>16)+(e>>>16),s=(o&65535)<<16|e&65535,e=(n.a&65535)+(i.a&65535)+(r.a&65535)+(u.a&65535)+(f.a&65535)+(o>>>16),o=(n.a>>>16)+(i.a>>>16)+(r.a>>>16)+(u.a>>>16)+(f.a>>>16)+(e>>>16),new t((o&65535)<<16|e&65535,s)}function f(n){var i,r;i=[3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428];r=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225];switch(n){case"SHA-224":n=i;break;case"SHA-256":n=r;break;case"SHA-384":n=[new t(3418070365,i[0]),new t(1654270250,i[1]),new t(2438529370,i[2]),new t(355462360,i[3]),new t(1731405415,i[4]),new t(41048885895,i[5]),new t(3675008525,i[6]),new t(1203062813,i[7])];break;case"SHA-512":n=[new t(r[0],4089235720),new t(r[1],2227873595),new t(r[2],4271175723),new t(r[3],1595750129),new t(r[4],2917565137),new t(r[5],725511199),new t(r[6],4215389547),new t(r[7],327033209)];break;default:throw Error("Unknown SHA variant");}return n}function a(n,i,r){var h,c,p,s,l,a,w,y,e,ft,u,et,f,ot,st,ht,ct,lt,at,vt,yt,pt,o=[],wt;if("SHA-384"===r||"SHA-512"===r)ft=80,et=2,pt=t,f=it,ot=rt,st=ut,ht=nt,ct=tt,lt=d,at=g,yt=k,vt=b,wt=v;else throw Error("Unexpected error in SHA-2 implementation");for(r=i[0],h=i[1],c=i[2],p=i[3],s=i[4],l=i[5],a=i[6],w=i[7],u=0;u<ft;u+=1)16>u?(e=u*et,y=n.length<=e?0:n[e],e=n.length<=e+1?0:n[e+1],o[u]=new pt(y,e)):o[u]=ot(ct(o[u-2]),o[u-7],ht(o[u-15]),o[u-16]),y=st(w,at(s),vt(s,l,a),wt[u],o[u]),e=f(lt(r),yt(r,h,c)),w=a,a=l,l=s,s=f(p,y),p=c,c=h,h=r,r=f(y,e);return i[0]=f(r,i[0]),i[1]=f(h,i[1]),i[2]=f(c,i[2]),i[3]=f(p,i[3]),i[4]=f(s,i[4]),i[5]=f(l,i[5]),i[6]=f(a,i[6]),i[7]=f(w,i[7]),i}var i,v;i=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298];v=[new t(i[0],3609767458),new t(i[1],602891725),new t(i[2],3964484399),new t(i[3],2173295548),new t(i[4],4081628472),new t(i[5],3053834265),new t(i[6],2937671579),new t(i[7],3664609560),new t(i[8],2734883394),new t(i[9],1164996542),new t(i[10],1323610764),new t(i[11],3590304994),new t(i[12],4068182383),new t(i[13],991336113),new t(i[14],633803317),new t(i[15],3479774868),new t(i[16],2666613458),new t(i[17],944711139),new t(i[18],2341262773),new t(i[19],2007800933),new t(i[20],1495990901),new t(i[21],1856431235),new t(i[22],3175218132),new t(i[23],2198950837),new t(i[24],3999719339),new t(i[25],766784016),new t(i[26],2566594879),new t(i[27],3203337956),new t(i[28],1034457026),new t(i[29],2466948901),new t(i[30],3758326383),new t(i[31],168717936),new t(i[32],1188179964),new t(i[33],1546045734),new t(i[34],1522805485),new t(i[35],2643833823),new t(i[36],2343527390),new t(i[37],1014477480),new t(i[38],1206759142),new t(i[39],344077627),new t(i[40],1290863460),new t(i[41],3158454273),new t(i[42],3505952657),new t(i[43],106217008),new t(i[44],3606008344),new t(i[45],1432725776),new t(i[46],1467031594),new t(i[47],851169720),new t(i[48],3100823752),new t(i[49],1363258195),new t(i[50],3750685593),new t(i[51],3785050280),new t(i[52],3318307427),new t(i[53],3812723403),new t(i[54],2003034995),new t(i[55],3602036899),new t(i[56],1575990012),new t(i[57],1125592928),new t(i[58],2716904306),new t(i[59],442776044),new t(i[60],593698344),new t(i[61],3733110249),new t(i[62],2999351573),new t(i[63],3815920427),new t(3391569614,3928383900),new t(3515267271,566280711),new t(3940187606,3454069534),new t(4118630271,4000239992),new t(116418474,1914138554),new t(174292421,2731055270),new t(289380356,3203993006),new t(460393269,320620315),new t(685471733,587496836),new t(852142971,1086792851),new t(1017036298,365543100),new t(1126000580,2618297676),new t(1288033470,3409855158),new t(1501505948,4234509866),new t(1607167915,987167468),new t(1816402316,1246189591)];"function"==typeof define&&define.amd?define(function(){return u}):"undefined"!=typeof exports?"undefined"!=typeof module&&module.exports?module.exports=exports=u:exports=u:n.jsSHA=u}(this);var byteUtils={hexChar:["0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F"],getRandomByte:function(){var n=1/(Math.random()*Math.random()+Math.random()+1);return Math.floor(n*255)},getRandomBytes:function(n){var i,t;if(typeof window.crypto!="undefined")return this.getCryptoRandomBytes(n);for(i=new Array(n),t=0;t<n;t++)i[t]=this.getRandomByte();return i},getCryptoRandomBytes:function(n){var t=new Uint8Array(n);return window.crypto.getRandomValues(t),[].slice.call(t)},getRandomByteHEX:function(){return this.byteToHex(this.getRandomByte())},getRandomBytesHEX:function(n){return byteUtils.bytesToHex(this.getRandomBytes(n))},getCryptoRandomBytesHEX:function(n){return byteUtils.bytesToHex(this.getCryptoRandomBytes(n))},xorHEX:function(n,t){for(var r="",i=0;i<n.length;i+=2)r+=this.byteToHex(this.hex2byte(n[i]+n[i+1])^this.hex2byte(t[i]+t[i+1]));return r},byteToHex:function(n){return this.hexChar[n>>4&15]+this.hexChar[n&15]},bytesToHex:function(n){for(var i="",t=0;t<n.length;t++)i=i+this.byteToHex(n[t]);return i},hex2byte:function(n){return parseInt(n,16)},hex2bytes:function(n){for(var t=[];n.length>=2;)t.push(this.hex2byte(n.substring(0,2))),n=n.substring(2,n.length);return t},int2bytes:function(n){return""+this.byteToHex(n>>24&255)+this.byteToHex(n>>16&255)+this.byteToHex(n>>8&255)+this.byteToHex(n&255)},wordArrayToBytes:function(n){for(var f=n.words,i=n.sigBytes,r=new Uint8Array(i),u,t=0;t<i;t++)u=f[t>>>2]>>>24-t%4*8&255,r[t]=u;return r},getRandomInt:function(){if(typeof window.crypto!="undefined"){var n=new Int32Array(1);return window.crypto.getRandomValues(n),Math.abs(Math.floor(n[0]))}return Math.floor(Math.random()*INT_MAX)},getRandomIntBounded:function(n,t){if(n>=t)throw"Минимальное значение должно быть строго меньше максимального";var i=this.getRandomInt();return Math.floor((t-n)/INT_MAX*i+n)}},INT_MAX=2147483647,Auth={INT_ONE:"00000001",CLIENT_KEY_STR:"",SERVER_KEY_STR:"",hashType:"SHA-512",exports:{saltedPassword:"",authMessage:"",clientProof:""},init:function(n,t){this.CLIENT_KEY_STR=n;this.SERVER_KEY_STR=t},hi:function(n,t,i){for(var e=t+Auth.INT_ONE,r=this.getHmac(n,"HEX",e,"HEX"),u=r,f=1;f<i;f++)u=this.getHmac(n,"HEX",u,"HEX"),r=byteUtils.xorHEX(r,u);return r},"getnonсeC":function(){return byteUtils.getRandomBytesHEX(32)},getSalt:function(){return byteUtils.getRandomBytesHEX(32)},getIterationCount:function(){return byteUtils.getRandomIntBounded(4096,5e3)},getAuthMessage:function(n,t,i,r,u){for(var e="",f=0;f<n.length;f++)e+=byteUtils.byteToHex(n.charCodeAt(f));for(e+=t,e+=i,e+=byteUtils.int2bytes(r),f=0;f<u.length;f++)e+=byteUtils.byteToHex(u.charCodeAt(f));return e},getClientProof:function(n,t,i,r,u,f){var e,o,s;return this.exports.saltedPassword=this.hi(t,i,r),e=this.getHmac(this.exports.saltedPassword,"HEX",this.CLIENT_KEY_STR,"HEX"),o=this.getHash(e),this.exports.authMessage=this.getAuthMessage(n,u,i,r,f),s=this.getHmac(o,"HEX",this.exports.authMessage,"HEX"),this.exports.clientProof=byteUtils.xorHEX(e,s),this.exports.clientProof},checkServerSignature:function(n){var t=this.getHmac(this.exports.saltedPassword,"HEX",this.SERVER_KEY_STR,"HEX"),i=this.getHmac(t,"HEX",this.exports.authMessage,"HEX");return i==n},getMd5Hash:function(n){return CryptoJS.MD5(n).toString()},getHash:function(n){var t=new jsSHA(this.hashType,"HEX");return t.update(n),t.getHash("HEX")},getHmac:function(n,t,i,r){var u=new jsSHA(this.hashType,r);return u.setHMACKey(n,t),u.update(i),u.getHMAC("HEX")},getHMacHex:function(n,t){var i=new jsSHA(this.hashType,"TEXT");return i.setHMACKey(n,"HEX"),i.update(t),i.getHMAC("HEX")},getHMacHexHex:function(n,t){var i=new jsSHA(this.hashType,"HEX");return i.setHMACKey(n,"HEX"),i.update(t),i.getHMAC("HEX")}}