Skip to content

Instantly share code, notes, and snippets.

@dchest
Created October 15, 2014 20:37
Show Gist options
  • Select an option

  • Save dchest/a88ff05fdbd235137fff to your computer and use it in GitHub Desktop.

Select an option

Save dchest/a88ff05fdbd235137fff to your computer and use it in GitHub Desktop.
asmCrypto.js SHA512 - from https://github.com/vibornoff/asmcrypto.js built: grunt --with sha512
!function(a,b){"use strict";function c(){var a=Error.apply(this,arguments);this.message=a.message,this.stack=a.stack}function d(){var a=Error.apply(this,arguments);this.message=a.message,this.stack=a.stack}function e(){var a=Error.apply(this,arguments);this.message=a.message,this.stack=a.stack}function f(a){for(var b=a.length,c=new Uint8Array(b),d=0;b>d;d++){var e=a.charCodeAt(d);if(e>>>8)throw new Error("Wide characters are not allowed");c[d]=e}return c}function g(a){for(var b="",c=0;c<a.length;c++)b+=String.fromCharCode(a[c]);return b}function h(a){for(var b=(a.byteLength||a.length)/a.length,c="",d=0;d<a.length;d++){var e=a[d].toString(16);e.length<2*b&&(c+="00000000000000".substr(0,2*b-e.length)),c+=e}return c}function i(a){return btoa(g(a))}function j(a){return"string"==typeof a}function k(a){return a instanceof ArrayBuffer}function l(a){return a instanceof Uint8Array}function m(){return this.result=null,this.pos=0,this.len=0,this.asm.reset(),this}function n(a){if(null!==this.result)throw new c("state must be reset before processing new data");if(j(a)&&(a=f(a)),k(a)&&(a=new Uint8Array(a)),!l(a))throw new TypeError("data isn't of expected type");for(var b=this.asm,d=this.heap,e=this.pos,g=this.len,h=0,i=a.byteLength,m=0;i>0;)m=d.byteLength-e-g,m=i>m?m:i,d.set(new Uint8Array(a.buffer||a,h,m),this.pos+this.len),d.set(a.subarray(h,h+m),e+g),g+=m,h+=m,i-=m,m=b.process(e,g),e+=m,g-=m,g||(e=0);return this.pos=e,this.len=g,this}function o(){if(null!==this.result)throw new c("state must be reset before processing new data");return this.asm.finish(this.pos,this.len,0),this.result=new Uint8Array(this.HASH_SIZE),this.result.set(this.heap.subarray(0,this.HASH_SIZE)),this.pos=0,this.len=0,this}function p(a,b,c){"use asm";var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,u=0;var v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,$=0;var _=new a.Uint8Array(c);function ab(mb,nb,ob,pb,qb,rb,sb,tb,ub,vb,wb,xb,yb,zb,Ab,Bb,Cb,Db,Eb,Fb,Gb,Hb,Ib,Jb,Kb,Lb,Mb,Nb,Ob,Pb,Qb,Rb){mb=mb|0;nb=nb|0;ob=ob|0;pb=pb|0;qb=qb|0;rb=rb|0;sb=sb|0;tb=tb|0;ub=ub|0;vb=vb|0;wb=wb|0;xb=xb|0;yb=yb|0;zb=zb|0;Ab=Ab|0;Bb=Bb|0;Cb=Cb|0;Db=Db|0;Eb=Eb|0;Fb=Fb|0;Gb=Gb|0;Hb=Hb|0;Ib=Ib|0;Jb=Jb|0;Kb=Kb|0;Lb=Lb|0;Mb=Mb|0;Nb=Nb|0;Ob=Ob|0;Pb=Pb|0;Qb=Qb|0;Rb=Rb|0;var Sb=0,Tb=0,Ub=0,Vb=0,Wb=0,Xb=0,Yb=0,Zb=0,$b=0,_b=0,ac=0,bc=0,cc=0,dc=0,ec=0,fc=0,gc=0,hc=0,ic=0;Sb=d;Tb=e;Ub=f;Vb=g;Wb=h;Xb=i;Yb=j;Zb=k;$b=l;_b=m;ac=n;bc=o;cc=q;dc=r;ec=s;fc=t;hc=3609767458+nb|0;gc=1116352408+mb+(hc>>>0<nb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;hc=602891725+pb|0;gc=1899447441+ob+(hc>>>0<pb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;hc=3964484399+rb|0;gc=3049323471+qb+(hc>>>0<rb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;hc=2173295548+tb|0;gc=3921009573+sb+(hc>>>0<tb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;hc=4081628472+vb|0;gc=961987163+ub+(hc>>>0<vb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;hc=3053834265+xb|0;gc=1508970993+wb+(hc>>>0<xb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;hc=2937671579+zb|0;gc=2453635748+yb+(hc>>>0<zb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;hc=3664609560+Bb|0;gc=2870763221+Ab+(hc>>>0<Bb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;hc=2734883394+Db|0;gc=3624381080+Cb+(hc>>>0<Db>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;hc=1164996542+Fb|0;gc=310598401+Eb+(hc>>>0<Fb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;hc=1323610764+Hb|0;gc=607225278+Gb+(hc>>>0<Hb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;hc=3590304994+Jb|0;gc=1426881987+Ib+(hc>>>0<Jb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;hc=4068182383+Lb|0;gc=1925078388+Kb+(hc>>>0<Lb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;hc=991336113+Nb|0;gc=2162078206+Mb+(hc>>>0<Nb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;hc=633803317+Pb|0;gc=2614888103+Ob+(hc>>>0<Pb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;hc=3479774868+Rb|0;gc=3248222580+Qb+(hc>>>0<Rb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;nb=nb+Fb|0;mb=mb+Eb+(nb>>>0<Fb>>>0?1:0)|0;ic=(pb>>>1|ob<<31)^(pb>>>8|ob<<24)^(pb>>>7|ob<<25)|0;nb=nb+ic|0;mb=mb+((ob>>>1|pb<<31)^(ob>>>8|pb<<24)^ob>>>7)+(nb>>>0<ic>>>0?1:0)|0;ic=(Pb>>>19|Ob<<13)^(Pb<<3|Ob>>>29)^(Pb>>>6|Ob<<26)|0;nb=nb+ic|0;mb=mb+((Ob>>>19|Pb<<13)^(Ob<<3|Pb>>>29)^Ob>>>6)+(nb>>>0<ic>>>0?1:0)|0;hc=2666613458+nb|0;gc=3835390401+mb+(hc>>>0<nb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;pb=pb+Hb|0;ob=ob+Gb+(pb>>>0<Hb>>>0?1:0)|0;ic=(rb>>>1|qb<<31)^(rb>>>8|qb<<24)^(rb>>>7|qb<<25)|0;pb=pb+ic|0;ob=ob+((qb>>>1|rb<<31)^(qb>>>8|rb<<24)^qb>>>7)+(pb>>>0<ic>>>0?1:0)|0;ic=(Rb>>>19|Qb<<13)^(Rb<<3|Qb>>>29)^(Rb>>>6|Qb<<26)|0;pb=pb+ic|0;ob=ob+((Qb>>>19|Rb<<13)^(Qb<<3|Rb>>>29)^Qb>>>6)+(pb>>>0<ic>>>0?1:0)|0;hc=944711139+pb|0;gc=4022224774+ob+(hc>>>0<pb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;rb=rb+Jb|0;qb=qb+Ib+(rb>>>0<Jb>>>0?1:0)|0;ic=(tb>>>1|sb<<31)^(tb>>>8|sb<<24)^(tb>>>7|sb<<25)|0;rb=rb+ic|0;qb=qb+((sb>>>1|tb<<31)^(sb>>>8|tb<<24)^sb>>>7)+(rb>>>0<ic>>>0?1:0)|0;ic=(nb>>>19|mb<<13)^(nb<<3|mb>>>29)^(nb>>>6|mb<<26)|0;rb=rb+ic|0;qb=qb+((mb>>>19|nb<<13)^(mb<<3|nb>>>29)^mb>>>6)+(rb>>>0<ic>>>0?1:0)|0;hc=2341262773+rb|0;gc=264347078+qb+(hc>>>0<rb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;tb=tb+Lb|0;sb=sb+Kb+(tb>>>0<Lb>>>0?1:0)|0;ic=(vb>>>1|ub<<31)^(vb>>>8|ub<<24)^(vb>>>7|ub<<25)|0;tb=tb+ic|0;sb=sb+((ub>>>1|vb<<31)^(ub>>>8|vb<<24)^ub>>>7)+(tb>>>0<ic>>>0?1:0)|0;ic=(pb>>>19|ob<<13)^(pb<<3|ob>>>29)^(pb>>>6|ob<<26)|0;tb=tb+ic|0;sb=sb+((ob>>>19|pb<<13)^(ob<<3|pb>>>29)^ob>>>6)+(tb>>>0<ic>>>0?1:0)|0;hc=2007800933+tb|0;gc=604807628+sb+(hc>>>0<tb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;vb=vb+Nb|0;ub=ub+Mb+(vb>>>0<Nb>>>0?1:0)|0;ic=(xb>>>1|wb<<31)^(xb>>>8|wb<<24)^(xb>>>7|wb<<25)|0;vb=vb+ic|0;ub=ub+((wb>>>1|xb<<31)^(wb>>>8|xb<<24)^wb>>>7)+(vb>>>0<ic>>>0?1:0)|0;ic=(rb>>>19|qb<<13)^(rb<<3|qb>>>29)^(rb>>>6|qb<<26)|0;vb=vb+ic|0;ub=ub+((qb>>>19|rb<<13)^(qb<<3|rb>>>29)^qb>>>6)+(vb>>>0<ic>>>0?1:0)|0;hc=1495990901+vb|0;gc=770255983+ub+(hc>>>0<vb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;xb=xb+Pb|0;wb=wb+Ob+(xb>>>0<Pb>>>0?1:0)|0;ic=(zb>>>1|yb<<31)^(zb>>>8|yb<<24)^(zb>>>7|yb<<25)|0;xb=xb+ic|0;wb=wb+((yb>>>1|zb<<31)^(yb>>>8|zb<<24)^yb>>>7)+(xb>>>0<ic>>>0?1:0)|0;ic=(tb>>>19|sb<<13)^(tb<<3|sb>>>29)^(tb>>>6|sb<<26)|0;xb=xb+ic|0;wb=wb+((sb>>>19|tb<<13)^(sb<<3|tb>>>29)^sb>>>6)+(xb>>>0<ic>>>0?1:0)|0;hc=1856431235+xb|0;gc=1249150122+wb+(hc>>>0<xb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;zb=zb+Rb|0;yb=yb+Qb+(zb>>>0<Rb>>>0?1:0)|0;ic=(Bb>>>1|Ab<<31)^(Bb>>>8|Ab<<24)^(Bb>>>7|Ab<<25)|0;zb=zb+ic|0;yb=yb+((Ab>>>1|Bb<<31)^(Ab>>>8|Bb<<24)^Ab>>>7)+(zb>>>0<ic>>>0?1:0)|0;ic=(vb>>>19|ub<<13)^(vb<<3|ub>>>29)^(vb>>>6|ub<<26)|0;zb=zb+ic|0;yb=yb+((ub>>>19|vb<<13)^(ub<<3|vb>>>29)^ub>>>6)+(zb>>>0<ic>>>0?1:0)|0;hc=3175218132+zb|0;gc=1555081692+yb+(hc>>>0<zb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;Bb=Bb+nb|0;Ab=Ab+mb+(Bb>>>0<nb>>>0?1:0)|0;ic=(Db>>>1|Cb<<31)^(Db>>>8|Cb<<24)^(Db>>>7|Cb<<25)|0;Bb=Bb+ic|0;Ab=Ab+((Cb>>>1|Db<<31)^(Cb>>>8|Db<<24)^Cb>>>7)+(Bb>>>0<ic>>>0?1:0)|0;ic=(xb>>>19|wb<<13)^(xb<<3|wb>>>29)^(xb>>>6|wb<<26)|0;Bb=Bb+ic|0;Ab=Ab+((wb>>>19|xb<<13)^(wb<<3|xb>>>29)^wb>>>6)+(Bb>>>0<ic>>>0?1:0)|0;hc=2198950837+Bb|0;gc=1996064986+Ab+(hc>>>0<Bb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;Db=Db+pb|0;Cb=Cb+ob+(Db>>>0<pb>>>0?1:0)|0;ic=(Fb>>>1|Eb<<31)^(Fb>>>8|Eb<<24)^(Fb>>>7|Eb<<25)|0;Db=Db+ic|0;Cb=Cb+((Eb>>>1|Fb<<31)^(Eb>>>8|Fb<<24)^Eb>>>7)+(Db>>>0<ic>>>0?1:0)|0;ic=(zb>>>19|yb<<13)^(zb<<3|yb>>>29)^(zb>>>6|yb<<26)|0;Db=Db+ic|0;Cb=Cb+((yb>>>19|zb<<13)^(yb<<3|zb>>>29)^yb>>>6)+(Db>>>0<ic>>>0?1:0)|0;hc=3999719339+Db|0;gc=2554220882+Cb+(hc>>>0<Db>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;Fb=Fb+rb|0;Eb=Eb+qb+(Fb>>>0<rb>>>0?1:0)|0;ic=(Hb>>>1|Gb<<31)^(Hb>>>8|Gb<<24)^(Hb>>>7|Gb<<25)|0;Fb=Fb+ic|0;Eb=Eb+((Gb>>>1|Hb<<31)^(Gb>>>8|Hb<<24)^Gb>>>7)+(Fb>>>0<ic>>>0?1:0)|0;ic=(Bb>>>19|Ab<<13)^(Bb<<3|Ab>>>29)^(Bb>>>6|Ab<<26)|0;Fb=Fb+ic|0;Eb=Eb+((Ab>>>19|Bb<<13)^(Ab<<3|Bb>>>29)^Ab>>>6)+(Fb>>>0<ic>>>0?1:0)|0;hc=766784016+Fb|0;gc=2821834349+Eb+(hc>>>0<Fb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;Hb=Hb+tb|0;Gb=Gb+sb+(Hb>>>0<tb>>>0?1:0)|0;ic=(Jb>>>1|Ib<<31)^(Jb>>>8|Ib<<24)^(Jb>>>7|Ib<<25)|0;Hb=Hb+ic|0;Gb=Gb+((Ib>>>1|Jb<<31)^(Ib>>>8|Jb<<24)^Ib>>>7)+(Hb>>>0<ic>>>0?1:0)|0;ic=(Db>>>19|Cb<<13)^(Db<<3|Cb>>>29)^(Db>>>6|Cb<<26)|0;Hb=Hb+ic|0;Gb=Gb+((Cb>>>19|Db<<13)^(Cb<<3|Db>>>29)^Cb>>>6)+(Hb>>>0<ic>>>0?1:0)|0;hc=2566594879+Hb|0;gc=2952996808+Gb+(hc>>>0<Hb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;Jb=Jb+vb|0;Ib=Ib+ub+(Jb>>>0<vb>>>0?1:0)|0;ic=(Lb>>>1|Kb<<31)^(Lb>>>8|Kb<<24)^(Lb>>>7|Kb<<25)|0;Jb=Jb+ic|0;Ib=Ib+((Kb>>>1|Lb<<31)^(Kb>>>8|Lb<<24)^Kb>>>7)+(Jb>>>0<ic>>>0?1:0)|0;ic=(Fb>>>19|Eb<<13)^(Fb<<3|Eb>>>29)^(Fb>>>6|Eb<<26)|0;Jb=Jb+ic|0;Ib=Ib+((Eb>>>19|Fb<<13)^(Eb<<3|Fb>>>29)^Eb>>>6)+(Jb>>>0<ic>>>0?1:0)|0;hc=3203337956+Jb|0;gc=3210313671+Ib+(hc>>>0<Jb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;Lb=Lb+xb|0;Kb=Kb+wb+(Lb>>>0<xb>>>0?1:0)|0;ic=(Nb>>>1|Mb<<31)^(Nb>>>8|Mb<<24)^(Nb>>>7|Mb<<25)|0;Lb=Lb+ic|0;Kb=Kb+((Mb>>>1|Nb<<31)^(Mb>>>8|Nb<<24)^Mb>>>7)+(Lb>>>0<ic>>>0?1:0)|0;ic=(Hb>>>19|Gb<<13)^(Hb<<3|Gb>>>29)^(Hb>>>6|Gb<<26)|0;Lb=Lb+ic|0;Kb=Kb+((Gb>>>19|Hb<<13)^(Gb<<3|Hb>>>29)^Gb>>>6)+(Lb>>>0<ic>>>0?1:0)|0;hc=1034457026+Lb|0;gc=3336571891+Kb+(hc>>>0<Lb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;Nb=Nb+zb|0;Mb=Mb+yb+(Nb>>>0<zb>>>0?1:0)|0;ic=(Pb>>>1|Ob<<31)^(Pb>>>8|Ob<<24)^(Pb>>>7|Ob<<25)|0;Nb=Nb+ic|0;Mb=Mb+((Ob>>>1|Pb<<31)^(Ob>>>8|Pb<<24)^Ob>>>7)+(Nb>>>0<ic>>>0?1:0)|0;ic=(Jb>>>19|Ib<<13)^(Jb<<3|Ib>>>29)^(Jb>>>6|Ib<<26)|0;Nb=Nb+ic|0;Mb=Mb+((Ib>>>19|Jb<<13)^(Ib<<3|Jb>>>29)^Ib>>>6)+(Nb>>>0<ic>>>0?1:0)|0;hc=2466948901+Nb|0;gc=3584528711+Mb+(hc>>>0<Nb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;Pb=Pb+Bb|0;Ob=Ob+Ab+(Pb>>>0<Bb>>>0?1:0)|0;ic=(Rb>>>1|Qb<<31)^(Rb>>>8|Qb<<24)^(Rb>>>7|Qb<<25)|0;Pb=Pb+ic|0;Ob=Ob+((Qb>>>1|Rb<<31)^(Qb>>>8|Rb<<24)^Qb>>>7)+(Pb>>>0<ic>>>0?1:0)|0;ic=(Lb>>>19|Kb<<13)^(Lb<<3|Kb>>>29)^(Lb>>>6|Kb<<26)|0;Pb=Pb+ic|0;Ob=Ob+((Kb>>>19|Lb<<13)^(Kb<<3|Lb>>>29)^Kb>>>6)+(Pb>>>0<ic>>>0?1:0)|0;hc=3758326383+Pb|0;gc=113926993+Ob+(hc>>>0<Pb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;Rb=Rb+Db|0;Qb=Qb+Cb+(Rb>>>0<Db>>>0?1:0)|0;ic=(nb>>>1|mb<<31)^(nb>>>8|mb<<24)^(nb>>>7|mb<<25)|0;Rb=Rb+ic|0;Qb=Qb+((mb>>>1|nb<<31)^(mb>>>8|nb<<24)^mb>>>7)+(Rb>>>0<ic>>>0?1:0)|0;ic=(Nb>>>19|Mb<<13)^(Nb<<3|Mb>>>29)^(Nb>>>6|Mb<<26)|0;Rb=Rb+ic|0;Qb=Qb+((Mb>>>19|Nb<<13)^(Mb<<3|Nb>>>29)^Mb>>>6)+(Rb>>>0<ic>>>0?1:0)|0;hc=168717936+Rb|0;gc=338241895+Qb+(hc>>>0<Rb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;nb=nb+Fb|0;mb=mb+Eb+(nb>>>0<Fb>>>0?1:0)|0;ic=(pb>>>1|ob<<31)^(pb>>>8|ob<<24)^(pb>>>7|ob<<25)|0;nb=nb+ic|0;mb=mb+((ob>>>1|pb<<31)^(ob>>>8|pb<<24)^ob>>>7)+(nb>>>0<ic>>>0?1:0)|0;ic=(Pb>>>19|Ob<<13)^(Pb<<3|Ob>>>29)^(Pb>>>6|Ob<<26)|0;nb=nb+ic|0;mb=mb+((Ob>>>19|Pb<<13)^(Ob<<3|Pb>>>29)^Ob>>>6)+(nb>>>0<ic>>>0?1:0)|0;hc=1188179964+nb|0;gc=666307205+mb+(hc>>>0<nb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;pb=pb+Hb|0;ob=ob+Gb+(pb>>>0<Hb>>>0?1:0)|0;ic=(rb>>>1|qb<<31)^(rb>>>8|qb<<24)^(rb>>>7|qb<<25)|0;pb=pb+ic|0;ob=ob+((qb>>>1|rb<<31)^(qb>>>8|rb<<24)^qb>>>7)+(pb>>>0<ic>>>0?1:0)|0;ic=(Rb>>>19|Qb<<13)^(Rb<<3|Qb>>>29)^(Rb>>>6|Qb<<26)|0;pb=pb+ic|0;ob=ob+((Qb>>>19|Rb<<13)^(Qb<<3|Rb>>>29)^Qb>>>6)+(pb>>>0<ic>>>0?1:0)|0;hc=1546045734+pb|0;gc=773529912+ob+(hc>>>0<pb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;rb=rb+Jb|0;qb=qb+Ib+(rb>>>0<Jb>>>0?1:0)|0;ic=(tb>>>1|sb<<31)^(tb>>>8|sb<<24)^(tb>>>7|sb<<25)|0;rb=rb+ic|0;qb=qb+((sb>>>1|tb<<31)^(sb>>>8|tb<<24)^sb>>>7)+(rb>>>0<ic>>>0?1:0)|0;ic=(nb>>>19|mb<<13)^(nb<<3|mb>>>29)^(nb>>>6|mb<<26)|0;rb=rb+ic|0;qb=qb+((mb>>>19|nb<<13)^(mb<<3|nb>>>29)^mb>>>6)+(rb>>>0<ic>>>0?1:0)|0;hc=1522805485+rb|0;gc=1294757372+qb+(hc>>>0<rb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;tb=tb+Lb|0;sb=sb+Kb+(tb>>>0<Lb>>>0?1:0)|0;ic=(vb>>>1|ub<<31)^(vb>>>8|ub<<24)^(vb>>>7|ub<<25)|0;tb=tb+ic|0;sb=sb+((ub>>>1|vb<<31)^(ub>>>8|vb<<24)^ub>>>7)+(tb>>>0<ic>>>0?1:0)|0;ic=(pb>>>19|ob<<13)^(pb<<3|ob>>>29)^(pb>>>6|ob<<26)|0;tb=tb+ic|0;sb=sb+((ob>>>19|pb<<13)^(ob<<3|pb>>>29)^ob>>>6)+(tb>>>0<ic>>>0?1:0)|0;hc=2643833823+tb|0;gc=1396182291+sb+(hc>>>0<tb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;
Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;vb=vb+Nb|0;ub=ub+Mb+(vb>>>0<Nb>>>0?1:0)|0;ic=(xb>>>1|wb<<31)^(xb>>>8|wb<<24)^(xb>>>7|wb<<25)|0;vb=vb+ic|0;ub=ub+((wb>>>1|xb<<31)^(wb>>>8|xb<<24)^wb>>>7)+(vb>>>0<ic>>>0?1:0)|0;ic=(rb>>>19|qb<<13)^(rb<<3|qb>>>29)^(rb>>>6|qb<<26)|0;vb=vb+ic|0;ub=ub+((qb>>>19|rb<<13)^(qb<<3|rb>>>29)^qb>>>6)+(vb>>>0<ic>>>0?1:0)|0;hc=2343527390+vb|0;gc=1695183700+ub+(hc>>>0<vb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;xb=xb+Pb|0;wb=wb+Ob+(xb>>>0<Pb>>>0?1:0)|0;ic=(zb>>>1|yb<<31)^(zb>>>8|yb<<24)^(zb>>>7|yb<<25)|0;xb=xb+ic|0;wb=wb+((yb>>>1|zb<<31)^(yb>>>8|zb<<24)^yb>>>7)+(xb>>>0<ic>>>0?1:0)|0;ic=(tb>>>19|sb<<13)^(tb<<3|sb>>>29)^(tb>>>6|sb<<26)|0;xb=xb+ic|0;wb=wb+((sb>>>19|tb<<13)^(sb<<3|tb>>>29)^sb>>>6)+(xb>>>0<ic>>>0?1:0)|0;hc=1014477480+xb|0;gc=1986661051+wb+(hc>>>0<xb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;zb=zb+Rb|0;yb=yb+Qb+(zb>>>0<Rb>>>0?1:0)|0;ic=(Bb>>>1|Ab<<31)^(Bb>>>8|Ab<<24)^(Bb>>>7|Ab<<25)|0;zb=zb+ic|0;yb=yb+((Ab>>>1|Bb<<31)^(Ab>>>8|Bb<<24)^Ab>>>7)+(zb>>>0<ic>>>0?1:0)|0;ic=(vb>>>19|ub<<13)^(vb<<3|ub>>>29)^(vb>>>6|ub<<26)|0;zb=zb+ic|0;yb=yb+((ub>>>19|vb<<13)^(ub<<3|vb>>>29)^ub>>>6)+(zb>>>0<ic>>>0?1:0)|0;hc=1206759142+zb|0;gc=2177026350+yb+(hc>>>0<zb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;Bb=Bb+nb|0;Ab=Ab+mb+(Bb>>>0<nb>>>0?1:0)|0;ic=(Db>>>1|Cb<<31)^(Db>>>8|Cb<<24)^(Db>>>7|Cb<<25)|0;Bb=Bb+ic|0;Ab=Ab+((Cb>>>1|Db<<31)^(Cb>>>8|Db<<24)^Cb>>>7)+(Bb>>>0<ic>>>0?1:0)|0;ic=(xb>>>19|wb<<13)^(xb<<3|wb>>>29)^(xb>>>6|wb<<26)|0;Bb=Bb+ic|0;Ab=Ab+((wb>>>19|xb<<13)^(wb<<3|xb>>>29)^wb>>>6)+(Bb>>>0<ic>>>0?1:0)|0;hc=344077627+Bb|0;gc=2456956037+Ab+(hc>>>0<Bb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;Db=Db+pb|0;Cb=Cb+ob+(Db>>>0<pb>>>0?1:0)|0;ic=(Fb>>>1|Eb<<31)^(Fb>>>8|Eb<<24)^(Fb>>>7|Eb<<25)|0;Db=Db+ic|0;Cb=Cb+((Eb>>>1|Fb<<31)^(Eb>>>8|Fb<<24)^Eb>>>7)+(Db>>>0<ic>>>0?1:0)|0;ic=(zb>>>19|yb<<13)^(zb<<3|yb>>>29)^(zb>>>6|yb<<26)|0;Db=Db+ic|0;Cb=Cb+((yb>>>19|zb<<13)^(yb<<3|zb>>>29)^yb>>>6)+(Db>>>0<ic>>>0?1:0)|0;hc=1290863460+Db|0;gc=2730485921+Cb+(hc>>>0<Db>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;Fb=Fb+rb|0;Eb=Eb+qb+(Fb>>>0<rb>>>0?1:0)|0;ic=(Hb>>>1|Gb<<31)^(Hb>>>8|Gb<<24)^(Hb>>>7|Gb<<25)|0;Fb=Fb+ic|0;Eb=Eb+((Gb>>>1|Hb<<31)^(Gb>>>8|Hb<<24)^Gb>>>7)+(Fb>>>0<ic>>>0?1:0)|0;ic=(Bb>>>19|Ab<<13)^(Bb<<3|Ab>>>29)^(Bb>>>6|Ab<<26)|0;Fb=Fb+ic|0;Eb=Eb+((Ab>>>19|Bb<<13)^(Ab<<3|Bb>>>29)^Ab>>>6)+(Fb>>>0<ic>>>0?1:0)|0;hc=3158454273+Fb|0;gc=2820302411+Eb+(hc>>>0<Fb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;Hb=Hb+tb|0;Gb=Gb+sb+(Hb>>>0<tb>>>0?1:0)|0;ic=(Jb>>>1|Ib<<31)^(Jb>>>8|Ib<<24)^(Jb>>>7|Ib<<25)|0;Hb=Hb+ic|0;Gb=Gb+((Ib>>>1|Jb<<31)^(Ib>>>8|Jb<<24)^Ib>>>7)+(Hb>>>0<ic>>>0?1:0)|0;ic=(Db>>>19|Cb<<13)^(Db<<3|Cb>>>29)^(Db>>>6|Cb<<26)|0;Hb=Hb+ic|0;Gb=Gb+((Cb>>>19|Db<<13)^(Cb<<3|Db>>>29)^Cb>>>6)+(Hb>>>0<ic>>>0?1:0)|0;hc=3505952657+Hb|0;gc=3259730800+Gb+(hc>>>0<Hb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;Jb=Jb+vb|0;Ib=Ib+ub+(Jb>>>0<vb>>>0?1:0)|0;ic=(Lb>>>1|Kb<<31)^(Lb>>>8|Kb<<24)^(Lb>>>7|Kb<<25)|0;Jb=Jb+ic|0;Ib=Ib+((Kb>>>1|Lb<<31)^(Kb>>>8|Lb<<24)^Kb>>>7)+(Jb>>>0<ic>>>0?1:0)|0;ic=(Fb>>>19|Eb<<13)^(Fb<<3|Eb>>>29)^(Fb>>>6|Eb<<26)|0;Jb=Jb+ic|0;Ib=Ib+((Eb>>>19|Fb<<13)^(Eb<<3|Fb>>>29)^Eb>>>6)+(Jb>>>0<ic>>>0?1:0)|0;hc=106217008+Jb|0;gc=3345764771+Ib+(hc>>>0<Jb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;Lb=Lb+xb|0;Kb=Kb+wb+(Lb>>>0<xb>>>0?1:0)|0;ic=(Nb>>>1|Mb<<31)^(Nb>>>8|Mb<<24)^(Nb>>>7|Mb<<25)|0;Lb=Lb+ic|0;Kb=Kb+((Mb>>>1|Nb<<31)^(Mb>>>8|Nb<<24)^Mb>>>7)+(Lb>>>0<ic>>>0?1:0)|0;ic=(Hb>>>19|Gb<<13)^(Hb<<3|Gb>>>29)^(Hb>>>6|Gb<<26)|0;Lb=Lb+ic|0;Kb=Kb+((Gb>>>19|Hb<<13)^(Gb<<3|Hb>>>29)^Gb>>>6)+(Lb>>>0<ic>>>0?1:0)|0;hc=3606008344+Lb|0;gc=3516065817+Kb+(hc>>>0<Lb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;Nb=Nb+zb|0;Mb=Mb+yb+(Nb>>>0<zb>>>0?1:0)|0;ic=(Pb>>>1|Ob<<31)^(Pb>>>8|Ob<<24)^(Pb>>>7|Ob<<25)|0;Nb=Nb+ic|0;Mb=Mb+((Ob>>>1|Pb<<31)^(Ob>>>8|Pb<<24)^Ob>>>7)+(Nb>>>0<ic>>>0?1:0)|0;ic=(Jb>>>19|Ib<<13)^(Jb<<3|Ib>>>29)^(Jb>>>6|Ib<<26)|0;Nb=Nb+ic|0;Mb=Mb+((Ib>>>19|Jb<<13)^(Ib<<3|Jb>>>29)^Ib>>>6)+(Nb>>>0<ic>>>0?1:0)|0;hc=1432725776+Nb|0;gc=3600352804+Mb+(hc>>>0<Nb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;Pb=Pb+Bb|0;Ob=Ob+Ab+(Pb>>>0<Bb>>>0?1:0)|0;ic=(Rb>>>1|Qb<<31)^(Rb>>>8|Qb<<24)^(Rb>>>7|Qb<<25)|0;Pb=Pb+ic|0;Ob=Ob+((Qb>>>1|Rb<<31)^(Qb>>>8|Rb<<24)^Qb>>>7)+(Pb>>>0<ic>>>0?1:0)|0;ic=(Lb>>>19|Kb<<13)^(Lb<<3|Kb>>>29)^(Lb>>>6|Kb<<26)|0;Pb=Pb+ic|0;Ob=Ob+((Kb>>>19|Lb<<13)^(Kb<<3|Lb>>>29)^Kb>>>6)+(Pb>>>0<ic>>>0?1:0)|0;hc=1467031594+Pb|0;gc=4094571909+Ob+(hc>>>0<Pb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;Rb=Rb+Db|0;Qb=Qb+Cb+(Rb>>>0<Db>>>0?1:0)|0;ic=(nb>>>1|mb<<31)^(nb>>>8|mb<<24)^(nb>>>7|mb<<25)|0;Rb=Rb+ic|0;Qb=Qb+((mb>>>1|nb<<31)^(mb>>>8|nb<<24)^mb>>>7)+(Rb>>>0<ic>>>0?1:0)|0;ic=(Nb>>>19|Mb<<13)^(Nb<<3|Mb>>>29)^(Nb>>>6|Mb<<26)|0;Rb=Rb+ic|0;Qb=Qb+((Mb>>>19|Nb<<13)^(Mb<<3|Nb>>>29)^Mb>>>6)+(Rb>>>0<ic>>>0?1:0)|0;hc=851169720+Rb|0;gc=275423344+Qb+(hc>>>0<Rb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;nb=nb+Fb|0;mb=mb+Eb+(nb>>>0<Fb>>>0?1:0)|0;ic=(pb>>>1|ob<<31)^(pb>>>8|ob<<24)^(pb>>>7|ob<<25)|0;nb=nb+ic|0;mb=mb+((ob>>>1|pb<<31)^(ob>>>8|pb<<24)^ob>>>7)+(nb>>>0<ic>>>0?1:0)|0;ic=(Pb>>>19|Ob<<13)^(Pb<<3|Ob>>>29)^(Pb>>>6|Ob<<26)|0;nb=nb+ic|0;mb=mb+((Ob>>>19|Pb<<13)^(Ob<<3|Pb>>>29)^Ob>>>6)+(nb>>>0<ic>>>0?1:0)|0;hc=3100823752+nb|0;gc=430227734+mb+(hc>>>0<nb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;pb=pb+Hb|0;ob=ob+Gb+(pb>>>0<Hb>>>0?1:0)|0;ic=(rb>>>1|qb<<31)^(rb>>>8|qb<<24)^(rb>>>7|qb<<25)|0;pb=pb+ic|0;ob=ob+((qb>>>1|rb<<31)^(qb>>>8|rb<<24)^qb>>>7)+(pb>>>0<ic>>>0?1:0)|0;ic=(Rb>>>19|Qb<<13)^(Rb<<3|Qb>>>29)^(Rb>>>6|Qb<<26)|0;pb=pb+ic|0;ob=ob+((Qb>>>19|Rb<<13)^(Qb<<3|Rb>>>29)^Qb>>>6)+(pb>>>0<ic>>>0?1:0)|0;hc=1363258195+pb|0;gc=506948616+ob+(hc>>>0<pb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;rb=rb+Jb|0;qb=qb+Ib+(rb>>>0<Jb>>>0?1:0)|0;ic=(tb>>>1|sb<<31)^(tb>>>8|sb<<24)^(tb>>>7|sb<<25)|0;rb=rb+ic|0;qb=qb+((sb>>>1|tb<<31)^(sb>>>8|tb<<24)^sb>>>7)+(rb>>>0<ic>>>0?1:0)|0;ic=(nb>>>19|mb<<13)^(nb<<3|mb>>>29)^(nb>>>6|mb<<26)|0;rb=rb+ic|0;qb=qb+((mb>>>19|nb<<13)^(mb<<3|nb>>>29)^mb>>>6)+(rb>>>0<ic>>>0?1:0)|0;hc=3750685593+rb|0;gc=659060556+qb+(hc>>>0<rb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;tb=tb+Lb|0;sb=sb+Kb+(tb>>>0<Lb>>>0?1:0)|0;ic=(vb>>>1|ub<<31)^(vb>>>8|ub<<24)^(vb>>>7|ub<<25)|0;tb=tb+ic|0;sb=sb+((ub>>>1|vb<<31)^(ub>>>8|vb<<24)^ub>>>7)+(tb>>>0<ic>>>0?1:0)|0;ic=(pb>>>19|ob<<13)^(pb<<3|ob>>>29)^(pb>>>6|ob<<26)|0;tb=tb+ic|0;sb=sb+((ob>>>19|pb<<13)^(ob<<3|pb>>>29)^ob>>>6)+(tb>>>0<ic>>>0?1:0)|0;hc=3785050280+tb|0;gc=883997877+sb+(hc>>>0<tb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;vb=vb+Nb|0;ub=ub+Mb+(vb>>>0<Nb>>>0?1:0)|0;ic=(xb>>>1|wb<<31)^(xb>>>8|wb<<24)^(xb>>>7|wb<<25)|0;vb=vb+ic|0;ub=ub+((wb>>>1|xb<<31)^(wb>>>8|xb<<24)^wb>>>7)+(vb>>>0<ic>>>0?1:0)|0;ic=(rb>>>19|qb<<13)^(rb<<3|qb>>>29)^(rb>>>6|qb<<26)|0;vb=vb+ic|0;ub=ub+((qb>>>19|rb<<13)^(qb<<3|rb>>>29)^qb>>>6)+(vb>>>0<ic>>>0?1:0)|0;hc=3318307427+vb|0;gc=958139571+ub+(hc>>>0<vb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;xb=xb+Pb|0;wb=wb+Ob+(xb>>>0<Pb>>>0?1:0)|0;ic=(zb>>>1|yb<<31)^(zb>>>8|yb<<24)^(zb>>>7|yb<<25)|0;xb=xb+ic|0;wb=wb+((yb>>>1|zb<<31)^(yb>>>8|zb<<24)^yb>>>7)+(xb>>>0<ic>>>0?1:0)|0;ic=(tb>>>19|sb<<13)^(tb<<3|sb>>>29)^(tb>>>6|sb<<26)|0;xb=xb+ic|0;wb=wb+((sb>>>19|tb<<13)^(sb<<3|tb>>>29)^sb>>>6)+(xb>>>0<ic>>>0?1:0)|0;hc=3812723403+xb|0;gc=1322822218+wb+(hc>>>0<xb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;zb=zb+Rb|0;yb=yb+Qb+(zb>>>0<Rb>>>0?1:0)|0;ic=(Bb>>>1|Ab<<31)^(Bb>>>8|Ab<<24)^(Bb>>>7|Ab<<25)|0;zb=zb+ic|0;yb=yb+((Ab>>>1|Bb<<31)^(Ab>>>8|Bb<<24)^Ab>>>7)+(zb>>>0<ic>>>0?1:0)|0;ic=(vb>>>19|ub<<13)^(vb<<3|ub>>>29)^(vb>>>6|ub<<26)|0;zb=zb+ic|0;yb=yb+((ub>>>19|vb<<13)^(ub<<3|vb>>>29)^ub>>>6)+(zb>>>0<ic>>>0?1:0)|0;hc=2003034995+zb|0;gc=1537002063+yb+(hc>>>0<zb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;Bb=Bb+nb|0;Ab=Ab+mb+(Bb>>>0<nb>>>0?1:0)|0;ic=(Db>>>1|Cb<<31)^(Db>>>8|Cb<<24)^(Db>>>7|Cb<<25)|0;Bb=Bb+ic|0;Ab=Ab+((Cb>>>1|Db<<31)^(Cb>>>8|Db<<24)^Cb>>>7)+(Bb>>>0<ic>>>0?1:0)|0;ic=(xb>>>19|wb<<13)^(xb<<3|wb>>>29)^(xb>>>6|wb<<26)|0;Bb=Bb+ic|0;Ab=Ab+((wb>>>19|xb<<13)^(wb<<3|xb>>>29)^wb>>>6)+(Bb>>>0<ic>>>0?1:0)|0;hc=3602036899+Bb|0;gc=1747873779+Ab+(hc>>>0<Bb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;Db=Db+pb|0;Cb=Cb+ob+(Db>>>0<pb>>>0?1:0)|0;ic=(Fb>>>1|Eb<<31)^(Fb>>>8|Eb<<24)^(Fb>>>7|Eb<<25)|0;Db=Db+ic|0;Cb=Cb+((Eb>>>1|Fb<<31)^(Eb>>>8|Fb<<24)^Eb>>>7)+(Db>>>0<ic>>>0?1:0)|0;ic=(zb>>>19|yb<<13)^(zb<<3|yb>>>29)^(zb>>>6|yb<<26)|0;Db=Db+ic|0;Cb=Cb+((yb>>>19|zb<<13)^(yb<<3|zb>>>29)^yb>>>6)+(Db>>>0<ic>>>0?1:0)|0;hc=1575990012+Db|0;gc=1955562222+Cb+(hc>>>0<Db>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;Fb=Fb+rb|0;Eb=Eb+qb+(Fb>>>0<rb>>>0?1:0)|0;ic=(Hb>>>1|Gb<<31)^(Hb>>>8|Gb<<24)^(Hb>>>7|Gb<<25)|0;Fb=Fb+ic|0;Eb=Eb+((Gb>>>1|Hb<<31)^(Gb>>>8|Hb<<24)^Gb>>>7)+(Fb>>>0<ic>>>0?1:0)|0;ic=(Bb>>>19|Ab<<13)^(Bb<<3|Ab>>>29)^(Bb>>>6|Ab<<26)|0;Fb=Fb+ic|0;Eb=Eb+((Ab>>>19|Bb<<13)^(Ab<<3|Bb>>>29)^Ab>>>6)+(Fb>>>0<ic>>>0?1:0)|0;hc=1125592928+Fb|0;gc=2024104815+Eb+(hc>>>0<Fb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;Hb=Hb+tb|0;Gb=Gb+sb+(Hb>>>0<tb>>>0?1:0)|0;ic=(Jb>>>1|Ib<<31)^(Jb>>>8|Ib<<24)^(Jb>>>7|Ib<<25)|0;Hb=Hb+ic|0;Gb=Gb+((Ib>>>1|Jb<<31)^(Ib>>>8|Jb<<24)^Ib>>>7)+(Hb>>>0<ic>>>0?1:0)|0;ic=(Db>>>19|Cb<<13)^(Db<<3|Cb>>>29)^(Db>>>6|Cb<<26)|0;Hb=Hb+ic|0;Gb=Gb+((Cb>>>19|Db<<13)^(Cb<<3|Db>>>29)^Cb>>>6)+(Hb>>>0<ic>>>0?1:0)|0;hc=2716904306+Hb|0;gc=2227730452+Gb+(hc>>>0<Hb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;Jb=Jb+vb|0;Ib=Ib+ub+(Jb>>>0<vb>>>0?1:0)|0;ic=(Lb>>>1|Kb<<31)^(Lb>>>8|Kb<<24)^(Lb>>>7|Kb<<25)|0;Jb=Jb+ic|0;Ib=Ib+((Kb>>>1|Lb<<31)^(Kb>>>8|Lb<<24)^Kb>>>7)+(Jb>>>0<ic>>>0?1:0)|0;ic=(Fb>>>19|Eb<<13)^(Fb<<3|Eb>>>29)^(Fb>>>6|Eb<<26)|0;Jb=Jb+ic|0;Ib=Ib+((Eb>>>19|Fb<<13)^(Eb<<3|Fb>>>29)^Eb>>>6)+(Jb>>>0<ic>>>0?1:0)|0;hc=442776044+Jb|0;gc=2361852424+Ib+(hc>>>0<Jb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;Lb=Lb+xb|0;Kb=Kb+wb+(Lb>>>0<xb>>>0?1:0)|0;ic=(Nb>>>1|Mb<<31)^(Nb>>>8|Mb<<24)^(Nb>>>7|Mb<<25)|0;Lb=Lb+ic|0;Kb=Kb+((Mb>>>1|Nb<<31)^(Mb>>>8|Nb<<24)^Mb>>>7)+(Lb>>>0<ic>>>0?1:0)|0;ic=(Hb>>>19|Gb<<13)^(Hb<<3|Gb>>>29)^(Hb>>>6|Gb<<26)|0;Lb=Lb+ic|0;Kb=Kb+((Gb>>>19|Hb<<13)^(Gb<<3|Hb>>>29)^Gb>>>6)+(Lb>>>0<ic>>>0?1:0)|0;hc=593698344+Lb|0;gc=2428436474+Kb+(hc>>>0<Lb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;Nb=Nb+zb|0;Mb=Mb+yb+(Nb>>>0<zb>>>0?1:0)|0;ic=(Pb>>>1|Ob<<31)^(Pb>>>8|Ob<<24)^(Pb>>>7|Ob<<25)|0;Nb=Nb+ic|0;Mb=Mb+((Ob>>>1|Pb<<31)^(Ob>>>8|Pb<<24)^Ob>>>7)+(Nb>>>0<ic>>>0?1:0)|0;ic=(Jb>>>19|Ib<<13)^(Jb<<3|Ib>>>29)^(Jb>>>6|Ib<<26)|0;Nb=Nb+ic|0;Mb=Mb+((Ib>>>19|Jb<<13)^(Ib<<3|Jb>>>29)^Ib>>>6)+(Nb>>>0<ic>>>0?1:0)|0;hc=3733110249+Nb|0;gc=2756734187+Mb+(hc>>>0<Nb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;Pb=Pb+Bb|0;Ob=Ob+Ab+(Pb>>>0<Bb>>>0?1:0)|0;ic=(Rb>>>1|Qb<<31)^(Rb>>>8|Qb<<24)^(Rb>>>7|Qb<<25)|0;Pb=Pb+ic|0;Ob=Ob+((Qb>>>1|Rb<<31)^(Qb>>>8|Rb<<24)^Qb>>>7)+(Pb>>>0<ic>>>0?1:0)|0;ic=(Lb>>>19|Kb<<13)^(Lb<<3|Kb>>>29)^(Lb>>>6|Kb<<26)|0;Pb=Pb+ic|0;Ob=Ob+((Kb>>>19|Lb<<13)^(Kb<<3|Lb>>>29)^Kb>>>6)+(Pb>>>0<ic>>>0?1:0)|0;hc=2999351573+Pb|0;gc=3204031479+Ob+(hc>>>0<Pb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;Rb=Rb+Db|0;Qb=Qb+Cb+(Rb>>>0<Db>>>0?1:0)|0;ic=(nb>>>1|mb<<31)^(nb>>>8|mb<<24)^(nb>>>7|mb<<25)|0;Rb=Rb+ic|0;Qb=Qb+((mb>>>1|nb<<31)^(mb>>>8|nb<<24)^mb>>>7)+(Rb>>>0<ic>>>0?1:0)|0;ic=(Nb>>>19|Mb<<13)^(Nb<<3|Mb>>>29)^(Nb>>>6|Mb<<26)|0;Rb=Rb+ic|0;Qb=Qb+((Mb>>>19|Nb<<13)^(Mb<<3|Nb>>>29)^Mb>>>6)+(Rb>>>0<ic>>>0?1:0)|0;hc=3815920427+Rb|0;gc=3329325298+Qb+(hc>>>0<Rb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;nb=nb+Fb|0;mb=mb+Eb+(nb>>>0<Fb>>>0?1:0)|0;ic=(pb>>>1|ob<<31)^(pb>>>8|ob<<24)^(pb>>>7|ob<<25)|0;nb=nb+ic|0;mb=mb+((ob>>>1|pb<<31)^(ob>>>8|pb<<24)^ob>>>7)+(nb>>>0<ic>>>0?1:0)|0;ic=(Pb>>>19|Ob<<13)^(Pb<<3|Ob>>>29)^(Pb>>>6|Ob<<26)|0;nb=nb+ic|0;mb=mb+((Ob>>>19|Pb<<13)^(Ob<<3|Pb>>>29)^Ob>>>6)+(nb>>>0<ic>>>0?1:0)|0;hc=3928383900+nb|0;gc=3391569614+mb+(hc>>>0<nb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;pb=pb+Hb|0;ob=ob+Gb+(pb>>>0<Hb>>>0?1:0)|0;ic=(rb>>>1|qb<<31)^(rb>>>8|qb<<24)^(rb>>>7|qb<<25)|0;pb=pb+ic|0;ob=ob+((qb>>>1|rb<<31)^(qb>>>8|rb<<24)^qb>>>7)+(pb>>>0<ic>>>0?1:0)|0;ic=(Rb>>>19|Qb<<13)^(Rb<<3|Qb>>>29)^(Rb>>>6|Qb<<26)|0;pb=pb+ic|0;ob=ob+((Qb>>>19|Rb<<13)^(Qb<<3|Rb>>>29)^Qb>>>6)+(pb>>>0<ic>>>0?1:0)|0;hc=566280711+pb|0;gc=3515267271+ob+(hc>>>0<pb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;rb=rb+Jb|0;qb=qb+Ib+(rb>>>0<Jb>>>0?1:0)|0;ic=(tb>>>1|sb<<31)^(tb>>>8|sb<<24)^(tb>>>7|sb<<25)|0;rb=rb+ic|0;qb=qb+((sb>>>1|tb<<31)^(sb>>>8|tb<<24)^sb>>>7)+(rb>>>0<ic>>>0?1:0)|0;ic=(nb>>>19|mb<<13)^(nb<<3|mb>>>29)^(nb>>>6|mb<<26)|0;rb=rb+ic|0;qb=qb+((mb>>>19|nb<<13)^(mb<<3|nb>>>29)^mb>>>6)+(rb>>>0<ic>>>0?1:0)|0;hc=3454069534+rb|0;gc=3940187606+qb+(hc>>>0<rb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;tb=tb+Lb|0;sb=sb+Kb+(tb>>>0<Lb>>>0?1:0)|0;ic=(vb>>>1|ub<<31)^(vb>>>8|ub<<24)^(vb>>>7|ub<<25)|0;tb=tb+ic|0;sb=sb+((ub>>>1|vb<<31)^(ub>>>8|vb<<24)^ub>>>7)+(tb>>>0<ic>>>0?1:0)|0;ic=(pb>>>19|ob<<13)^(pb<<3|ob>>>29)^(pb>>>6|ob<<26)|0;tb=tb+ic|0;sb=sb+((ob>>>19|pb<<13)^(ob<<3|pb>>>29)^ob>>>6)+(tb>>>0<ic>>>0?1:0)|0;hc=4000239992+tb|0;gc=4118630271+sb+(hc>>>0<tb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;vb=vb+Nb|0;ub=ub+Mb+(vb>>>0<Nb>>>0?1:0)|0;ic=(xb>>>1|wb<<31)^(xb>>>8|wb<<24)^(xb>>>7|wb<<25)|0;vb=vb+ic|0;ub=ub+((wb>>>1|xb<<31)^(wb>>>8|xb<<24)^wb>>>7)+(vb>>>0<ic>>>0?1:0)|0;ic=(rb>>>19|qb<<13)^(rb<<3|qb>>>29)^(rb>>>6|qb<<26)|0;vb=vb+ic|0;ub=ub+((qb>>>19|rb<<13)^(qb<<3|rb>>>29)^qb>>>6)+(vb>>>0<ic>>>0?1:0)|0;hc=1914138554+vb|0;gc=116418474+ub+(hc>>>0<vb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;xb=xb+Pb|0;wb=wb+Ob+(xb>>>0<Pb>>>0?1:0)|0;ic=(zb>>>1|yb<<31)^(zb>>>8|yb<<24)^(zb>>>7|yb<<25)|0;xb=xb+ic|0;wb=wb+((yb>>>1|zb<<31)^(yb>>>8|zb<<24)^yb>>>7)+(xb>>>0<ic>>>0?1:0)|0;ic=(tb>>>19|sb<<13)^(tb<<3|sb>>>29)^(tb>>>6|sb<<26)|0;xb=xb+ic|0;wb=wb+((sb>>>19|tb<<13)^(sb<<3|tb>>>29)^sb>>>6)+(xb>>>0<ic>>>0?1:0)|0;
hc=2731055270+xb|0;gc=174292421+wb+(hc>>>0<xb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;zb=zb+Rb|0;yb=yb+Qb+(zb>>>0<Rb>>>0?1:0)|0;ic=(Bb>>>1|Ab<<31)^(Bb>>>8|Ab<<24)^(Bb>>>7|Ab<<25)|0;zb=zb+ic|0;yb=yb+((Ab>>>1|Bb<<31)^(Ab>>>8|Bb<<24)^Ab>>>7)+(zb>>>0<ic>>>0?1:0)|0;ic=(vb>>>19|ub<<13)^(vb<<3|ub>>>29)^(vb>>>6|ub<<26)|0;zb=zb+ic|0;yb=yb+((ub>>>19|vb<<13)^(ub<<3|vb>>>29)^ub>>>6)+(zb>>>0<ic>>>0?1:0)|0;hc=3203993006+zb|0;gc=289380356+yb+(hc>>>0<zb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;Bb=Bb+nb|0;Ab=Ab+mb+(Bb>>>0<nb>>>0?1:0)|0;ic=(Db>>>1|Cb<<31)^(Db>>>8|Cb<<24)^(Db>>>7|Cb<<25)|0;Bb=Bb+ic|0;Ab=Ab+((Cb>>>1|Db<<31)^(Cb>>>8|Db<<24)^Cb>>>7)+(Bb>>>0<ic>>>0?1:0)|0;ic=(xb>>>19|wb<<13)^(xb<<3|wb>>>29)^(xb>>>6|wb<<26)|0;Bb=Bb+ic|0;Ab=Ab+((wb>>>19|xb<<13)^(wb<<3|xb>>>29)^wb>>>6)+(Bb>>>0<ic>>>0?1:0)|0;hc=320620315+Bb|0;gc=460393269+Ab+(hc>>>0<Bb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;Db=Db+pb|0;Cb=Cb+ob+(Db>>>0<pb>>>0?1:0)|0;ic=(Fb>>>1|Eb<<31)^(Fb>>>8|Eb<<24)^(Fb>>>7|Eb<<25)|0;Db=Db+ic|0;Cb=Cb+((Eb>>>1|Fb<<31)^(Eb>>>8|Fb<<24)^Eb>>>7)+(Db>>>0<ic>>>0?1:0)|0;ic=(zb>>>19|yb<<13)^(zb<<3|yb>>>29)^(zb>>>6|yb<<26)|0;Db=Db+ic|0;Cb=Cb+((yb>>>19|zb<<13)^(yb<<3|zb>>>29)^yb>>>6)+(Db>>>0<ic>>>0?1:0)|0;hc=587496836+Db|0;gc=685471733+Cb+(hc>>>0<Db>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;Fb=Fb+rb|0;Eb=Eb+qb+(Fb>>>0<rb>>>0?1:0)|0;ic=(Hb>>>1|Gb<<31)^(Hb>>>8|Gb<<24)^(Hb>>>7|Gb<<25)|0;Fb=Fb+ic|0;Eb=Eb+((Gb>>>1|Hb<<31)^(Gb>>>8|Hb<<24)^Gb>>>7)+(Fb>>>0<ic>>>0?1:0)|0;ic=(Bb>>>19|Ab<<13)^(Bb<<3|Ab>>>29)^(Bb>>>6|Ab<<26)|0;Fb=Fb+ic|0;Eb=Eb+((Ab>>>19|Bb<<13)^(Ab<<3|Bb>>>29)^Ab>>>6)+(Fb>>>0<ic>>>0?1:0)|0;hc=1086792851+Fb|0;gc=852142971+Eb+(hc>>>0<Fb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;Hb=Hb+tb|0;Gb=Gb+sb+(Hb>>>0<tb>>>0?1:0)|0;ic=(Jb>>>1|Ib<<31)^(Jb>>>8|Ib<<24)^(Jb>>>7|Ib<<25)|0;Hb=Hb+ic|0;Gb=Gb+((Ib>>>1|Jb<<31)^(Ib>>>8|Jb<<24)^Ib>>>7)+(Hb>>>0<ic>>>0?1:0)|0;ic=(Db>>>19|Cb<<13)^(Db<<3|Cb>>>29)^(Db>>>6|Cb<<26)|0;Hb=Hb+ic|0;Gb=Gb+((Cb>>>19|Db<<13)^(Cb<<3|Db>>>29)^Cb>>>6)+(Hb>>>0<ic>>>0?1:0)|0;hc=365543100+Hb|0;gc=1017036298+Gb+(hc>>>0<Hb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;Jb=Jb+vb|0;Ib=Ib+ub+(Jb>>>0<vb>>>0?1:0)|0;ic=(Lb>>>1|Kb<<31)^(Lb>>>8|Kb<<24)^(Lb>>>7|Kb<<25)|0;Jb=Jb+ic|0;Ib=Ib+((Kb>>>1|Lb<<31)^(Kb>>>8|Lb<<24)^Kb>>>7)+(Jb>>>0<ic>>>0?1:0)|0;ic=(Fb>>>19|Eb<<13)^(Fb<<3|Eb>>>29)^(Fb>>>6|Eb<<26)|0;Jb=Jb+ic|0;Ib=Ib+((Eb>>>19|Fb<<13)^(Eb<<3|Fb>>>29)^Eb>>>6)+(Jb>>>0<ic>>>0?1:0)|0;hc=2618297676+Jb|0;gc=1126000580+Ib+(hc>>>0<Jb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;Lb=Lb+xb|0;Kb=Kb+wb+(Lb>>>0<xb>>>0?1:0)|0;ic=(Nb>>>1|Mb<<31)^(Nb>>>8|Mb<<24)^(Nb>>>7|Mb<<25)|0;Lb=Lb+ic|0;Kb=Kb+((Mb>>>1|Nb<<31)^(Mb>>>8|Nb<<24)^Mb>>>7)+(Lb>>>0<ic>>>0?1:0)|0;ic=(Hb>>>19|Gb<<13)^(Hb<<3|Gb>>>29)^(Hb>>>6|Gb<<26)|0;Lb=Lb+ic|0;Kb=Kb+((Gb>>>19|Hb<<13)^(Gb<<3|Hb>>>29)^Gb>>>6)+(Lb>>>0<ic>>>0?1:0)|0;hc=3409855158+Lb|0;gc=1288033470+Kb+(hc>>>0<Lb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;Nb=Nb+zb|0;Mb=Mb+yb+(Nb>>>0<zb>>>0?1:0)|0;ic=(Pb>>>1|Ob<<31)^(Pb>>>8|Ob<<24)^(Pb>>>7|Ob<<25)|0;Nb=Nb+ic|0;Mb=Mb+((Ob>>>1|Pb<<31)^(Ob>>>8|Pb<<24)^Ob>>>7)+(Nb>>>0<ic>>>0?1:0)|0;ic=(Jb>>>19|Ib<<13)^(Jb<<3|Ib>>>29)^(Jb>>>6|Ib<<26)|0;Nb=Nb+ic|0;Mb=Mb+((Ib>>>19|Jb<<13)^(Ib<<3|Jb>>>29)^Ib>>>6)+(Nb>>>0<ic>>>0?1:0)|0;hc=4234509866+Nb|0;gc=1501505948+Mb+(hc>>>0<Nb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;Pb=Pb+Bb|0;Ob=Ob+Ab+(Pb>>>0<Bb>>>0?1:0)|0;ic=(Rb>>>1|Qb<<31)^(Rb>>>8|Qb<<24)^(Rb>>>7|Qb<<25)|0;Pb=Pb+ic|0;Ob=Ob+((Qb>>>1|Rb<<31)^(Qb>>>8|Rb<<24)^Qb>>>7)+(Pb>>>0<ic>>>0?1:0)|0;ic=(Lb>>>19|Kb<<13)^(Lb<<3|Kb>>>29)^(Lb>>>6|Kb<<26)|0;Pb=Pb+ic|0;Ob=Ob+((Kb>>>19|Lb<<13)^(Kb<<3|Lb>>>29)^Kb>>>6)+(Pb>>>0<ic>>>0?1:0)|0;hc=987167468+Pb|0;gc=1607167915+Ob+(hc>>>0<Pb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;Rb=Rb+Db|0;Qb=Qb+Cb+(Rb>>>0<Db>>>0?1:0)|0;ic=(nb>>>1|mb<<31)^(nb>>>8|mb<<24)^(nb>>>7|mb<<25)|0;Rb=Rb+ic|0;Qb=Qb+((mb>>>1|nb<<31)^(mb>>>8|nb<<24)^mb>>>7)+(Rb>>>0<ic>>>0?1:0)|0;ic=(Nb>>>19|Mb<<13)^(Nb<<3|Mb>>>29)^(Nb>>>6|Mb<<26)|0;Rb=Rb+ic|0;Qb=Qb+((Mb>>>19|Nb<<13)^(Mb<<3|Nb>>>29)^Mb>>>6)+(Rb>>>0<ic>>>0?1:0)|0;hc=1246189591+Rb|0;gc=1816402316+Qb+(hc>>>0<Rb>>>0?1:0)|0;hc=hc+fc|0;gc=gc+ec+(hc>>>0<fc>>>0?1:0)|0;ic=(_b>>>14|$b<<18)^(_b>>>18|$b<<14)^(_b<<23|$b>>>9)|0;hc=hc+ic|0;gc=gc+(($b>>>14|_b<<18)^($b>>>18|_b<<14)^($b<<23|_b>>>9))+(hc>>>0<ic>>>0?1:0)|0;ic=dc^_b&(bc^dc)|0;hc=hc+ic|0;gc=gc+(cc^$b&(ac^cc))+(hc>>>0<ic>>>0?1:0)|0;fc=dc;ec=cc;dc=bc;cc=ac;bc=_b;ac=$b;_b=Zb+hc|0;$b=Yb+gc+(_b>>>0<Zb>>>0?1:0)|0;Zb=Xb;Yb=Wb;Xb=Vb;Wb=Ub;Vb=Tb;Ub=Sb;Tb=hc+(Vb&Xb^Zb&(Vb^Xb))|0;Sb=gc+(Ub&Wb^Yb&(Ub^Wb))+(Tb>>>0<hc>>>0?1:0)|0;ic=(Vb>>>28|Ub<<4)^(Vb<<30|Ub>>>2)^(Vb<<25|Ub>>>7)|0;Tb=Tb+ic|0;Sb=Sb+((Ub>>>28|Vb<<4)^(Ub<<30|Vb>>>2)^(Ub<<25|Vb>>>7))+(Tb>>>0<ic>>>0?1:0)|0;e=e+Tb|0;d=d+Sb+(e>>>0<Tb>>>0?1:0)|0;g=g+Vb|0;f=f+Ub+(g>>>0<Vb>>>0?1:0)|0;i=i+Xb|0;h=h+Wb+(i>>>0<Xb>>>0?1:0)|0;k=k+Zb|0;j=j+Yb+(k>>>0<Zb>>>0?1:0)|0;m=m+_b|0;l=l+$b+(m>>>0<_b>>>0?1:0)|0;o=o+bc|0;n=n+ac+(o>>>0<bc>>>0?1:0)|0;r=r+dc|0;q=q+cc+(r>>>0<dc>>>0?1:0)|0;t=t+fc|0;s=s+ec+(t>>>0<fc>>>0?1:0)|0}function bb(mb){mb=mb|0;ab(_[mb|0]<<24|_[mb|1]<<16|_[mb|2]<<8|_[mb|3],_[mb|4]<<24|_[mb|5]<<16|_[mb|6]<<8|_[mb|7],_[mb|8]<<24|_[mb|9]<<16|_[mb|10]<<8|_[mb|11],_[mb|12]<<24|_[mb|13]<<16|_[mb|14]<<8|_[mb|15],_[mb|16]<<24|_[mb|17]<<16|_[mb|18]<<8|_[mb|19],_[mb|20]<<24|_[mb|21]<<16|_[mb|22]<<8|_[mb|23],_[mb|24]<<24|_[mb|25]<<16|_[mb|26]<<8|_[mb|27],_[mb|28]<<24|_[mb|29]<<16|_[mb|30]<<8|_[mb|31],_[mb|32]<<24|_[mb|33]<<16|_[mb|34]<<8|_[mb|35],_[mb|36]<<24|_[mb|37]<<16|_[mb|38]<<8|_[mb|39],_[mb|40]<<24|_[mb|41]<<16|_[mb|42]<<8|_[mb|43],_[mb|44]<<24|_[mb|45]<<16|_[mb|46]<<8|_[mb|47],_[mb|48]<<24|_[mb|49]<<16|_[mb|50]<<8|_[mb|51],_[mb|52]<<24|_[mb|53]<<16|_[mb|54]<<8|_[mb|55],_[mb|56]<<24|_[mb|57]<<16|_[mb|58]<<8|_[mb|59],_[mb|60]<<24|_[mb|61]<<16|_[mb|62]<<8|_[mb|63],_[mb|64]<<24|_[mb|65]<<16|_[mb|66]<<8|_[mb|67],_[mb|68]<<24|_[mb|69]<<16|_[mb|70]<<8|_[mb|71],_[mb|72]<<24|_[mb|73]<<16|_[mb|74]<<8|_[mb|75],_[mb|76]<<24|_[mb|77]<<16|_[mb|78]<<8|_[mb|79],_[mb|80]<<24|_[mb|81]<<16|_[mb|82]<<8|_[mb|83],_[mb|84]<<24|_[mb|85]<<16|_[mb|86]<<8|_[mb|87],_[mb|88]<<24|_[mb|89]<<16|_[mb|90]<<8|_[mb|91],_[mb|92]<<24|_[mb|93]<<16|_[mb|94]<<8|_[mb|95],_[mb|96]<<24|_[mb|97]<<16|_[mb|98]<<8|_[mb|99],_[mb|100]<<24|_[mb|101]<<16|_[mb|102]<<8|_[mb|103],_[mb|104]<<24|_[mb|105]<<16|_[mb|106]<<8|_[mb|107],_[mb|108]<<24|_[mb|109]<<16|_[mb|110]<<8|_[mb|111],_[mb|112]<<24|_[mb|113]<<16|_[mb|114]<<8|_[mb|115],_[mb|116]<<24|_[mb|117]<<16|_[mb|118]<<8|_[mb|119],_[mb|120]<<24|_[mb|121]<<16|_[mb|122]<<8|_[mb|123],_[mb|124]<<24|_[mb|125]<<16|_[mb|126]<<8|_[mb|127])}function cb(mb){mb=mb|0;_[mb|0]=d>>>24;_[mb|1]=d>>>16&255;_[mb|2]=d>>>8&255;_[mb|3]=d&255;_[mb|4]=e>>>24;_[mb|5]=e>>>16&255;_[mb|6]=e>>>8&255;_[mb|7]=e&255;_[mb|8]=f>>>24;_[mb|9]=f>>>16&255;_[mb|10]=f>>>8&255;_[mb|11]=f&255;_[mb|12]=g>>>24;_[mb|13]=g>>>16&255;_[mb|14]=g>>>8&255;_[mb|15]=g&255;_[mb|16]=h>>>24;_[mb|17]=h>>>16&255;_[mb|18]=h>>>8&255;_[mb|19]=h&255;_[mb|20]=i>>>24;_[mb|21]=i>>>16&255;_[mb|22]=i>>>8&255;_[mb|23]=i&255;_[mb|24]=j>>>24;_[mb|25]=j>>>16&255;_[mb|26]=j>>>8&255;_[mb|27]=j&255;_[mb|28]=k>>>24;_[mb|29]=k>>>16&255;_[mb|30]=k>>>8&255;_[mb|31]=k&255;_[mb|32]=l>>>24;_[mb|33]=l>>>16&255;_[mb|34]=l>>>8&255;_[mb|35]=l&255;_[mb|36]=m>>>24;_[mb|37]=m>>>16&255;_[mb|38]=m>>>8&255;_[mb|39]=m&255;_[mb|40]=n>>>24;_[mb|41]=n>>>16&255;_[mb|42]=n>>>8&255;_[mb|43]=n&255;_[mb|44]=o>>>24;_[mb|45]=o>>>16&255;_[mb|46]=o>>>8&255;_[mb|47]=o&255;_[mb|48]=q>>>24;_[mb|49]=q>>>16&255;_[mb|50]=q>>>8&255;_[mb|51]=q&255;_[mb|52]=r>>>24;_[mb|53]=r>>>16&255;_[mb|54]=r>>>8&255;_[mb|55]=r&255;_[mb|56]=s>>>24;_[mb|57]=s>>>16&255;_[mb|58]=s>>>8&255;_[mb|59]=s&255;_[mb|60]=t>>>24;_[mb|61]=t>>>16&255;_[mb|62]=t>>>8&255;_[mb|63]=t&255}function db(){d=1779033703;e=4089235720;f=3144134277;g=2227873595;h=1013904242;i=4271175723;j=2773480762;k=1595750129;l=1359893119;m=2917565137;n=2600822924;o=725511199;q=528734635;r=4215389547;s=1541459225;t=327033209;u=0}function eb(mb,nb,ob,pb,qb,rb,sb,tb,ub,vb,wb,xb,yb,zb,Ab,Bb,Cb){mb=mb|0;nb=nb|0;ob=ob|0;pb=pb|0;qb=qb|0;rb=rb|0;sb=sb|0;tb=tb|0;ub=ub|0;vb=vb|0;wb=wb|0;xb=xb|0;yb=yb|0;zb=zb|0;Ab=Ab|0;Bb=Bb|0;Cb=Cb|0;d=mb;e=nb;f=ob;g=pb;h=qb;i=rb;j=sb;k=tb;l=ub;m=vb;n=wb;o=xb;q=yb;r=zb;s=Ab;t=Bb;u=Cb}function fb(mb,nb){mb=mb|0;nb=nb|0;var ob=0;if(mb&127)return-1;while((nb|0)>=128){bb(mb);mb=mb+128|0;nb=nb-128|0;ob=ob+128|0}u=u+ob|0;return ob|0}function gb(mb,nb,ob){mb=mb|0;nb=nb|0;ob=ob|0;var pb=0,qb=0;if(mb&127)return-1;if(~ob)if(ob&63)return-1;if((nb|0)>=128){pb=fb(mb,nb)|0;if((pb|0)==-1)return-1;mb=mb+pb|0;nb=nb-pb|0}pb=pb+nb|0;u=u+nb|0;_[mb|nb]=128;if((nb|0)>=112){for(qb=nb+1|0;(qb|0)<128;qb=qb+1|0)_[mb|qb]=0;bb(mb);nb=0;_[mb|0]=0}for(qb=nb+1|0;(qb|0)<123;qb=qb+1|0)_[mb|qb]=0;_[mb|123]=u>>>29;_[mb|124]=u>>>21&255;_[mb|125]=u>>>13&255;_[mb|126]=u>>>5&255;_[mb|127]=u<<3&255;bb(mb);if(~ob)cb(ob);return pb|0}function hb(){d=v;e=w;f=x;g=y;h=z;i=A;j=B;k=C;l=D;m=E;n=F;o=G;q=H;r=I;s=J;t=K;u=128}function ib(){d=L;e=M;f=N;g=O;h=P;i=Q;j=R;k=S;l=T;m=U;n=V;o=W;q=X;r=Y;s=Z;t=$;u=128}function jb(mb,nb,ob,pb,qb,rb,sb,tb,ub,vb,wb,xb,yb,zb,Ab,Bb,Cb,Db,Eb,Fb,Gb,Hb,Ib,Jb,Kb,Lb,Mb,Nb,Ob,Pb,Qb,Rb){mb=mb|0;nb=nb|0;ob=ob|0;pb=pb|0;qb=qb|0;rb=rb|0;sb=sb|0;tb=tb|0;ub=ub|0;vb=vb|0;wb=wb|0;xb=xb|0;yb=yb|0;zb=zb|0;Ab=Ab|0;Bb=Bb|0;Cb=Cb|0;Db=Db|0;Eb=Eb|0;Fb=Fb|0;Gb=Gb|0;Hb=Hb|0;Ib=Ib|0;Jb=Jb|0;Kb=Kb|0;Lb=Lb|0;Mb=Mb|0;Nb=Nb|0;Ob=Ob|0;Pb=Pb|0;Qb=Qb|0;Rb=Rb|0;db();ab(mb^1549556828,nb^1549556828,ob^1549556828,pb^1549556828,qb^1549556828,rb^1549556828,sb^1549556828,tb^1549556828,ub^1549556828,vb^1549556828,wb^1549556828,xb^1549556828,yb^1549556828,zb^1549556828,Ab^1549556828,Bb^1549556828,Cb^1549556828,Db^1549556828,Eb^1549556828,Fb^1549556828,Gb^1549556828,Hb^1549556828,Ib^1549556828,Jb^1549556828,Kb^1549556828,Lb^1549556828,Mb^1549556828,Nb^1549556828,Ob^1549556828,Pb^1549556828,Qb^1549556828,Rb^1549556828);L=d;M=e;N=f;O=g;P=h;Q=i;R=j;S=k;T=l;U=m;V=n;W=o;X=q;Y=r;Z=s;$=t;db();ab(mb^909522486,nb^909522486,ob^909522486,pb^909522486,qb^909522486,rb^909522486,sb^909522486,tb^909522486,ub^909522486,vb^909522486,wb^909522486,xb^909522486,yb^909522486,zb^909522486,Ab^909522486,Bb^909522486,Cb^909522486,Db^909522486,Eb^909522486,Fb^909522486,Gb^909522486,Hb^909522486,Ib^909522486,Jb^909522486,Kb^909522486,Lb^909522486,Mb^909522486,Nb^909522486,Ob^909522486,Pb^909522486,Qb^909522486,Rb^909522486);v=d;w=e;x=f;y=g;z=h;A=i;B=j;C=k;D=l;E=m;F=n;G=o;H=q;I=r;J=s;K=t;u=128}function kb(mb,nb,ob){mb=mb|0;nb=nb|0;ob=ob|0;var pb=0,qb=0,rb=0,sb=0,tb=0,ub=0,vb=0,wb=0,xb=0,yb=0,zb=0,Ab=0,Bb=0,Cb=0,Db=0,Eb=0,Fb=0;if(mb&127)return-1;if(~ob)if(ob&63)return-1;Fb=gb(mb,nb,-1)|0;pb=d;qb=e;rb=f;sb=g;tb=h;ub=i;vb=j;wb=k;xb=l;yb=m;zb=n;Ab=o;Bb=q;Cb=r;Db=s;Eb=t;ib();ab(pb,qb,rb,sb,tb,ub,vb,wb,xb,yb,zb,Ab,Bb,Cb,Db,Eb,2147483648,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1536);if(~ob)cb(ob);return Fb|0}function lb(mb,nb,ob,pb,qb){mb=mb|0;nb=nb|0;ob=ob|0;pb=pb|0;qb=qb|0;var rb=0,sb=0,tb=0,ub=0,vb=0,wb=0,xb=0,yb=0,zb=0,Ab=0,Bb=0,Cb=0,Db=0,Eb=0,Fb=0,Gb=0,Hb=0,Ib=0,Jb=0,Kb=0,Lb=0,Mb=0,Nb=0,Ob=0,Pb=0,Qb=0,Rb=0,Sb=0,Tb=0,Ub=0,Vb=0,Wb=0;if(mb&127)return-1;if(~qb)if(qb&63)return-1;_[mb+nb|0]=ob>>>24;_[mb+nb+1|0]=ob>>>16&255;_[mb+nb+2|0]=ob>>>8&255;_[mb+nb+3|0]=ob&255;kb(mb,nb+4|0,-1)|0;rb=Hb=d;sb=Ib=e;tb=Jb=f;ub=Kb=g;vb=Lb=h;wb=Mb=i;xb=Nb=j;yb=Ob=k;zb=Pb=l;Ab=Qb=m;Bb=Rb=n;Cb=Sb=o;Db=Tb=q;Eb=Ub=r;Fb=Vb=s;Gb=Wb=t;pb=pb-1|0;while((pb|0)>0){hb();ab(Hb,Ib,Jb,Kb,Lb,Mb,Nb,Ob,Pb,Qb,Rb,Sb,Tb,Ub,Vb,Wb,2147483648,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1536);Hb=d;Ib=e;Jb=f;Kb=g;Lb=h;Mb=i;Nb=j;Ob=k;Pb=l;Qb=m;Rb=n;Sb=o;Tb=q;Ub=r;Vb=s;Wb=t;ib();ab(Hb,Ib,Jb,Kb,Lb,Mb,Nb,Ob,Pb,Qb,Rb,Sb,Tb,Ub,Vb,Wb,2147483648,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1536);Hb=d;Ib=e;Jb=f;Kb=g;Lb=h;Mb=i;Nb=j;Ob=k;Pb=l;Qb=m;Rb=n;Sb=o;Tb=q;Ub=r;Vb=s;Wb=t;rb=rb^d;sb=sb^e;tb=tb^f;ub=ub^g;vb=vb^h;wb=wb^i;xb=xb^j;yb=yb^k;zb=zb^l;Ab=Ab^m;Bb=Bb^n;Cb=Cb^o;Db=Db^q;Eb=Eb^r;Fb=Fb^s;Gb=Gb^t;pb=pb-1|0}d=rb;e=sb;f=tb;g=ub;h=vb;i=wb;j=xb;k=yb;l=zb;m=Ab;n=Bb;o=Cb;q=Db;r=Eb;s=Fb;t=Gb;if(~qb)cb(qb);return 0}return{reset:db,init:eb,process:fb,finish:gb,hmac_reset:hb,hmac_init:jb,hmac_finish:kb,pbkdf2_generate_block:lb}}function q(a){if(a=a||{},a.heapSize=a.heapSize||4096,a.heapSize<=0||a.heapSize%4096)throw new d("heapSize must be a positive number and multiple of 4096");this.heap=a.heap||new Uint8Array(a.heapSize),this.asm=a.asm||p(b,null,this.heap.buffer),this.BLOCK_SIZE=v,this.HASH_SIZE=w,this.reset()}function r(){return null===y&&(y=new q({heapSize:1048576})),y}function s(a){if(void 0===a)throw new SyntaxError("data required");return r().reset().process(a).finish().result}function t(a){var b=s(a);return h(b)}function u(a){var b=s(a);return i(b)}b.asmCrypto=a,c.prototype=Object.create(Error.prototype,{name:{value:"IllegalStateError"}}),d.prototype=Object.create(Error.prototype,{name:{value:"IllegalArgumentError"}}),e.prototype=Object.create(Error.prototype,{name:{value:"SecurityError"}});var v=(b.Float64Array||b.Float32Array,128),w=64;q.BLOCK_SIZE=v,q.HASH_SIZE=w;var x=q.prototype;x.reset=m,x.process=n,x.finish=o;var y=null;q.bytes=s,q.hex=t,q.base64=u,a.SHA512=q}({},function(){return this}());
//# sourceMappingURL=asmcrypto.js.map
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment