-$packages["math"]=(function(){var $pkg={},$init,A,FI,FJ,FK,FL,GS,B,C,D,E,F,AS,EQ,P,T,V,W,X,Z,AC,AH,AT,AU,AV,AW,AX,AY,BI,BW,EG,ES;A=$packages["github.com/gopherjs/gopherjs/js"];FI=$arrayType($Uint32,2);FJ=$arrayType($Float32,2);FK=$arrayType($Float64,1);FL=$structType("math",[{prop:"uint32array",name:"uint32array",exported:false,typ:FI,tag:""},{prop:"float32array",name:"float32array",exported:false,typ:FJ,tag:""},{prop:"float64array",name:"float64array",exported:false,typ:FK,tag:""}]);GS=$arrayType($Float64,70);P=function(aq){var $ptr,aq;return $parseFloat(B.exp(aq));};$pkg.Exp=P;T=function(aq){var $ptr,aq,ar,as,at;ar=0;as=0;at=BW(aq);ar=at[0];as=at[1];return[ar,as];};$pkg.Frexp=T;V=function(aq){var $ptr,aq;if(aq>=0){return D;}else{return E;}};$pkg.Inf=V;W=function(aq,ar){var $ptr,aq,ar;if(aq===D){return ar>=0;}if(aq===E){return ar<=0;}return false;};$pkg.IsInf=W;X=function(aq){var $ptr,aq,ar;ar=false;ar=!((aq===aq));return ar;};$pkg.IsNaN=X;Z=function(aq){var $ptr,aq;if(!((aq===aq))){return F;}return $parseFloat(B.log(aq));};$pkg.Log=Z;AC=function(aq){var $ptr,aq;return EG(aq);};$pkg.Log2=AC;AH=function(){var $ptr;return F;};$pkg.NaN=AH;AT=function(){var $ptr,aq;aq=new($global.ArrayBuffer)(8);AS.uint32array=new($global.Uint32Array)(aq);AS.float32array=new($global.Float32Array)(aq);AS.float64array=new($global.Float64Array)(aq);};AU=function(aq){var $ptr,aq;AS.float32array[0]=aq;return AS.uint32array[0];};$pkg.Float32bits=AU;AV=function(aq){var $ptr,aq;AS.uint32array[0]=aq;return AS.float32array[0];};$pkg.Float32frombits=AV;AW=function(aq){var $ptr,aq,ar,as;AS.float64array[0]=aq;return(ar=$shiftLeft64(new $Uint64(0,AS.uint32array[1]),32),as=new $Uint64(0,AS.uint32array[0]),new $Uint64(ar.$high+as.$high,ar.$low+as.$low));};$pkg.Float64bits=AW;AX=function(aq){var $ptr,aq;AS.uint32array[0]=(aq.$low>>>0);AS.uint32array[1]=($shiftRightUint64(aq,32).$low>>>0);return AS.float64array[0];};$pkg.Float64frombits=AX;AY=function(aq){var $ptr,aq;if(aq<0){return-aq;}if(aq===0){return 0;}return aq;};$pkg.Abs=AY;BI=function(aq){var $ptr,aq,ar,as,at,au,av,aw;ar=0;as=0;if(AY(aq)<2.2250738585072014e-308){at=aq*4.503599627370496e+15;au=-52;ar=at;as=au;return[ar,as];}av=aq;aw=0;ar=av;as=aw;return[ar,as];};BW=function(aq){var $ptr,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb;ar=0;as=0;if((aq===0)){at=aq;au=0;ar=at;as=au;return[ar,as];}else if(W(aq,0)||X(aq)){av=aq;aw=0;ar=av;as=aw;return[ar,as];}ax=BI(aq);aq=ax[0];as=ax[1];ay=AW(aq);as=as+(((((az=$shiftRightUint64(ay,52),new $Uint64(az.$high&0,(az.$low&2047)>>>0)).$low>>0)-1023>>0)+1>>0))>>0;ay=(ba=new $Uint64(2146435072,0),new $Uint64(ay.$high&~ba.$high,(ay.$low&~ba.$low)>>>0));ay=(bb=new $Uint64(1071644672,0),new $Uint64(ay.$high|bb.$high,(ay.$low|bb.$low)>>>0));ar=AX(ay);return[ar,as];};EG=function(aq){var $ptr,aq,ar,as,at;ar=T(aq);as=ar[0];at=ar[1];if(as===0.5){return(at-1>>0);}return Z(as)*1.4426950408889634+at;};ES=function(){var $ptr,aq,ar,as,at;EQ[0]=1;EQ[1]=10;aq=2;while(true){if(!(aq<70)){break;}as=(ar=aq/2,(ar===ar&&ar!==1/0&&ar!==-1/0)?ar>>0:$throwRuntimeError("integer divide by zero"));((aq<0||aq>=EQ.length)?($throwRuntimeError("index out of range"),undefined):EQ[aq]=((as<0||as>=EQ.length)?($throwRuntimeError("index out of range"),undefined):EQ[as])*(at=aq-as>>0,((at<0||at>=EQ.length)?($throwRuntimeError("index out of range"),undefined):EQ[at])));aq=aq+(1)>>0;}};$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}AS=new FL.ptr(FI.zero(),FJ.zero(),FK.zero());EQ=GS.zero();B=$global.Math;C=0;D=1/C;E=-1/C;F=0/C;AT();ES();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["syscall"]=(function(){var $pkg={},$init,A,D,B,C,BT,BW,BZ,DT,DU,FT,FU,GC,GD,GE,GF,MT,NC,NH,NI,NJ,NK,NL,NM,NN,NO,OC,OE,OG,OH,OI,OV,OX,PF,PO,PP,PQ,PU,PV,PW,PX,PY,QC,QI,QJ,QK,QL,QM,QS,QT,QW,QX,QY,QZ,RA,RB,RC,RD,RE,RF,RI,E,F,N,O,P,AA,AB,AC,AD,FJ,FV,FW,FX,GY,PE,HD,G,H,I,J,K,L,Q,R,S,T,V,W,X,Y,Z,AF,AH,AW,BP,BQ,BR,BS,BU,BV,BX,BY,CA,CB,CN,CO,CT,CV,DB,DV,DY,FB,FC,FD,FE,FY,GA,GB,GG,GK,GL,GV,HG,HW,ID,IG,IH,II,IK,IN,IO,JI,KD,KH,KP,KQ,KS,KV,KX,LD,LE,LF,LG,LS,LY,ME,MH,MI,MJ,MM;A=$packages["github.com/gopherjs/gopherjs/js"];D=$packages["internal/race"];B=$packages["runtime"];C=$packages["sync"];BT=$pkg.NetlinkRouteRequest=$newType(0,$kindStruct,"syscall.NetlinkRouteRequest",true,"syscall",true,function(Header_,Data_){this.$val=this;if(arguments.length===0){this.Header=new OC.ptr(0,0,0,0,0);this.Data=new OE.ptr(0);return;}this.Header=Header_;this.Data=Data_;});BW=$pkg.NetlinkMessage=$newType(0,$kindStruct,"syscall.NetlinkMessage",true,"syscall",true,function(Header_,Data_){this.$val=this;if(arguments.length===0){this.Header=new OC.ptr(0,0,0,0,0);this.Data=OV.nil;return;}this.Header=Header_;this.Data=Data_;});BZ=$pkg.NetlinkRouteAttr=$newType(0,$kindStruct,"syscall.NetlinkRouteAttr",true,"syscall",true,function(Attr_,Value_){this.$val=this;if(arguments.length===0){this.Attr=new OG.ptr(0,0);this.Value=OV.nil;return;}this.Attr=Attr_;this.Value=Value_;});DT=$pkg.SockaddrLinklayer=$newType(0,$kindStruct,"syscall.SockaddrLinklayer",true,"syscall",true,function(Protocol_,Ifindex_,Hatype_,Pkttype_,Halen_,Addr_,raw_){this.$val=this;if(arguments.length===0){this.Protocol=0;this.Ifindex=0;this.Hatype=0;this.Pkttype=0;this.Halen=0;this.Addr=PO.zero();this.raw=new NK.ptr(0,0,0,0,0,0,PO.zero());return;}this.Protocol=Protocol_;this.Ifindex=Ifindex_;this.Hatype=Hatype_;this.Pkttype=Pkttype_;this.Halen=Halen_;this.Addr=Addr_;this.raw=raw_;});DU=$pkg.SockaddrNetlink=$newType(0,$kindStruct,"syscall.SockaddrNetlink",true,"syscall",true,function(Family_,Pad_,Pid_,Groups_,raw_){this.$val=this;if(arguments.length===0){this.Family=0;this.Pad=0;this.Pid=0;this.Groups=0;this.raw=new NL.ptr(0,0,0,0);return;}this.Family=Family_;this.Pad=Pad_;this.Pid=Pid_;this.Groups=Groups_;this.raw=raw_;});FT=$pkg.mmapper=$newType(0,$kindStruct,"syscall.mmapper",true,"syscall",false,function(Mutex_,active_,mmap_,munmap_){this.$val=this;if(arguments.length===0){this.Mutex=new C.Mutex.ptr(0,0);this.active=false;this.mmap=$throwNilPointerError;this.munmap=$throwNilPointerError;return;}this.Mutex=Mutex_;this.active=active_;this.mmap=mmap_;this.munmap=munmap_;});FU=$pkg.Errno=$newType(4,$kindUintptr,"syscall.Errno",true,"syscall",true,null);GC=$pkg.Sockaddr=$newType(8,$kindInterface,"syscall.Sockaddr",true,"syscall",true,null);GD=$pkg.SockaddrInet4=$newType(0,$kindStruct,"syscall.SockaddrInet4",true,"syscall",true,function(Port_,Addr_,raw_){this.$val=this;if(arguments.length===0){this.Port=0;this.Addr=QJ.zero();this.raw=new NH.ptr(0,0,QJ.zero(),PO.zero());return;}this.Port=Port_;this.Addr=Addr_;this.raw=raw_;});GE=$pkg.SockaddrInet6=$newType(0,$kindStruct,"syscall.SockaddrInet6",true,"syscall",true,function(Port_,ZoneId_,Addr_,raw_){this.$val=this;if(arguments.length===0){this.Port=0;this.ZoneId=0;this.Addr=PQ.zero();this.raw=new NI.ptr(0,0,0,PQ.zero(),0);return;}this.Port=Port_;this.ZoneId=ZoneId_;this.Addr=Addr_;this.raw=raw_;});GF=$pkg.SockaddrUnix=$newType(0,$kindStruct,"syscall.SockaddrUnix",true,"syscall",true,function(Name_,raw_){this.$val=this;if(arguments.length===0){this.Name="";this.raw=new NJ.ptr(0,QI.zero());return;}this.Name=Name_;this.raw=raw_;});MT=$pkg.Timespec=$newType(0,$kindStruct,"syscall.Timespec",true,"syscall",true,function(Sec_,Nsec_){this.$val=this;if(arguments.length===0){this.Sec=new $Int64(0,0);this.Nsec=new $Int64(0,0);return;}this.Sec=Sec_;this.Nsec=Nsec_;});NC=$pkg.Stat_t=$newType(0,$kindStruct,"syscall.Stat_t",true,"syscall",true,function(Dev_,Ino_,Nlink_,Mode_,Uid_,Gid_,X__pad0_,Rdev_,Size_,Blksize_,Blocks_,Atim_,Mtim_,Ctim_,X__unused_){this.$val=this;if(arguments.length===0){this.Dev=new $Uint64(0,0);this.Ino=new $Uint64(0,0);this.Nlink=new $Uint64(0,0);this.Mode=0;this.Uid=0;this.Gid=0;this.X__pad0=0;this.Rdev=new $Uint64(0,0);this.Size=new $Int64(0,0);this.Blksize=new $Int64(0,0);this.Blocks=new $Int64(0,0);this.Atim=new MT.ptr(new $Int64(0,0),new $Int64(0,0));this.Mtim=new MT.ptr(new $Int64(0,0),new $Int64(0,0));this.Ctim=new MT.ptr(new $Int64(0,0),new $Int64(0,0));this.X__unused=RI.zero();return;}this.Dev=Dev_;this.Ino=Ino_;this.Nlink=Nlink_;this.Mode=Mode_;this.Uid=Uid_;this.Gid=Gid_;this.X__pad0=X__pad0_;this.Rdev=Rdev_;this.Size=Size_;this.Blksize=Blksize_;this.Blocks=Blocks_;this.Atim=Atim_;this.Mtim=Mtim_;this.Ctim=Ctim_;this.X__unused=X__unused_;});NH=$pkg.RawSockaddrInet4=$newType(0,$kindStruct,"syscall.RawSockaddrInet4",true,"syscall",true,function(Family_,Port_,Addr_,Zero_){this.$val=this;if(arguments.length===0){this.Family=0;this.Port=0;this.Addr=QJ.zero();this.Zero=PO.zero();return;}this.Family=Family_;this.Port=Port_;this.Addr=Addr_;this.Zero=Zero_;});NI=$pkg.RawSockaddrInet6=$newType(0,$kindStruct,"syscall.RawSockaddrInet6",true,"syscall",true,function(Family_,Port_,Flowinfo_,Addr_,Scope_id_){this.$val=this;if(arguments.length===0){this.Family=0;this.Port=0;this.Flowinfo=0;this.Addr=PQ.zero();this.Scope_id=0;return;}this.Family=Family_;this.Port=Port_;this.Flowinfo=Flowinfo_;this.Addr=Addr_;this.Scope_id=Scope_id_;});NJ=$pkg.RawSockaddrUnix=$newType(0,$kindStruct,"syscall.RawSockaddrUnix",true,"syscall",true,function(Family_,Path_){this.$val=this;if(arguments.length===0){this.Family=0;this.Path=QI.zero();return;}this.Family=Family_;this.Path=Path_;});NK=$pkg.RawSockaddrLinklayer=$newType(0,$kindStruct,"syscall.RawSockaddrLinklayer",true,"syscall",true,function(Family_,Protocol_,Ifindex_,Hatype_,Pkttype_,Halen_,Addr_){this.$val=this;if(arguments.length===0){this.Family=0;this.Protocol=0;this.Ifindex=0;this.Hatype=0;this.Pkttype=0;this.Halen=0;this.Addr=PO.zero();return;}this.Family=Family_;this.Protocol=Protocol_;this.Ifindex=Ifindex_;this.Hatype=Hatype_;this.Pkttype=Pkttype_;this.Halen=Halen_;this.Addr=Addr_;});NL=$pkg.RawSockaddrNetlink=$newType(0,$kindStruct,"syscall.RawSockaddrNetlink",true,"syscall",true,function(Family_,Pad_,Pid_,Groups_){this.$val=this;if(arguments.length===0){this.Family=0;this.Pad=0;this.Pid=0;this.Groups=0;return;}this.Family=Family_;this.Pad=Pad_;this.Pid=Pid_;this.Groups=Groups_;});NM=$pkg.RawSockaddr=$newType(0,$kindStruct,"syscall.RawSockaddr",true,"syscall",true,function(Family_,Data_){this.$val=this;if(arguments.length===0){this.Family=0;this.Data=QK.zero();return;}this.Family=Family_;this.Data=Data_;});NN=$pkg.RawSockaddrAny=$newType(0,$kindStruct,"syscall.RawSockaddrAny",true,"syscall",true,function(Addr_,Pad_){this.$val=this;if(arguments.length===0){this.Addr=new NM.ptr(0,QK.zero());this.Pad=QL.zero();return;}this.Addr=Addr_;this.Pad=Pad_;});NO=$pkg._Socklen=$newType(4,$kindUint32,"syscall._Socklen",true,"syscall",false,null);OC=$pkg.NlMsghdr=$newType(0,$kindStruct,"syscall.NlMsghdr",true,"syscall",true,function(Len_,Type_,Flags_,Seq_,Pid_){this.$val=this;if(arguments.length===0){this.Len=0;this.Type=0;this.Flags=0;this.Seq=0;this.Pid=0;return;}this.Len=Len_;this.Type=Type_;this.Flags=Flags_;this.Seq=Seq_;this.Pid=Pid_;});OE=$pkg.RtGenmsg=$newType(0,$kindStruct,"syscall.RtGenmsg",true,"syscall",true,function(Family_){this.$val=this;if(arguments.length===0){this.Family=0;return;}this.Family=Family_;});OG=$pkg.RtAttr=$newType(0,$kindStruct,"syscall.RtAttr",true,"syscall",true,function(Len_,Type_){this.$val=this;if(arguments.length===0){this.Len=0;this.Type=0;return;}this.Len=Len_;this.Type=Type_;});OH=$pkg.IfInfomsg=$newType(0,$kindStruct,"syscall.IfInfomsg",true,"syscall",true,function(Family_,X__ifi_pad_,Type_,Index_,Flags_,Change_){this.$val=this;if(arguments.length===0){this.Family=0;this.X__ifi_pad=0;this.Type=0;this.Index=0;this.Flags=0;this.Change=0;return;}this.Family=Family_;this.X__ifi_pad=X__ifi_pad_;this.Type=Type_;this.Index=Index_;this.Flags=Flags_;this.Change=Change_;});OI=$pkg.IfAddrmsg=$newType(0,$kindStruct,"syscall.IfAddrmsg",true,"syscall",true,function(Family_,Prefixlen_,Flags_,Scope_,Index_){this.$val=this;if(arguments.length===0){this.Family=0;this.Prefixlen=0;this.Flags=0;this.Scope=0;this.Index=0;return;}this.Family=Family_;this.Prefixlen=Prefixlen_;this.Flags=Flags_;this.Scope=Scope_;this.Index=Index_;});OV=$sliceType($Uint8);OX=$sliceType($String);PF=$ptrType($Uint8);PO=$arrayType($Uint8,8);PP=$ptrType($Uint16);PQ=$arrayType($Uint8,16);PU=$ptrType(DU);PV=$sliceType(BW);PW=$ptrType(OC);PX=$sliceType(BZ);PY=$ptrType(OG);QC=$arrayType($Uint8,32);QI=$arrayType($Int8,108);QJ=$arrayType($Uint8,4);QK=$arrayType($Int8,14);QL=$arrayType($Int8,96);QM=$ptrType(NO);QS=$structType("syscall",[{prop:"addr",name:"addr",exported:false,typ:$Uintptr,tag:""},{prop:"len",name:"len",exported:false,typ:$Int,tag:""},{prop:"cap",name:"cap",exported:false,typ:$Int,tag:""}]);QT=$ptrType($Int64);QW=$ptrType(BT);QX=$ptrType(DT);QY=$ptrType(FT);QZ=$mapType(PF,OV);RA=$funcType([$Uintptr,$Uintptr,$Int,$Int,$Int,$Int64],[$Uintptr,$error],false);RB=$funcType([$Uintptr,$Uintptr],[$error],false);RC=$ptrType(GD);RD=$ptrType(GE);RE=$ptrType(GF);RF=$ptrType(MT);RI=$arrayType($Int64,3);G=function(){var $ptr;$flushConsole=(function(){var $ptr;if(!((F.$length===0))){$global.console.log($externalize($bytesToString(F),$String));F=OV.nil;}});};H=function(){var $ptr;if(!E){$global.console.error($externalize("warning: system calls not available, see https://github.com/gopherjs/gopherjs/blob/master/doc/syscalls.md",$String));}E=true;};I=function(i){var $ptr,i,j,k;j=$global.goPrintToConsole;if(!(j===undefined)){j(i);return;}F=$appendSlice(F,i);while(true){k=K(F,10);if(k===-1){break;}$global.console.log($externalize($bytesToString($subslice(F,0,k)),$String));F=$subslice(F,(k+1>>0));}};J=function(i){var $ptr,i;};K=function(i,j){var $ptr,i,j,k,l,m,n;k=i;l=0;while(true){if(!(l<k.$length)){break;}m=l;n=((l<0||l>=k.$length)?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+l]);if(n===j){return m;}l++;}return-1;};L=function(){var $ptr,i,j,k,l,m,n;i=$global.process;if(i===undefined){return OX.nil;}j=i.env;k=$global.Object.keys(j);l=$makeSlice(OX,$parseInt(k.length));m=0;while(true){if(!(m<$parseInt(k.length))){break;}n=$internalize(k[m],$String);((m<0||m>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+m]=n+"="+$internalize(j[$externalize(n,$String)],$String));m=m+(1)>>0;}return l;};Q=function(i){var $ptr,i,j,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);$deferred.push([(function(){var $ptr;$recover();}),[]]);if(N===null){if(O){return null;}O=true;j=$global.require;if(j===undefined){$panic(new $String(""));}N=j($externalize("syscall",$String));}return N[$externalize(i,$String)];}catch(err){$err=err;return null;}finally{$callDeferred($deferred,$err);}};R=function(i,j,k,l){var $ptr,aa,ab,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;m=0;n=0;o=0;p=Q("Syscall");if(!(p===null)){q=p(i,j,k,l);r=(($parseInt(q[0])>>0)>>>0);s=(($parseInt(q[1])>>0)>>>0);t=(($parseInt(q[2])>>0)>>>0);m=r;n=s;o=t;return[m,n,o];}if((i===1)&&((j===1)||(j===2))){u=k;v=$makeSlice(OV,$parseInt(u.length));v.$array=u;I(v);w=($parseInt(u.length)>>>0);x=0;y=0;m=w;n=x;o=y;return[m,n,o];}if(i===60){B.Goexit();}H();z=(P>>>0);aa=0;ab=13;m=z;n=aa;o=ab;return[m,n,o];};$pkg.Syscall=R;S=function(i,j,k,l,m,n,o){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;p=0;q=0;r=0;s=Q("Syscall6");if(!(s===null)){t=s(i,j,k,l,m,n,o);u=(($parseInt(t[0])>>0)>>>0);v=(($parseInt(t[1])>>0)>>>0);w=(($parseInt(t[2])>>0)>>>0);p=u;q=v;r=w;return[p,q,r];}if(!((i===202))){H();}x=(P>>>0);y=0;z=13;p=x;q=y;r=z;return[p,q,r];};$pkg.Syscall6=S;T=function(i,j,k,l){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w;m=0;n=0;o=0;p=Q("Syscall");if(!(p===null)){q=p(i,j,k,l);r=(($parseInt(q[0])>>0)>>>0);s=(($parseInt(q[1])>>0)>>>0);t=(($parseInt(q[2])>>0)>>>0);m=r;n=s;o=t;return[m,n,o];}H();u=(P>>>0);v=0;w=13;m=u;n=v;o=w;return[m,n,o];};$pkg.RawSyscall=T;V=function(i){var $ptr,i,j,k,l,m,n;j=new($global.Uint8Array)(i.length+1>>0);k=new OV($stringToBytes(i));l=0;while(true){if(!(l<k.$length)){break;}m=l;n=((l<0||l>=k.$length)?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+l]);if(n===0){return[PF.nil,new FU(22)];}j[m]=n;l++;}j[i.length]=0;return[j,$ifaceNil];};$pkg.BytePtrFromString=V;W=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q,r,s;l=new $Uint64(0,0);m=false;if(i.$length<((j+k>>>0)>>0)){n=new $Uint64(0,0);o=false;l=n;m=o;return[l,m];}if(false){p=X($subslice(i,j),k);q=true;l=p;m=q;return[l,m];}r=Y($subslice(i,j),k);s=true;l=r;m=s;return[l,m];};X=function(i,j){var $ptr,aa,ab,ac,ad,ae,af,ag,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;k=j;if(k===(1)){return new $Uint64(0,(0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0]));}else if(k===(2)){$unused((1>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+1]));return(l=new $Uint64(0,(1>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+1])),m=$shiftLeft64(new $Uint64(0,(0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0])),8),new $Uint64(l.$high|m.$high,(l.$low|m.$low)>>>0));}else if(k===(4)){$unused((3>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+3]));return(n=(o=(p=new $Uint64(0,(3>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+3])),q=$shiftLeft64(new $Uint64(0,(2>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+2])),8),new $Uint64(p.$high|q.$high,(p.$low|q.$low)>>>0)),r=$shiftLeft64(new $Uint64(0,(1>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+1])),16),new $Uint64(o.$high|r.$high,(o.$low|r.$low)>>>0)),s=$shiftLeft64(new $Uint64(0,(0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0])),24),new $Uint64(n.$high|s.$high,(n.$low|s.$low)>>>0));}else if(k===(8)){$unused((7>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+7]));return(t=(u=(v=(w=(x=(y=(z=new $Uint64(0,(7>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+7])),aa=$shiftLeft64(new $Uint64(0,(6>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+6])),8),new $Uint64(z.$high|aa.$high,(z.$low|aa.$low)>>>0)),ab=$shiftLeft64(new $Uint64(0,(5>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+5])),16),new $Uint64(y.$high|ab.$high,(y.$low|ab.$low)>>>0)),ac=$shiftLeft64(new $Uint64(0,(4>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+4])),24),new $Uint64(x.$high|ac.$high,(x.$low|ac.$low)>>>0)),ad=$shiftLeft64(new $Uint64(0,(3>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+3])),32),new $Uint64(w.$high|ad.$high,(w.$low|ad.$low)>>>0)),ae=$shiftLeft64(new $Uint64(0,(2>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+2])),40),new $Uint64(v.$high|ae.$high,(v.$low|ae.$low)>>>0)),af=$shiftLeft64(new $Uint64(0,(1>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+1])),48),new $Uint64(u.$high|af.$high,(u.$low|af.$low)>>>0)),ag=$shiftLeft64(new $Uint64(0,(0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0])),56),new $Uint64(t.$high|ag.$high,(t.$low|ag.$low)>>>0));}else{$panic(new $String("syscall: readInt with unsupported size"));}};Y=function(i,j){var $ptr,aa,ab,ac,ad,ae,af,ag,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;k=j;if(k===(1)){return new $Uint64(0,(0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0]));}else if(k===(2)){$unused((1>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+1]));return(l=new $Uint64(0,(0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0])),m=$shiftLeft64(new $Uint64(0,(1>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+1])),8),new $Uint64(l.$high|m.$high,(l.$low|m.$low)>>>0));}else if(k===(4)){$unused((3>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+3]));return(n=(o=(p=new $Uint64(0,(0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0])),q=$shiftLeft64(new $Uint64(0,(1>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+1])),8),new $Uint64(p.$high|q.$high,(p.$low|q.$low)>>>0)),r=$shiftLeft64(new $Uint64(0,(2>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+2])),16),new $Uint64(o.$high|r.$high,(o.$low|r.$low)>>>0)),s=$shiftLeft64(new $Uint64(0,(3>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+3])),24),new $Uint64(n.$high|s.$high,(n.$low|s.$low)>>>0));}else if(k===(8)){$unused((7>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+7]));return(t=(u=(v=(w=(x=(y=(z=new $Uint64(0,(0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0])),aa=$shiftLeft64(new $Uint64(0,(1>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+1])),8),new $Uint64(z.$high|aa.$high,(z.$low|aa.$low)>>>0)),ab=$shiftLeft64(new $Uint64(0,(2>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+2])),16),new $Uint64(y.$high|ab.$high,(y.$low|ab.$low)>>>0)),ac=$shiftLeft64(new $Uint64(0,(3>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+3])),24),new $Uint64(x.$high|ac.$high,(x.$low|ac.$low)>>>0)),ad=$shiftLeft64(new $Uint64(0,(4>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+4])),32),new $Uint64(w.$high|ad.$high,(w.$low|ad.$low)>>>0)),ae=$shiftLeft64(new $Uint64(0,(5>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+5])),40),new $Uint64(v.$high|ae.$high,(v.$low|ae.$low)>>>0)),af=$shiftLeft64(new $Uint64(0,(6>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+6])),48),new $Uint64(u.$high|af.$high,(u.$low|af.$low)>>>0)),ag=$shiftLeft64(new $Uint64(0,(7>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+7])),56),new $Uint64(t.$high|ag.$high,(t.$low|ag.$low)>>>0));}else{$panic(new $String("syscall: readInt with unsupported size"));}};Z=function(i,j,k){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;l=0;m=0;n=OX.nil;o=i.$length;m=0;while(true){if(!(!((j===0))&&i.$length>0)){break;}p=FD(i);q=p[0];r=p[1];if(!r||(s=new $Uint64(0,i.$length),(q.$high>s.$high||(q.$high===s.$high&&q.$low>s.$low)))){t=o;u=m;v=k;l=t;m=u;n=v;return[l,m,n];}w=$subslice(i,0,$flatten64(q));i=$subslice(i,$flatten64(q));x=FC(w);y=x[0];r=x[1];if(!r){break;}if((y.$high===0&&y.$low===0)){continue;}z=FE(w);aa=z[0];r=z[1];if(!r||(ab=new $Uint64(0+aa.$high,19+aa.$low),ac=new $Uint64(0,w.$length),(ab.$high>ac.$high||(ab.$high===ac.$high&&ab.$low>ac.$low)))){break;}ad=$subslice(w,19,$flatten64(new $Uint64(0+aa.$high,19+aa.$low)));ae=ad;af=0;while(true){if(!(af<ae.$length)){break;}ag=af;ah=((af<0||af>=ae.$length)?($throwRuntimeError("index out of range"),undefined):ae.$array[ae.$offset+af]);if(ah===0){ad=$subslice(ad,0,ag);break;}af++;}if($bytesToString(ad)==="."||$bytesToString(ad)===".."){continue;}j=j-(1)>>0;m=m+(1)>>0;k=$append(k,$bytesToString(ad));}ai=o-i.$length>>0;aj=m;ak=k;l=ai;m=aj;n=ak;return[l,m,n];};$pkg.ParseDirent=Z;AF=function(){var $ptr,i,j,k,l,m,n,o,p,q,r;AC={};i=AD;j=0;while(true){if(!(j<i.$length)){break;}k=j;l=((j<0||j>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+j]);m=0;while(true){if(!(m<l.length)){break;}if(l.charCodeAt(m)===61){n=$substring(l,0,m);o=(p=AC[$String.keyFor(n)],p!==undefined?[p.v,true]:[0,false]);q=o[1];if(!q){r=n;(AC||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(r)]={k:r,v:k};}else{((k<0||k>=AD.$length)?($throwRuntimeError("index out of range"),undefined):AD.$array[AD.$offset+k]="");}break;}m=m+(1)>>0;}j++;}};AH=function(i){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);j="";k=false;$r=AA.Do(AF);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(i.length===0){l="";m=false;j=l;k=m;$s=-1;return[j,k];}$r=AB.RLock();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(AB,"RUnlock"),[]]);n=(o=AC[$String.keyFor(i)],o!==undefined?[o.v,true]:[0,false]);p=n[0];q=n[1];if(!q){r="";s=false;j=r;k=s;$s=-1;return[j,k];}t=((p<0||p>=AD.$length)?($throwRuntimeError("index out of range"),undefined):AD.$array[AD.$offset+p]);u=0;while(true){if(!(u<t.length)){break;}if(t.charCodeAt(u)===61){v=$substring(t,(u+1>>0));w=true;j=v;k=w;$s=-1;return[j,k];}u=u+(1)>>0;}x="";y=false;j=x;k=y;$s=-1;return[j,k];}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if(!$curGoroutine.asleep){return[j,k];}if($curGoroutine.asleep){if($f===undefined){$f={$blk:AH};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};$pkg.Getenv=AH;AW=function(i){var $ptr,i;IK(i,2,1);};$pkg.CloseOnExec=AW;BP=function(i,j){var $ptr,i,j;};BQ=function(i,j){var $ptr,i,j;};BR=function(i){var $ptr,i;return(((i+4>>0)-1>>0))&-4;};BS=function(i){var $ptr,i;return(((i+4>>0)-1>>0))&-4;};BT.ptr.prototype.toWireFormat=function(){var $ptr,i,j;i=this;j=$makeSlice(OV,i.Header.Len);$sliceToArray($subslice(j,0,4)).$set(i.Header.Len);$sliceToArray($subslice(j,4,6)).$set(i.Header.Type);$sliceToArray($subslice(j,6,8)).$set(i.Header.Flags);$sliceToArray($subslice(j,8,12)).$set(i.Header.Seq);$sliceToArray($subslice(j,12,16)).$set(i.Header.Pid);(16>=j.$length?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+16]=i.Data.Family);return j;};BT.prototype.toWireFormat=function(){return this.$val.toWireFormat();};BU=function(i,j,k){var $ptr,i,j,k,l;l=new BT.ptr(new OC.ptr(0,0,0,0,0),new OE.ptr(0));l.Header.Len=17;l.Header.Type=(i<<16>>>16);l.Header.Flags=769;l.Header.Seq=(j>>>0);l.Data.Family=(k<<24>>>24);return l.toWireFormat();};BV=function(i,j){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);k=GV(16,3,0);l=k[0];m=k[1];if(!($interfaceIsEqual(m,$ifaceNil))){$s=-1;return[OV.nil,m];}$deferred.push([HW,[l]]);n=new DU.ptr(16,0,0,0,new NL.ptr(0,0,0,0));o=GG(l,n);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=o;if(!($interfaceIsEqual(p,$ifaceNil))){$s=-1;return[OV.nil,p];}q=BU(i,1,j);r=GL(l,q,0,n);$s=2;case 2:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=r;if(!($interfaceIsEqual(s,$ifaceNil))){$s=-1;return[OV.nil,s];}t=OV.nil;u=$makeSlice(OV,CT());done:while(true){v=u;w=GK(l,v,0);x=w[0];y=w[2];if(!($interfaceIsEqual(y,$ifaceNil))){$s=-1;return[OV.nil,y];}if(x<16){$s=-1;return[OV.nil,new FU(22)];}v=$subslice(v,0,x);t=$appendSlice(t,v);z=BX(v);aa=z[0];y=z[1];if(!($interfaceIsEqual(y,$ifaceNil))){$s=-1;return[OV.nil,y];}ab=aa;ac=0;while(true){if(!(ac<ab.$length)){break;}ad=$clone(((ac<0||ac>=ab.$length)?($throwRuntimeError("index out of range"),undefined):ab.$array[ab.$offset+ac]),BW);ae=DY(l);af=ae[0];ag=ae[1];if(!($interfaceIsEqual(ag,$ifaceNil))){$s=-1;return[OV.nil,ag];}ah=af;if($assertType(ah,PU,true)[1]){ai=ah.$val;if(!((ad.Header.Seq===1))||!((ad.Header.Pid===ai.Pid))){$s=-1;return[OV.nil,new FU(22)];}}else{aj=ah;$s=-1;return[OV.nil,new FU(22)];}if(ad.Header.Type===3){break done;}if(ad.Header.Type===2){$s=-1;return[OV.nil,new FU(22)];}ac++;}}$s=-1;return[t,$ifaceNil];}return;}}catch(err){$err=err;$s=-1;return[OV.nil,$ifaceNil];}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:BV};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};$pkg.NetlinkRIB=BV;BX=function(i){var $ptr,i,j,k,l,m,n,o,p;j=PV.nil;while(true){if(!(i.$length>=16)){break;}k=BY(i);l=k[0];m=k[1];n=k[2];o=k[3];if(!($interfaceIsEqual(o,$ifaceNil))){return[PV.nil,o];}p=new BW.ptr($clone(l,OC),$subslice(m,0,((l.Len>>0)-16>>0)));j=$append(j,p);i=$subslice(i,n);}return[j,$ifaceNil];};$pkg.ParseNetlinkMessage=BX;BY=function(i){var $ptr,i,j,k,l,m,n;m=(j=$sliceToArray(i),k=new OC.ptr(0,0,0,0,0),l=new DataView(j.buffer,j.byteOffset),k.Len=l.getUint32(0,true),k.Type=l.getUint16(4,true),k.Flags=l.getUint16(6,true),k.Seq=l.getUint32(8,true),k.Pid=l.getUint32(12,true),k);n=BR((m.Len>>0));if((m.Len>>0)<16||n>i.$length){return[PW.nil,OV.nil,0,new FU(22)];}return[m,$subslice(i,16),n,$ifaceNil];};CA=function(i){var $ptr,i,j,k,l,m,n,o,p,q,r;j=OV.nil;k=i.Header.Type;if((k===(16))||(k===(17))){j=$subslice(i.Data,16);}else if((k===(20))||(k===(21))){j=$subslice(i.Data,8);}else if((k===(24))||(k===(25))){j=$subslice(i.Data,12);}else{return[PX.nil,new FU(22)];}l=PX.nil;while(true){if(!(j.$length>=4)){break;}m=CB(j);n=m[0];o=m[1];p=m[2];q=m[3];if(!($interfaceIsEqual(q,$ifaceNil))){return[PX.nil,q];}r=new BZ.ptr($clone(n,OG),$subslice(o,0,((n.Len>>0)-4>>0)));l=$append(l,r);j=$subslice(j,p);}return[l,$ifaceNil];};$pkg.ParseNetlinkRouteAttr=CA;CB=function(i){var $ptr,i,j,k,l,m;m=(j=$sliceToArray(i),k=new OG.ptr(0,0),l=new DataView(j.buffer,j.byteOffset),k.Len=l.getUint16(0,true),k.Type=l.getUint16(2,true),k);if((m.Len>>0)<4||(m.Len>>0)>i.$length){return[PY.nil,OV.nil,0,new FU(22)];}return[m,$subslice(i,4),BS((m.Len>>0)),$ifaceNil];};CN=function(i){var $ptr,i;if(i<0){return"-"+CO((-i>>>0));}return CO((i>>>0));};CO=function(i){var $ptr,i,j,k,l,m;j=QC.zero();k=31;while(true){if(!(i>=10)){break;}((k<0||k>=j.length)?($throwRuntimeError("index out of range"),undefined):j[k]=(((l=i%10,l===l?l:$throwRuntimeError("integer divide by zero"))+48>>>0)<<24>>>24));k=k-(1)>>0;i=(m=i/(10),(m===m&&m!==1/0&&m!==-1/0)?m>>>0:$throwRuntimeError("integer divide by zero"));}((k<0||k>=j.length)?($throwRuntimeError("index out of range"),undefined):j[k]=((i+48>>>0)<<24>>>24));return $bytesToString($subslice(new OV(j),k));};MT.ptr.prototype.Unix=function(){var $ptr,i,j,k,l,m;i=new $Int64(0,0);j=new $Int64(0,0);k=this;l=k.Sec;m=k.Nsec;i=l;j=m;return[i,j];};MT.prototype.Unix=function(){return this.$val.Unix();};MT.ptr.prototype.Nano=function(){var $ptr,i,j,k;i=this;return(j=$mul64(i.Sec,new $Int64(0,1000000000)),k=i.Nsec,new $Int64(j.$high+k.$high,j.$low+k.$low));};MT.prototype.Nano=function(){return this.$val.Nano();};CT=function(){$throwRuntimeError("native function not implemented: syscall.Getpagesize");};$pkg.Getpagesize=CT;CV=function(i,j){var $ptr,i,j,k;k=$ifaceNil;k=II(-100,i,j,0);return k;};$pkg.Chmod=CV;DB=function(i,j,k){var $ptr,i,j,k,l,m,n;l=0;m=$ifaceNil;n=HG(-100,i,j|0,k);l=n[0];m=n[1];return[l,m];};$pkg.Open=DB;GD.ptr.prototype.sockaddr=function(){var $ptr,i,j,k,l,m,n,o,p,q;i=this;if(i.Port<0||i.Port>65535){return[0,0,new FU(22)];}i.raw.Family=2;k=(j=i.raw,(j.$ptr_Port||(j.$ptr_Port=new PP(function(){return this.$target.Port;},function($v){this.$target.Port=$v;},j))));k.nilCheck,k[0]=((i.Port>>8>>0)<<24>>>24);k.nilCheck,k[1]=(i.Port<<24>>>24);l=0;while(true){if(!(l<4)){break;}(n=i.raw.Addr,((l<0||l>=n.length)?($throwRuntimeError("index out of range"),undefined):n[l]=(m=i.Addr,((l<0||l>=m.length)?($throwRuntimeError("index out of range"),undefined):m[l]))));l=l+(1)>>0;}o=new Uint8Array(16);return[o,16,$ifaceNil];};GD.prototype.sockaddr=function(){return this.$val.sockaddr();};GE.ptr.prototype.sockaddr=function(){var $ptr,i,j,k,l,m,n,o,p,q;i=this;if(i.Port<0||i.Port>65535){return[0,0,new FU(22)];}i.raw.Family=10;k=(j=i.raw,(j.$ptr_Port||(j.$ptr_Port=new PP(function(){return this.$target.Port;},function($v){this.$target.Port=$v;},j))));k.nilCheck,k[0]=((i.Port>>8>>0)<<24>>>24);k.nilCheck,k[1]=(i.Port<<24>>>24);i.raw.Scope_id=i.ZoneId;l=0;while(true){if(!(l<16)){break;}(n=i.raw.Addr,((l<0||l>=n.length)?($throwRuntimeError("index out of range"),undefined):n[l]=(m=i.Addr,((l<0||l>=m.length)?($throwRuntimeError("index out of range"),undefined):m[l]))));l=l+(1)>>0;}o=new Uint8Array(28);return[o,28,$ifaceNil];};GE.prototype.sockaddr=function(){return this.$val.sockaddr();};GF.ptr.prototype.sockaddr=function(){var $ptr,i,j,k,l,m,n,o,p,q;i=this;j=i.Name;k=j.length;if(k>=108){return[0,0,new FU(22)];}i.raw.Family=1;l=0;while(true){if(!(l<k)){break;}(m=i.raw.Path,((l<0||l>=m.length)?($throwRuntimeError("index out of range"),undefined):m[l]=(j.charCodeAt(l)<<24>>24)));l=l+(1)>>0;}n=2;if(k>0){n=n+(((k>>>0)+1>>>0))>>>0;}if(i.raw.Path[0]===64){i.raw.Path[0]=0;n=n-(1)>>>0;}o=new Uint8Array(110);return[o,n,$ifaceNil];};GF.prototype.sockaddr=function(){return this.$val.sockaddr();};DT.ptr.prototype.sockaddr=function(){var $ptr,i,j,k,l,m,n,o;i=this;if(i.Ifindex<0||i.Ifindex>2147483647){return[0,0,new FU(22)];}i.raw.Family=17;i.raw.Protocol=i.Protocol;i.raw.Ifindex=(i.Ifindex>>0);i.raw.Hatype=i.Hatype;i.raw.Pkttype=i.Pkttype;i.raw.Halen=i.Halen;j=0;while(true){if(!(j<8)){break;}(l=i.raw.Addr,((j<0||j>=l.length)?($throwRuntimeError("index out of range"),undefined):l[j]=(k=i.Addr,((j<0||j>=k.length)?($throwRuntimeError("index out of range"),undefined):k[j]))));j=j+(1)>>0;}m=new Uint8Array(20);return[m,20,$ifaceNil];};DT.prototype.sockaddr=function(){return this.$val.sockaddr();};DU.ptr.prototype.sockaddr=function(){var $ptr,i,j,k,l;i=this;i.raw.Family=16;i.raw.Pad=i.Pad;i.raw.Pid=i.Pid;i.raw.Groups=i.Groups;j=new Uint8Array(12);return[j,12,$ifaceNil];};DU.prototype.sockaddr=function(){return this.$val.sockaddr();};DV=function(i){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;j=i.Addr.Family;if(j===(16)){n=new Uint8Array(112);q=(k=n,l=new NL.ptr(0,0,0,0),m=new DataView(k.buffer,k.byteOffset),l.Family=m.getUint16(0,true),l.Pad=m.getUint16(2,true),l.Pid=m.getUint32(4,true),l.Groups=m.getUint32(8,true),l);o=i,p=new DataView(n.buffer,n.byteOffset),o.Addr.Family=p.getUint16(0,true),o.Addr.Data=new($nativeArray($kindInt8))(n.buffer,$min(n.byteOffset+2,n.buffer.byteLength)),o.Pad=new($nativeArray($kindInt8))(n.buffer,$min(n.byteOffset+16,n.buffer.byteLength));r=new DU.ptr(0,0,0,0,new NL.ptr(0,0,0,0));r.Family=q.Family;r.Pad=q.Pad;r.Pid=q.Pid;r.Groups=q.Groups;return[r,$ifaceNil];}else if(j===(17)){v=new Uint8Array(112);y=(s=v,t=new NK.ptr(0,0,0,0,0,0,PO.zero()),u=new DataView(s.buffer,s.byteOffset),t.Family=u.getUint16(0,true),t.Protocol=u.getUint16(2,true),t.Ifindex=u.getInt32(4,true),t.Hatype=u.getUint16(8,true),t.Pkttype=u.getUint8(10,true),t.Halen=u.getUint8(11,true),t.Addr=new($nativeArray($kindUint8))(s.buffer,$min(s.byteOffset+12,s.buffer.byteLength)),t);w=i,x=new DataView(v.buffer,v.byteOffset),w.Addr.Family=x.getUint16(0,true),w.Addr.Data=new($nativeArray($kindInt8))(v.buffer,$min(v.byteOffset+2,v.buffer.byteLength)),w.Pad=new($nativeArray($kindInt8))(v.buffer,$min(v.byteOffset+16,v.buffer.byteLength));z=new DT.ptr(0,0,0,0,0,PO.zero(),new NK.ptr(0,0,0,0,0,0,PO.zero()));z.Protocol=y.Protocol;z.Ifindex=(y.Ifindex>>0);z.Hatype=y.Hatype;z.Pkttype=y.Pkttype;z.Halen=y.Halen;aa=0;while(true){if(!(aa<8)){break;}(ac=z.Addr,((aa<0||aa>=ac.length)?($throwRuntimeError("index out of range"),undefined):ac[aa]=(ab=y.Addr,((aa<0||aa>=ab.length)?($throwRuntimeError("index out of range"),undefined):ab[aa]))));aa=aa+(1)>>0;}return[z,$ifaceNil];}else if(j===(1)){ag=new Uint8Array(112);aj=(ad=ag,ae=new NJ.ptr(0,QI.zero()),af=new DataView(ad.buffer,ad.byteOffset),ae.Family=af.getUint16(0,true),ae.Path=new($nativeArray($kindInt8))(ad.buffer,$min(ad.byteOffset+2,ad.buffer.byteLength)),ae);ah=i,ai=new DataView(ag.buffer,ag.byteOffset),ah.Addr.Family=ai.getUint16(0,true),ah.Addr.Data=new($nativeArray($kindInt8))(ag.buffer,$min(ag.byteOffset+2,ag.buffer.byteLength)),ah.Pad=new($nativeArray($kindInt8))(ag.buffer,$min(ag.byteOffset+16,ag.buffer.byteLength));ak=new GF.ptr("",new NJ.ptr(0,QI.zero()));if(aj.Path[0]===0){aj.Path[0]=64;}al=0;while(true){if(!(al<108&&!(((am=aj.Path,((al<0||al>=am.length)?($throwRuntimeError("index out of range"),undefined):am[al]))===0)))){break;}al=al+(1)>>0;}an=$subslice(new OV($sliceToArray(new OV(aj.Path))),0,al);ak.Name=$bytesToString(an);return[ak,$ifaceNil];}else if(j===(2)){ar=new Uint8Array(112);au=(ao=ar,ap=new NH.ptr(0,0,QJ.zero(),PO.zero()),aq=new DataView(ao.buffer,ao.byteOffset),ap.Family=aq.getUint16(0,true),ap.Port=aq.getUint16(2,true),ap.Addr=new($nativeArray($kindUint8))(ao.buffer,$min(ao.byteOffset+4,ao.buffer.byteLength)),ap.Zero=new($nativeArray($kindUint8))(ao.buffer,$min(ao.byteOffset+8,ao.buffer.byteLength)),ap);as=i,at=new DataView(ar.buffer,ar.byteOffset),as.Addr.Family=at.getUint16(0,true),as.Addr.Data=new($nativeArray($kindInt8))(ar.buffer,$min(ar.byteOffset+2,ar.buffer.byteLength)),as.Pad=new($nativeArray($kindInt8))(ar.buffer,$min(ar.byteOffset+16,ar.buffer.byteLength));av=new GD.ptr(0,QJ.zero(),new NH.ptr(0,0,QJ.zero(),PO.zero()));aw=(au.$ptr_Port||(au.$ptr_Port=new PP(function(){return this.$target.Port;},function($v){this.$target.Port=$v;},au)));av.Port=(((aw.nilCheck,aw[0])>>0)<<8>>0)+((aw.nilCheck,aw[1])>>0)>>0;ax=0;while(true){if(!(ax<4)){break;}(az=av.Addr,((ax<0||ax>=az.length)?($throwRuntimeError("index out of range"),undefined):az[ax]=(ay=au.Addr,((ax<0||ax>=ay.length)?($throwRuntimeError("index out of range"),undefined):ay[ax]))));ax=ax+(1)>>0;}return[av,$ifaceNil];}else if(j===(10)){bd=new Uint8Array(112);bg=(ba=bd,bb=new NI.ptr(0,0,0,PQ.zero(),0),bc=new DataView(ba.buffer,ba.byteOffset),bb.Family=bc.getUint16(0,true),bb.Port=bc.getUint16(2,true),bb.Flowinfo=bc.getUint32(4,true),bb.Addr=new($nativeArray($kindUint8))(ba.buffer,$min(ba.byteOffset+8,ba.buffer.byteLength)),bb.Scope_id=bc.getUint32(24,true),bb);be=i,bf=new DataView(bd.buffer,bd.byteOffset),be.Addr.Family=bf.getUint16(0,true),be.Addr.Data=new($nativeArray($kindInt8))(bd.buffer,$min(bd.byteOffset+2,bd.buffer.byteLength)),be.Pad=new($nativeArray($kindInt8))(bd.buffer,$min(bd.byteOffset+16,bd.buffer.byteLength));bh=new GE.ptr(0,0,PQ.zero(),new NI.ptr(0,0,0,PQ.zero(),0));bi=(bg.$ptr_Port||(bg.$ptr_Port=new PP(function(){return this.$target.Port;},function($v){this.$target.Port=$v;},bg)));bh.Port=(((bi.nilCheck,bi[0])>>0)<<8>>0)+((bi.nilCheck,bi[1])>>0)>>0;bh.ZoneId=bg.Scope_id;bj=0;while(true){if(!(bj<16)){break;}(bl=bh.Addr,((bj<0||bj>=bl.length)?($throwRuntimeError("index out of range"),undefined):bl[bj]=(bk=bg.Addr,((bj<0||bj>=bk.length)?($throwRuntimeError("index out of range"),undefined):bk[bj]))));bj=bj+(1)>>0;}return[bh,$ifaceNil];}return[$ifaceNil,new FU(97)];};DY=function(i){var $ptr,i,j,k,l,m,n,o;j=$ifaceNil;k=$ifaceNil;l=new NN.ptr(new NM.ptr(0,QK.zero()),QL.zero());m=112;k=MH(i,l,(n||(n=new QM(function(){return m;},function($v){m=$v;}))));if(!($interfaceIsEqual(k,$ifaceNil))){return[j,k];}o=DV(l);j=o[0];k=o[1];return[j,k];};$pkg.Getsockname=DY;FB=function(i,j){var $ptr,i,j,k,l,m;k=0;l=$ifaceNil;m=IO(i,j);k=m[0];l=m[1];return[k,l];};$pkg.ReadDirent=FB;FC=function(i){var $ptr,i;return W(i,0,8);};FD=function(i){var $ptr,i;return W(i,16,2);};FE=function(i){var $ptr,i,j,k,l;j=FD(i);k=j[0];l=j[1];if(!l){return[new $Uint64(0,0),false];}return[new $Uint64(k.$high-0,k.$low-19),true];};FT.ptr.prototype.Mmap=function(i,j,k,l,m){var $ptr,aa,ab,ac,ad,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);n=[n];o=OV.nil;p=$ifaceNil;q=this;if(k<=0){r=OV.nil;s=new FU(22);o=r;p=s;$s=-1;return[o,p];}u=q.mmap(0,(k>>>0),l,m,i,j);$s=1;case 1:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}t=u;v=t[0];w=t[1];if(!($interfaceIsEqual(w,$ifaceNil))){x=OV.nil;y=w;o=x;p=y;$s=-1;return[o,p];}n[0]=new QS.ptr(v,k,k);z=n[0];aa=$indexPtr(z.$array,z.$offset+(z.$capacity-1>>0),PF);$r=q.Mutex.Lock();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(q.Mutex,"Unlock"),[]]);ab=aa;(q.active||$throwRuntimeError("assignment to entry in nil map"))[PF.keyFor(ab)]={k:ab,v:z};ac=z;ad=$ifaceNil;o=ac;p=ad;$s=-1;return[o,p];}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if(!$curGoroutine.asleep){return[o,p];}if($curGoroutine.asleep){if($f===undefined){$f={$blk:FT.ptr.prototype.Mmap};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};FT.prototype.Mmap=function(i,j,k,l,m){return this.$val.Mmap(i,j,k,l,m);};FT.ptr.prototype.Munmap=function(i){var $ptr,i,j,k,l,m,n,o,p,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);j=$ifaceNil;k=this;if((i.$length===0)||!((i.$length===i.$capacity))){j=new FU(22);$s=-1;return j;}l=$indexPtr(i.$array,i.$offset+(i.$capacity-1>>0),PF);$r=k.Mutex.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(k.Mutex,"Unlock"),[]]);n=(m=k.active[PF.keyFor(l)],m!==undefined?m.v:OV.nil);if(n===OV.nil||!($indexPtr(n.$array,n.$offset+0,PF)===$indexPtr(i.$array,i.$offset+0,PF))){j=new FU(22);$s=-1;return j;}o=k.munmap($sliceToArray(n),(n.$length>>>0));$s=2;case 2:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=o;if(!($interfaceIsEqual(p,$ifaceNil))){j=p;$s=-1;return j;}delete k.active[PF.keyFor(l)];j=$ifaceNil;$s=-1;return j;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if(!$curGoroutine.asleep){return j;}if($curGoroutine.asleep){if($f===undefined){$f={$blk:FT.ptr.prototype.Munmap};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};FT.prototype.Munmap=function(i){return this.$val.Munmap(i);};FU.prototype.Error=function(){var $ptr,i,j;i=this.$val;if(0<=(i>>0)&&(i>>0)<133){j=((i<0||i>=HD.length)?($throwRuntimeError("index out of range"),undefined):HD[i]);if(!(j==="")){return j;}}return"errno "+CN((i>>0));};$ptrType(FU).prototype.Error=function(){return new FU(this.$get()).Error();};FU.prototype.Temporary=function(){var $ptr,i;i=this.$val;return(i===4)||(i===24)||(i===104)||(i===103)||new FU(i).Timeout();};$ptrType(FU).prototype.Temporary=function(){return new FU(this.$get()).Temporary();};FU.prototype.Timeout=function(){var $ptr,i;i=this.$val;return(i===11)||(i===11)||(i===110);};$ptrType(FU).prototype.Timeout=function(){return new FU(this.$get()).Timeout();};FY=function(i){var $ptr,i,j;j=i;if(j===(0)){return $ifaceNil;}else if(j===(11)){return FV;}else if(j===(22)){return FW;}else if(j===(2)){return FX;}return new FU(i);};GA=function(i,j){var $ptr,i,j,k,l,m;k=0;l=$ifaceNil;m=JI(i,j);k=m[0];l=m[1];if(false){if(k>0){D.WriteRange($sliceToArray(j),k);}if($interfaceIsEqual(l,$ifaceNil)){D.Acquire((PE||(PE=new QT(function(){return GY;},function($v){GY=$v;}))));}}if(false&&k>0){BQ($sliceToArray(j),k);}return[k,l];};$pkg.Read=GA;GB=function(i,j){var $ptr,i,j,k,l,m;k=0;l=$ifaceNil;if(false){D.ReleaseMerge((PE||(PE=new QT(function(){return GY;},function($v){GY=$v;}))));}m=KD(i,j);k=m[0];l=m[1];if(false&&k>0){D.ReadRange($sliceToArray(j),k);}if(false&&k>0){BP($sliceToArray(j),k);}return[k,l];};$pkg.Write=GB;GG=function(i,j){var $ptr,i,j,k,l,m,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:k=$ifaceNil;m=j.sockaddr();$s=1;case 1:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;n=l[0];o=l[1];k=l[2];if(!($interfaceIsEqual(k,$ifaceNil))){k=k;$s=-1;return k;}k=LY(i,n,o);$s=-1;return k;}return;}if($f===undefined){$f={$blk:GG};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Bind=GG;GK=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q,r,s;l=0;m=$ifaceNil;n=$ifaceNil;o=new NN.ptr(new NM.ptr(0,QK.zero()),QL.zero());p=112;q=MI(i,j,k,o,(r||(r=new QM(function(){return p;},function($v){p=$v;}))));l=q[0];n=q[1];if(!($interfaceIsEqual(n,$ifaceNil))){return[l,m,n];}if(!((o.Addr.Family===0))){s=DV(o);m=s[0];n=s[1];}return[l,m,n];};$pkg.Recvfrom=GK;GL=function(i,j,k,l){var $ptr,i,j,k,l,m,n,o,p,q,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=$ifaceNil;o=l.sockaddr();$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n[0];q=n[1];m=n[2];if(!($interfaceIsEqual(m,$ifaceNil))){m=m;$s=-1;return m;}m=MJ(i,j,k,p,q);$s=-1;return m;}return;}if($f===undefined){$f={$blk:GL};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Sendto=GL;GV=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p;l=0;m=$ifaceNil;if((i===10)&&$pkg.SocketDisableIPv6){n=-1;o=new FU(97);l=n;m=o;return[l,m];}p=ME(i,j,k);l=p[0];m=p[1];return[l,m];};$pkg.Socket=GV;HG=function(i,j,k,l){var $ptr,i,j,k,l,m,n,o,p,q,r,s;m=0;n=$ifaceNil;o=PF.nil;p=V(j);o=p[0];n=p[1];if(!($interfaceIsEqual(n,$ifaceNil))){return[m,n];}q=S(257,(i>>>0),o,(k>>>0),(l>>>0),0,0);r=q[0];s=q[2];J(o);m=(r>>0);if(!((s===0))){n=FY(s);}return[m,n];};HW=function(i){var $ptr,i,j,k,l;j=$ifaceNil;k=R(3,(i>>>0),0,0);l=k[2];if(!((l===0))){j=FY(l);}return j;};$pkg.Close=HW;ID=function(i){var $ptr,i;R(231,(i>>>0),0,0);return;};$pkg.Exit=ID;IG=function(i){var $ptr,i,j,k,l;j=$ifaceNil;k=R(81,(i>>>0),0,0);l=k[2];if(!((l===0))){j=FY(l);}return j;};$pkg.Fchdir=IG;IH=function(i,j){var $ptr,i,j,k,l,m;k=$ifaceNil;l=R(91,(i>>>0),(j>>>0),0);m=l[2];if(!((m===0))){k=FY(m);}return k;};$pkg.Fchmod=IH;II=function(i,j,k,l){var $ptr,i,j,k,l,m,n,o,p,q;m=$ifaceNil;n=PF.nil;o=V(j);n=o[0];m=o[1];if(!($interfaceIsEqual(m,$ifaceNil))){return m;}p=S(268,(i>>>0),n,(k>>>0),(l>>>0),0,0);q=p[2];J(n);if(!((q===0))){m=FY(q);}return m;};$pkg.Fchmodat=II;IK=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p;l=0;m=$ifaceNil;n=R(72,(i>>>0),(j>>>0),(k>>>0));o=n[0];p=n[2];l=(o>>0);if(!((p===0))){m=FY(p);}return[l,m];};IN=function(i){var $ptr,i,j,k,l;j=$ifaceNil;k=R(74,(i>>>0),0,0);l=k[2];if(!((l===0))){j=FY(l);}return j;};$pkg.Fsync=IN;IO=function(i,j){var $ptr,i,j,k,l,m,n,o,p;k=0;l=$ifaceNil;m=0;if(j.$length>0){m=$sliceToArray(j);}else{m=new Uint8Array(0);}n=R(217,(i>>>0),m,(j.$length>>>0));o=n[0];p=n[2];k=(o>>0);if(!((p===0))){l=FY(p);}return[k,l];};$pkg.Getdents=IO;JI=function(i,j){var $ptr,i,j,k,l,m,n,o,p;k=0;l=$ifaceNil;m=0;if(j.$length>0){m=$sliceToArray(j);}else{m=new Uint8Array(0);}n=R(0,(i>>>0),m,(j.$length>>>0));o=n[0];p=n[2];k=(o>>0);if(!((p===0))){l=FY(p);}return[k,l];};KD=function(i,j){var $ptr,i,j,k,l,m,n,o,p;k=0;l=$ifaceNil;m=0;if(j.$length>0){m=$sliceToArray(j);}else{m=new Uint8Array(0);}n=R(1,(i>>>0),m,(j.$length>>>0));o=n[0];p=n[2];k=(o>>0);if(!((p===0))){l=FY(p);}return[k,l];};KH=function(i,j){var $ptr,i,j,k,l,m;k=$ifaceNil;l=R(11,i,j,0);m=l[2];if(!((m===0))){k=FY(m);}return k;};KP=function(i,j,k){var $ptr,i,j,k,l,m,n;l=$ifaceNil;m=R(93,(i>>>0),(j>>>0),(k>>>0));n=m[2];if(!((n===0))){l=FY(n);}return l;};$pkg.Fchown=KP;KQ=function(i,j){var $ptr,i,j,k,l,m,n,o,p;k=$ifaceNil;m=new Uint8Array(144);l=R(5,(i>>>0),m,0);n=j,o=new DataView(m.buffer,m.byteOffset),n.Dev=new $Uint64(o.getUint32(4,true),o.getUint32(0,true)),n.Ino=new $Uint64(o.getUint32(12,true),o.getUint32(8,true)),n.Nlink=new $Uint64(o.getUint32(20,true),o.getUint32(16,true)),n.Mode=o.getUint32(24,true),n.Uid=o.getUint32(28,true),n.Gid=o.getUint32(32,true),n.X__pad0=o.getInt32(36,true),n.Rdev=new $Uint64(o.getUint32(44,true),o.getUint32(40,true)),n.Size=new $Int64(o.getUint32(52,true),o.getUint32(48,true)),n.Blksize=new $Int64(o.getUint32(60,true),o.getUint32(56,true)),n.Blocks=new $Int64(o.getUint32(68,true),o.getUint32(64,true)),n.Atim.Sec=new $Int64(o.getUint32(76,true),o.getUint32(72,true)),n.Atim.Nsec=new $Int64(o.getUint32(84,true),o.getUint32(80,true)),n.Mtim.Sec=new $Int64(o.getUint32(92,true),o.getUint32(88,true)),n.Mtim.Nsec=new $Int64(o.getUint32(100,true),o.getUint32(96,true)),n.Ctim.Sec=new $Int64(o.getUint32(108,true),o.getUint32(104,true)),n.Ctim.Nsec=new $Int64(o.getUint32(116,true),o.getUint32(112,true)),n.X__unused=new($nativeArray($kindInt64))(m.buffer,$min(m.byteOffset+120,m.buffer.byteLength));p=l[2];if(!((p===0))){k=FY(p);}return k;};$pkg.Fstat=KQ;KS=function(i,j){var $ptr,i,j,k,l,m;k=$ifaceNil;l=R(77,(i>>>0),(j.$low>>>0),0);m=l[2];if(!((m===0))){k=FY(m);}return k;};$pkg.Ftruncate=KS;KV=function(){var $ptr,i,j,k;i=0;j=T(104,0,0,0);k=j[0];i=(k>>0);return i;};$pkg.Getgid=KV;KX=function(){var $ptr,i,j,k;i=0;j=T(102,0,0,0);k=j[0];i=(k>>0);return i;};$pkg.Getuid=KX;LD=function(i,j){var $ptr,i,j,k,l,m,n,o,p,q,r;k=$ifaceNil;l=PF.nil;m=V(i);l=m[0];k=m[1];if(!($interfaceIsEqual(k,$ifaceNil))){return k;}o=new Uint8Array(144);n=R(6,l,o,0);p=j,q=new DataView(o.buffer,o.byteOffset),p.Dev=new $Uint64(q.getUint32(4,true),q.getUint32(0,true)),p.Ino=new $Uint64(q.getUint32(12,true),q.getUint32(8,true)),p.Nlink=new $Uint64(q.getUint32(20,true),q.getUint32(16,true)),p.Mode=q.getUint32(24,true),p.Uid=q.getUint32(28,true),p.Gid=q.getUint32(32,true),p.X__pad0=q.getInt32(36,true),p.Rdev=new $Uint64(q.getUint32(44,true),q.getUint32(40,true)),p.Size=new $Int64(q.getUint32(52,true),q.getUint32(48,true)),p.Blksize=new $Int64(q.getUint32(60,true),q.getUint32(56,true)),p.Blocks=new $Int64(q.getUint32(68,true),q.getUint32(64,true)),p.Atim.Sec=new $Int64(q.getUint32(76,true),q.getUint32(72,true)),p.Atim.Nsec=new $Int64(q.getUint32(84,true),q.getUint32(80,true)),p.Mtim.Sec=new $Int64(q.getUint32(92,true),q.getUint32(88,true)),p.Mtim.Nsec=new $Int64(q.getUint32(100,true),q.getUint32(96,true)),p.Ctim.Sec=new $Int64(q.getUint32(108,true),q.getUint32(104,true)),p.Ctim.Nsec=new $Int64(q.getUint32(116,true),q.getUint32(112,true)),p.X__unused=new($nativeArray($kindInt64))(o.buffer,$min(o.byteOffset+120,o.buffer.byteLength));r=n[2];J(l);if(!((r===0))){k=FY(r);}return k;};$pkg.Lstat=LD;LE=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q;l=0;m=$ifaceNil;n=0;if(j.$length>0){n=$sliceToArray(j);}else{n=new Uint8Array(0);}o=S(17,(i>>>0),n,(j.$length>>>0),(k.$low>>>0),0,0);p=o[0];q=o[2];l=(p>>0);if(!((q===0))){m=FY(q);}return[l,m];};$pkg.Pread=LE;LF=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q;l=0;m=$ifaceNil;n=0;if(j.$length>0){n=$sliceToArray(j);}else{n=new Uint8Array(0);}o=S(18,(i>>>0),n,(j.$length>>>0),(k.$low>>>0),0,0);p=o[0];q=o[2];l=(p>>0);if(!((q===0))){m=FY(q);}return[l,m];};$pkg.Pwrite=LF;LG=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p;l=new $Int64(0,0);m=$ifaceNil;n=R(8,(i>>>0),(j.$low>>>0),(k>>>0));o=n[0];p=n[2];l=new $Int64(0,o.constructor===Number?o:1);if(!((p===0))){m=FY(p);}return[l,m];};$pkg.Seek=LG;LS=function(i,j){var $ptr,i,j,k,l,m,n,o,p,q,r;k=$ifaceNil;l=PF.nil;m=V(i);l=m[0];k=m[1];if(!($interfaceIsEqual(k,$ifaceNil))){return k;}o=new Uint8Array(144);n=R(4,l,o,0);p=j,q=new DataView(o.buffer,o.byteOffset),p.Dev=new $Uint64(q.getUint32(4,true),q.getUint32(0,true)),p.Ino=new $Uint64(q.getUint32(12,true),q.getUint32(8,true)),p.Nlink=new $Uint64(q.getUint32(20,true),q.getUint32(16,true)),p.Mode=q.getUint32(24,true),p.Uid=q.getUint32(28,true),p.Gid=q.getUint32(32,true),p.X__pad0=q.getInt32(36,true),p.Rdev=new $Uint64(q.getUint32(44,true),q.getUint32(40,true)),p.Size=new $Int64(q.getUint32(52,true),q.getUint32(48,true)),p.Blksize=new $Int64(q.getUint32(60,true),q.getUint32(56,true)),p.Blocks=new $Int64(q.getUint32(68,true),q.getUint32(64,true)),p.Atim.Sec=new $Int64(q.getUint32(76,true),q.getUint32(72,true)),p.Atim.Nsec=new $Int64(q.getUint32(84,true),q.getUint32(80,true)),p.Mtim.Sec=new $Int64(q.getUint32(92,true),q.getUint32(88,true)),p.Mtim.Nsec=new $Int64(q.getUint32(100,true),q.getUint32(96,true)),p.Ctim.Sec=new $Int64(q.getUint32(108,true),q.getUint32(104,true)),p.Ctim.Nsec=new $Int64(q.getUint32(116,true),q.getUint32(112,true)),p.X__unused=new($nativeArray($kindInt64))(o.buffer,$min(o.byteOffset+120,o.buffer.byteLength));r=n[2];J(l);if(!((r===0))){k=FY(r);}return k;};$pkg.Stat=LS;LY=function(i,j,k){var $ptr,i,j,k,l,m,n;l=$ifaceNil;m=R(49,(i>>>0),j,(k>>>0));n=m[2];if(!((n===0))){l=FY(n);}return l;};ME=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p;l=0;m=$ifaceNil;n=T(41,(i>>>0),(j>>>0),(k>>>0));o=n[0];p=n[2];l=(o>>0);if(!((p===0))){m=FY(p);}return[l,m];};MH=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q;l=$ifaceNil;n=new Uint8Array(112);m=T(51,(i>>>0),n,k);o=j,p=new DataView(n.buffer,n.byteOffset),o.Addr.Family=p.getUint16(0,true),o.Addr.Data=new($nativeArray($kindInt8))(n.buffer,$min(n.byteOffset+2,n.buffer.byteLength)),o.Pad=new($nativeArray($kindInt8))(n.buffer,$min(n.byteOffset+16,n.buffer.byteLength));q=m[2];if(!((q===0))){l=FY(q);}return l;};MI=function(i,j,k,l,m){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v;n=0;o=$ifaceNil;p=0;if(j.$length>0){p=$sliceToArray(j);}else{p=new Uint8Array(0);}r=new Uint8Array(112);q=S(45,(i>>>0),p,(j.$length>>>0),(k>>>0),r,m);s=l,t=new DataView(r.buffer,r.byteOffset),s.Addr.Family=t.getUint16(0,true),s.Addr.Data=new($nativeArray($kindInt8))(r.buffer,$min(r.byteOffset+2,r.buffer.byteLength)),s.Pad=new($nativeArray($kindInt8))(r.buffer,$min(r.byteOffset+16,r.buffer.byteLength));u=q[0];v=q[2];n=(u>>0);if(!((v===0))){o=FY(v);}return[n,o];};MJ=function(i,j,k,l,m){var $ptr,i,j,k,l,m,n,o,p,q;n=$ifaceNil;o=0;if(j.$length>0){o=$sliceToArray(j);}else{o=new Uint8Array(0);}p=S(44,(i>>>0),o,(j.$length>>>0),(k>>>0),l,(m>>>0));q=p[2];if(!((q===0))){n=FY(q);}return n;};MM=function(i,j,k,l,m,n){var $ptr,i,j,k,l,m,n,o,p,q,r,s;o=0;p=$ifaceNil;q=S(9,i,j,(k>>>0),(l>>>0),(m>>>0),(n.$low>>>0));r=q[0];s=q[2];o=r;if(!((s===0))){p=FY(s);}return[o,p];};QW.methods=[{prop:"toWireFormat",name:"toWireFormat",pkg:"syscall",typ:$funcType([],[OV],false)}];QX.methods=[{prop:"sockaddr",name:"sockaddr",pkg:"syscall",typ:$funcType([],[$UnsafePointer,NO,$error],false)}];PU.methods=[{prop:"sockaddr",name:"sockaddr",pkg:"syscall",typ:$funcType([],[$UnsafePointer,NO,$error],false)}];QY.methods=[{prop:"Mmap",name:"Mmap",pkg:"",typ:$funcType([$Int,$Int64,$Int,$Int,$Int],[OV,$error],false)},{prop:"Munmap",name:"Munmap",pkg:"",typ:$funcType([OV],[$error],false)}];FU.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)},{prop:"Temporary",name:"Temporary",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Timeout",name:"Timeout",pkg:"",typ:$funcType([],[$Bool],false)}];RC.methods=[{prop:"sockaddr",name:"sockaddr",pkg:"syscall",typ:$funcType([],[$UnsafePointer,NO,$error],false)}];RD.methods=[{prop:"sockaddr",name:"sockaddr",pkg:"syscall",typ:$funcType([],[$UnsafePointer,NO,$error],false)}];RE.methods=[{prop:"sockaddr",name:"sockaddr",pkg:"syscall",typ:$funcType([],[$UnsafePointer,NO,$error],false)}];RF.methods=[{prop:"Unix",name:"Unix",pkg:"",typ:$funcType([],[$Int64,$Int64],false)},{prop:"Nano",name:"Nano",pkg:"",typ:$funcType([],[$Int64],false)}];BT.init("",[{prop:"Header",name:"Header",exported:true,typ:OC,tag:""},{prop:"Data",name:"Data",exported:true,typ:OE,tag:""}]);BW.init("",[{prop:"Header",name:"Header",exported:true,typ:OC,tag:""},{prop:"Data",name:"Data",exported:true,typ:OV,tag:""}]);BZ.init("",[{prop:"Attr",name:"Attr",exported:true,typ:OG,tag:""},{prop:"Value",name:"Value",exported:true,typ:OV,tag:""}]);DT.init("syscall",[{prop:"Protocol",name:"Protocol",exported:true,typ:$Uint16,tag:""},{prop:"Ifindex",name:"Ifindex",exported:true,typ:$Int,tag:""},{prop:"Hatype",name:"Hatype",exported:true,typ:$Uint16,tag:""},{prop:"Pkttype",name:"Pkttype",exported:true,typ:$Uint8,tag:""},{prop:"Halen",name:"Halen",exported:true,typ:$Uint8,tag:""},{prop:"Addr",name:"Addr",exported:true,typ:PO,tag:""},{prop:"raw",name:"raw",exported:false,typ:NK,tag:""}]);DU.init("syscall",[{prop:"Family",name:"Family",exported:true,typ:$Uint16,tag:""},{prop:"Pad",name:"Pad",exported:true,typ:$Uint16,tag:""},{prop:"Pid",name:"Pid",exported:true,typ:$Uint32,tag:""},{prop:"Groups",name:"Groups",exported:true,typ:$Uint32,tag:""},{prop:"raw",name:"raw",exported:false,typ:NL,tag:""}]);FT.init("syscall",[{prop:"Mutex",name:"",exported:true,typ:C.Mutex,tag:""},{prop:"active",name:"active",exported:false,typ:QZ,tag:""},{prop:"mmap",name:"mmap",exported:false,typ:RA,tag:""},{prop:"munmap",name:"munmap",exported:false,typ:RB,tag:""}]);GC.init([{prop:"sockaddr",name:"sockaddr",pkg:"syscall",typ:$funcType([],[$UnsafePointer,NO,$error],false)}]);GD.init("syscall",[{prop:"Port",name:"Port",exported:true,typ:$Int,tag:""},{prop:"Addr",name:"Addr",exported:true,typ:QJ,tag:""},{prop:"raw",name:"raw",exported:false,typ:NH,tag:""}]);GE.init("syscall",[{prop:"Port",name:"Port",exported:true,typ:$Int,tag:""},{prop:"ZoneId",name:"ZoneId",exported:true,typ:$Uint32,tag:""},{prop:"Addr",name:"Addr",exported:true,typ:PQ,tag:""},{prop:"raw",name:"raw",exported:false,typ:NI,tag:""}]);GF.init("syscall",[{prop:"Name",name:"Name",exported:true,typ:$String,tag:""},{prop:"raw",name:"raw",exported:false,typ:NJ,tag:""}]);MT.init("",[{prop:"Sec",name:"Sec",exported:true,typ:$Int64,tag:""},{prop:"Nsec",name:"Nsec",exported:true,typ:$Int64,tag:""}]);NC.init("",[{prop:"Dev",name:"Dev",exported:true,typ:$Uint64,tag:""},{prop:"Ino",name:"Ino",exported:true,typ:$Uint64,tag:""},{prop:"Nlink",name:"Nlink",exported:true,typ:$Uint64,tag:""},{prop:"Mode",name:"Mode",exported:true,typ:$Uint32,tag:""},{prop:"Uid",name:"Uid",exported:true,typ:$Uint32,tag:""},{prop:"Gid",name:"Gid",exported:true,typ:$Uint32,tag:""},{prop:"X__pad0",name:"X__pad0",exported:true,typ:$Int32,tag:""},{prop:"Rdev",name:"Rdev",exported:true,typ:$Uint64,tag:""},{prop:"Size",name:"Size",exported:true,typ:$Int64,tag:""},{prop:"Blksize",name:"Blksize",exported:true,typ:$Int64,tag:""},{prop:"Blocks",name:"Blocks",exported:true,typ:$Int64,tag:""},{prop:"Atim",name:"Atim",exported:true,typ:MT,tag:""},{prop:"Mtim",name:"Mtim",exported:true,typ:MT,tag:""},{prop:"Ctim",name:"Ctim",exported:true,typ:MT,tag:""},{prop:"X__unused",name:"X__unused",exported:true,typ:RI,tag:""}]);NH.init("",[{prop:"Family",name:"Family",exported:true,typ:$Uint16,tag:""},{prop:"Port",name:"Port",exported:true,typ:$Uint16,tag:""},{prop:"Addr",name:"Addr",exported:true,typ:QJ,tag:""},{prop:"Zero",name:"Zero",exported:true,typ:PO,tag:""}]);NI.init("",[{prop:"Family",name:"Family",exported:true,typ:$Uint16,tag:""},{prop:"Port",name:"Port",exported:true,typ:$Uint16,tag:""},{prop:"Flowinfo",name:"Flowinfo",exported:true,typ:$Uint32,tag:""},{prop:"Addr",name:"Addr",exported:true,typ:PQ,tag:""},{prop:"Scope_id",name:"Scope_id",exported:true,typ:$Uint32,tag:""}]);NJ.init("",[{prop:"Family",name:"Family",exported:true,typ:$Uint16,tag:""},{prop:"Path",name:"Path",exported:true,typ:QI,tag:""}]);NK.init("",[{prop:"Family",name:"Family",exported:true,typ:$Uint16,tag:""},{prop:"Protocol",name:"Protocol",exported:true,typ:$Uint16,tag:""},{prop:"Ifindex",name:"Ifindex",exported:true,typ:$Int32,tag:""},{prop:"Hatype",name:"Hatype",exported:true,typ:$Uint16,tag:""},{prop:"Pkttype",name:"Pkttype",exported:true,typ:$Uint8,tag:""},{prop:"Halen",name:"Halen",exported:true,typ:$Uint8,tag:""},{prop:"Addr",name:"Addr",exported:true,typ:PO,tag:""}]);NL.init("",[{prop:"Family",name:"Family",exported:true,typ:$Uint16,tag:""},{prop:"Pad",name:"Pad",exported:true,typ:$Uint16,tag:""},{prop:"Pid",name:"Pid",exported:true,typ:$Uint32,tag:""},{prop:"Groups",name:"Groups",exported:true,typ:$Uint32,tag:""}]);NM.init("",[{prop:"Family",name:"Family",exported:true,typ:$Uint16,tag:""},{prop:"Data",name:"Data",exported:true,typ:QK,tag:""}]);NN.init("",[{prop:"Addr",name:"Addr",exported:true,typ:NM,tag:""},{prop:"Pad",name:"Pad",exported:true,typ:QL,tag:""}]);OC.init("",[{prop:"Len",name:"Len",exported:true,typ:$Uint32,tag:""},{prop:"Type",name:"Type",exported:true,typ:$Uint16,tag:""},{prop:"Flags",name:"Flags",exported:true,typ:$Uint16,tag:""},{prop:"Seq",name:"Seq",exported:true,typ:$Uint32,tag:""},{prop:"Pid",name:"Pid",exported:true,typ:$Uint32,tag:""}]);OE.init("",[{prop:"Family",name:"Family",exported:true,typ:$Uint8,tag:""}]);OG.init("",[{prop:"Len",name:"Len",exported:true,typ:$Uint16,tag:""},{prop:"Type",name:"Type",exported:true,typ:$Uint16,tag:""}]);OH.init("",[{prop:"Family",name:"Family",exported:true,typ:$Uint8,tag:""},{prop:"X__ifi_pad",name:"X__ifi_pad",exported:true,typ:$Uint8,tag:""},{prop:"Type",name:"Type",exported:true,typ:$Uint16,tag:""},{prop:"Index",name:"Index",exported:true,typ:$Int32,tag:""},{prop:"Flags",name:"Flags",exported:true,typ:$Uint32,tag:""},{prop:"Change",name:"Change",exported:true,typ:$Uint32,tag:""}]);OI.init("",[{prop:"Family",name:"Family",exported:true,typ:$Uint8,tag:""},{prop:"Prefixlen",name:"Prefixlen",exported:true,typ:$Uint8,tag:""},{prop:"Flags",name:"Flags",exported:true,typ:$Uint8,tag:""},{prop:"Scope",name:"Scope",exported:true,typ:$Uint8,tag:""},{prop:"Index",name:"Index",exported:true,typ:$Uint32,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}F=OV.nil;N=null;AA=new C.Once.ptr(new C.Mutex.ptr(0,0),0);AB=new C.RWMutex.ptr(new C.Mutex.ptr(0,0),0,0,0,0);AC=false;$pkg.SocketDisableIPv6=false;GY=new $Int64(0,0);E=false;O=false;P=-1;AD=L();$pkg.Stdin=0;$pkg.Stdout=1;$pkg.Stderr=2;FV=new FU(11);FW=new FU(22);FX=new FU(2);HD=$toNativeArray($kindString,["","operation not permitted","no such file or directory","no such process","interrupted system call","input/output error","no such device or address","argument list too long","exec format error","bad file descriptor","no child processes","resource temporarily unavailable","cannot allocate memory","permission denied","bad address","block device required","device or resource busy","file exists","invalid cross-device link","no such device","not a directory","is a directory","invalid argument","too many open files in system","too many open files","inappropriate ioctl for device","text file busy","file too large","no space left on device","illegal seek","read-only file system","too many links","broken pipe","numerical argument out of domain","numerical result out of range","resource deadlock avoided","file name too long","no locks available","function not implemented","directory not empty","too many levels of symbolic links","","no message of desired type","identifier removed","channel number out of range","level 2 not synchronized","level 3 halted","level 3 reset","link number out of range","protocol driver not attached","no CSI structure available","level 2 halted","invalid exchange","invalid request descriptor","exchange full","no anode","invalid request code","invalid slot","","bad font file format","device not a stream","no data available","timer expired","out of streams resources","machine is not on the network","package not installed","object is remote","link has been severed","advertise error","srmount error","communication error on send","protocol error","multihop attempted","RFS specific error","bad message","value too large for defined data type","name not unique on network","file descriptor in bad state","remote address changed","can not access a needed shared library","accessing a corrupted shared library",".lib section in a.out corrupted","attempting to link in too many shared libraries","cannot exec a shared library directly","invalid or incomplete multibyte or wide character","interrupted system call should be restarted","streams pipe error","too many users","socket operation on non-socket","destination address required","message too long","protocol wrong type for socket","protocol not available","protocol not supported","socket type not supported","operation not supported","protocol family not supported","address family not supported by protocol","address already in use","cannot assign requested address","network is down","network is unreachable","network dropped connection on reset","software caused connection abort","connection reset by peer","no buffer space available","transport endpoint is already connected","transport endpoint is not connected","cannot send after transport endpoint shutdown","too many references: cannot splice","connection timed out","connection refused","host is down","no route to host","operation already in progress","operation now in progress","stale NFS file handle","structure needs cleaning","not a XENIX named type file","no XENIX semaphores available","is a named type file","remote I/O error","disk quota exceeded","no medium found","wrong medium type","operation canceled","required key not available","key has expired","key has been revoked","key was rejected by service","owner died","state not recoverable","operation not possible due to RF-kill"]);FJ=new FT.ptr(new C.Mutex.ptr(0,0),{},MM,KH);G();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["github.com/gopherjs/gopherjs/nosync"]=(function(){var $pkg={},$init,A,D,E,F,I,J,K,L,M;A=$pkg.Mutex=$newType(0,$kindStruct,"nosync.Mutex",true,"github.com/gopherjs/gopherjs/nosync",true,function(locked_){this.$val=this;if(arguments.length===0){this.locked=false;return;}this.locked=locked_;});D=$pkg.Once=$newType(0,$kindStruct,"nosync.Once",true,"github.com/gopherjs/gopherjs/nosync",true,function(doing_,done_){this.$val=this;if(arguments.length===0){this.doing=false;this.done=false;return;}this.doing=doing_;this.done=done_;});E=$pkg.Pool=$newType(0,$kindStruct,"nosync.Pool",true,"github.com/gopherjs/gopherjs/nosync",true,function(store_,New_){this.$val=this;if(arguments.length===0){this.store=K.nil;this.New=$throwNilPointerError;return;}this.store=store_;this.New=New_;});F=$ptrType(A);I=$funcType([],[],false);J=$ptrType(D);K=$sliceType($emptyInterface);L=$ptrType(E);M=$funcType([],[$emptyInterface],false);A.ptr.prototype.Lock=function(){var $ptr,a;a=this;if(a.locked){$panic(new $String("nosync: mutex is already locked"));}a.locked=true;};A.prototype.Lock=function(){return this.$val.Lock();};A.ptr.prototype.Unlock=function(){var $ptr,a;a=this;if(!a.locked){$panic(new $String("nosync: unlock of unlocked mutex"));}a.locked=false;};A.prototype.Unlock=function(){return this.$val.Unlock();};D.ptr.prototype.Do=function(a){var $ptr,a,b,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);b=[b];b[0]=this;if(b[0].done){$s=-1;return;}if(b[0].doing){$panic(new $String("nosync: Do called within f"));}b[0].doing=true;$deferred.push([(function(b){return function(){var $ptr;b[0].doing=false;b[0].done=true;};})(b),[]]);$r=a();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:D.ptr.prototype.Do};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};D.prototype.Do=function(a){return this.$val.Do(a);};E.ptr.prototype.Get=function(){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;if(a.store.$length===0){$s=1;continue;}$s=2;continue;case 1:if(!(a.New===$throwNilPointerError)){$s=3;continue;}$s=4;continue;case 3:b=a.New();$s=5;case 5:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=-1;return b;case 4:$s=-1;return $ifaceNil;case 2:e=(c=a.store,d=a.store.$length-1>>0,((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]));a.store=$subslice(a.store,0,(a.store.$length-1>>0));$s=-1;return e;}return;}if($f===undefined){$f={$blk:E.ptr.prototype.Get};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};E.prototype.Get=function(){return this.$val.Get();};E.ptr.prototype.Put=function(a){var $ptr,a,b;b=this;if($interfaceIsEqual(a,$ifaceNil)){return;}b.store=$append(b.store,a);};E.prototype.Put=function(a){return this.$val.Put(a);};F.methods=[{prop:"Lock",name:"Lock",pkg:"",typ:$funcType([],[],false)},{prop:"Unlock",name:"Unlock",pkg:"",typ:$funcType([],[],false)}];J.methods=[{prop:"Do",name:"Do",pkg:"",typ:$funcType([I],[],false)}];L.methods=[{prop:"Get",name:"Get",pkg:"",typ:$funcType([],[$emptyInterface],false)},{prop:"Put",name:"Put",pkg:"",typ:$funcType([$emptyInterface],[],false)}];A.init("github.com/gopherjs/gopherjs/nosync",[{prop:"locked",name:"locked",exported:false,typ:$Bool,tag:""}]);D.init("github.com/gopherjs/gopherjs/nosync",[{prop:"doing",name:"doing",exported:false,typ:$Bool,tag:""},{prop:"done",name:"done",exported:false,typ:$Bool,tag:""}]);E.init("github.com/gopherjs/gopherjs/nosync",[{prop:"store",name:"store",exported:false,typ:K,tag:""},{prop:"New",name:"New",exported:true,typ:M,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["time"]=(function(){var $pkg={},$init,C,B,E,A,D,AF,BM,BN,BP,BT,CH,CI,CJ,DC,DD,DE,DF,DH,DI,DJ,DK,DL,DP,DT,DX,R,U,V,W,X,AB,AE,AR,AU,BO,BQ,BZ,CK,DA,CL,DB,CM,CO,CS,k,l,F,H,I,J,Q,S,T,Y,Z,AA,AC,AD,AG,AH,AI,AJ,AK,AL,AN,AO,AP,AQ,AS,AT,AV,BR,BS,BU,BV,BY,CA,CB,CC,CD,CE,CF,CG,CN;C=$packages["errors"];B=$packages["github.com/gopherjs/gopherjs/js"];E=$packages["github.com/gopherjs/gopherjs/nosync"];A=$packages["runtime"];D=$packages["syscall"];AF=$pkg.ParseError=$newType(0,$kindStruct,"time.ParseError",true,"time",true,function(Layout_,Value_,LayoutElem_,ValueElem_,Message_){this.$val=this;if(arguments.length===0){this.Layout="";this.Value="";this.LayoutElem="";this.ValueElem="";this.Message="";return;}this.Layout=Layout_;this.Value=Value_;this.LayoutElem=LayoutElem_;this.ValueElem=ValueElem_;this.Message=Message_;});BM=$pkg.Time=$newType(0,$kindStruct,"time.Time",true,"time",true,function(sec_,nsec_,loc_){this.$val=this;if(arguments.length===0){this.sec=new $Int64(0,0);this.nsec=0;this.loc=DL.nil;return;}this.sec=sec_;this.nsec=nsec_;this.loc=loc_;});BN=$pkg.Month=$newType(4,$kindInt,"time.Month",true,"time",true,null);BP=$pkg.Weekday=$newType(4,$kindInt,"time.Weekday",true,"time",true,null);BT=$pkg.Duration=$newType(8,$kindInt64,"time.Duration",true,"time",true,null);CH=$pkg.Location=$newType(0,$kindStruct,"time.Location",true,"time",true,function(name_,zone_,tx_,cacheStart_,cacheEnd_,cacheZone_){this.$val=this;if(arguments.length===0){this.name="";this.zone=DC.nil;this.tx=DD.nil;this.cacheStart=new $Int64(0,0);this.cacheEnd=new $Int64(0,0);this.cacheZone=DE.nil;return;}this.name=name_;this.zone=zone_;this.tx=tx_;this.cacheStart=cacheStart_;this.cacheEnd=cacheEnd_;this.cacheZone=cacheZone_;});CI=$pkg.zone=$newType(0,$kindStruct,"time.zone",true,"time",false,function(name_,offset_,isDST_){this.$val=this;if(arguments.length===0){this.name="";this.offset=0;this.isDST=false;return;}this.name=name_;this.offset=offset_;this.isDST=isDST_;});CJ=$pkg.zoneTrans=$newType(0,$kindStruct,"time.zoneTrans",true,"time",false,function(when_,index_,isstd_,isutc_){this.$val=this;if(arguments.length===0){this.when=new $Int64(0,0);this.index=0;this.isstd=false;this.isutc=false;return;}this.when=when_;this.index=index_;this.isstd=isstd_;this.isutc=isutc_;});DC=$sliceType(CI);DD=$sliceType(CJ);DE=$ptrType(CI);DF=$sliceType($String);DH=$arrayType($Uint8,20);DI=$sliceType($Uint8);DJ=$arrayType($Uint8,9);DK=$arrayType($Uint8,64);DL=$ptrType(CH);DP=$arrayType($Uint8,32);DT=$ptrType(AF);DX=$ptrType(BM);F=function(){var $ptr;$unused(CC(new $Int64(0,0),new $Int64(0,0)));};H=function(){var $ptr,m,n,o,p;m=new($global.Date)();n=$internalize(m,$String);o=Q(n,40);p=Q(n,41);if((o===-1)||(p===-1)){CL.name="UTC";return;}CL.name=$substring(n,(o+1>>0),p);CL.zone=new DC([new CI.ptr(CL.name,$imul(($parseInt(m.getTimezoneOffset())>>0),-60),false)]);};I=function(){var $ptr;return $mul64($internalize(new($global.Date)().getTime(),$Int64),new $Int64(0,1000000));};J=function(){var $ptr,m,n,o,p,q,r;m=new $Int64(0,0);n=0;o=I();p=$div64(o,new $Int64(0,1000000000),false);q=((r=$div64(o,new $Int64(0,1000000000),true),r.$low+((r.$high>>31)*4294967296))>>0);m=p;n=q;return[m,n];};Q=function(m,n){var $ptr,m,n;return $parseInt(m.indexOf($global.String.fromCharCode(n)))>>0;};S=function(m){var $ptr,m,n;if(m.length===0){return false;}n=m.charCodeAt(0);return 97<=n&&n<=122;};T=function(m){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,cu,cv,cw,cx,cy,cz,da,db,dc,dd,de,df,m,n,o,p,q,r,s,t,u,v,w,x,y,z;n="";o=0;p="";q=0;while(true){if(!(q<m.length)){break;}r=(m.charCodeAt(q)>>0);s=r;if(s===(74)){if(m.length>=(q+3>>0)&&$substring(m,q,(q+3>>0))==="Jan"){if(m.length>=(q+7>>0)&&$substring(m,q,(q+7>>0))==="January"){t=$substring(m,0,q);u=257;v=$substring(m,(q+7>>0));n=t;o=u;p=v;return[n,o,p];}if(!S($substring(m,(q+3>>0)))){w=$substring(m,0,q);x=258;y=$substring(m,(q+3>>0));n=w;o=x;p=y;return[n,o,p];}}}else if(s===(77)){if(m.length>=(q+3>>0)){if($substring(m,q,(q+3>>0))==="Mon"){if(m.length>=(q+6>>0)&&$substring(m,q,(q+6>>0))==="Monday"){z=$substring(m,0,q);aa=261;ab=$substring(m,(q+6>>0));n=z;o=aa;p=ab;return[n,o,p];}if(!S($substring(m,(q+3>>0)))){ac=$substring(m,0,q);ad=262;ae=$substring(m,(q+3>>0));n=ac;o=ad;p=ae;return[n,o,p];}}if($substring(m,q,(q+3>>0))==="MST"){af=$substring(m,0,q);ag=21;ah=$substring(m,(q+3>>0));n=af;o=ag;p=ah;return[n,o,p];}}}else if(s===(48)){if(m.length>=(q+2>>0)&&49<=m.charCodeAt((q+1>>0))&&m.charCodeAt((q+1>>0))<=54){ai=$substring(m,0,q);aj=(ak=m.charCodeAt((q+1>>0))-49<<24>>>24,((ak<0||ak>=R.length)?($throwRuntimeError("index out of range"),undefined):R[ak]));al=$substring(m,(q+2>>0));n=ai;o=aj;p=al;return[n,o,p];}}else if(s===(49)){if(m.length>=(q+2>>0)&&(m.charCodeAt((q+1>>0))===53)){am=$substring(m,0,q);an=522;ao=$substring(m,(q+2>>0));n=am;o=an;p=ao;return[n,o,p];}ap=$substring(m,0,q);aq=259;ar=$substring(m,(q+1>>0));n=ap;o=aq;p=ar;return[n,o,p];}else if(s===(50)){if(m.length>=(q+4>>0)&&$substring(m,q,(q+4>>0))==="2006"){as=$substring(m,0,q);at=273;au=$substring(m,(q+4>>0));n=as;o=at;p=au;return[n,o,p];}av=$substring(m,0,q);aw=263;ax=$substring(m,(q+1>>0));n=av;o=aw;p=ax;return[n,o,p];}else if(s===(95)){if(m.length>=(q+2>>0)&&(m.charCodeAt((q+1>>0))===50)){if(m.length>=(q+5>>0)&&$substring(m,(q+1>>0),(q+5>>0))==="2006"){ay=$substring(m,0,(q+1>>0));az=273;ba=$substring(m,(q+5>>0));n=ay;o=az;p=ba;return[n,o,p];}bb=$substring(m,0,q);bc=264;bd=$substring(m,(q+2>>0));n=bb;o=bc;p=bd;return[n,o,p];}}else if(s===(51)){be=$substring(m,0,q);bf=523;bg=$substring(m,(q+1>>0));n=be;o=bf;p=bg;return[n,o,p];}else if(s===(52)){bh=$substring(m,0,q);bi=525;bj=$substring(m,(q+1>>0));n=bh;o=bi;p=bj;return[n,o,p];}else if(s===(53)){bk=$substring(m,0,q);bl=527;bm=$substring(m,(q+1>>0));n=bk;o=bl;p=bm;return[n,o,p];}else if(s===(80)){if(m.length>=(q+2>>0)&&(m.charCodeAt((q+1>>0))===77)){bn=$substring(m,0,q);bo=531;bp=$substring(m,(q+2>>0));n=bn;o=bo;p=bp;return[n,o,p];}}else if(s===(112)){if(m.length>=(q+2>>0)&&(m.charCodeAt((q+1>>0))===109)){bq=$substring(m,0,q);br=532;bs=$substring(m,(q+2>>0));n=bq;o=br;p=bs;return[n,o,p];}}else if(s===(45)){if(m.length>=(q+7>>0)&&$substring(m,q,(q+7>>0))==="-070000"){bt=$substring(m,0,q);bu=28;bv=$substring(m,(q+7>>0));n=bt;o=bu;p=bv;return[n,o,p];}if(m.length>=(q+9>>0)&&$substring(m,q,(q+9>>0))==="-07:00:00"){bw=$substring(m,0,q);bx=31;by=$substring(m,(q+9>>0));n=bw;o=bx;p=by;return[n,o,p];}if(m.length>=(q+5>>0)&&$substring(m,q,(q+5>>0))==="-0700"){bz=$substring(m,0,q);ca=27;cb=$substring(m,(q+5>>0));n=bz;o=ca;p=cb;return[n,o,p];}if(m.length>=(q+6>>0)&&$substring(m,q,(q+6>>0))==="-07:00"){cc=$substring(m,0,q);cd=30;ce=$substring(m,(q+6>>0));n=cc;o=cd;p=ce;return[n,o,p];}if(m.length>=(q+3>>0)&&$substring(m,q,(q+3>>0))==="-07"){cf=$substring(m,0,q);cg=29;ch=$substring(m,(q+3>>0));n=cf;o=cg;p=ch;return[n,o,p];}}else if(s===(90)){if(m.length>=(q+7>>0)&&$substring(m,q,(q+7>>0))==="Z070000"){ci=$substring(m,0,q);cj=23;ck=$substring(m,(q+7>>0));n=ci;o=cj;p=ck;return[n,o,p];}if(m.length>=(q+9>>0)&&$substring(m,q,(q+9>>0))==="Z07:00:00"){cl=$substring(m,0,q);cm=26;cn=$substring(m,(q+9>>0));n=cl;o=cm;p=cn;return[n,o,p];}if(m.length>=(q+5>>0)&&$substring(m,q,(q+5>>0))==="Z0700"){co=$substring(m,0,q);cp=22;cq=$substring(m,(q+5>>0));n=co;o=cp;p=cq;return[n,o,p];}if(m.length>=(q+6>>0)&&$substring(m,q,(q+6>>0))==="Z07:00"){cr=$substring(m,0,q);cs=25;ct=$substring(m,(q+6>>0));n=cr;o=cs;p=ct;return[n,o,p];}if(m.length>=(q+3>>0)&&$substring(m,q,(q+3>>0))==="Z07"){cu=$substring(m,0,q);cv=24;cw=$substring(m,(q+3>>0));n=cu;o=cv;p=cw;return[n,o,p];}}else if(s===(46)){if((q+1>>0)<m.length&&((m.charCodeAt((q+1>>0))===48)||(m.charCodeAt((q+1>>0))===57))){cx=m.charCodeAt((q+1>>0));cy=q+1>>0;while(true){if(!(cy<m.length&&(m.charCodeAt(cy)===cx))){break;}cy=cy+(1)>>0;}if(!AH(m,cy)){cz=32;if(m.charCodeAt((q+1>>0))===57){cz=33;}cz=cz|((((cy-((q+1>>0))>>0))<<16>>0));da=$substring(m,0,q);db=cz;dc=$substring(m,cy);n=da;o=db;p=dc;return[n,o,p];}}}q=q+(1)>>0;}dd=m;de=0;df="";n=dd;o=de;p=df;return[n,o,p];};Y=function(m,n){var $ptr,m,n,o,p,q;o=0;while(true){if(!(o<m.length)){break;}p=m.charCodeAt(o);q=n.charCodeAt(o);if(!((p===q))){p=(p|(32))>>>0;q=(q|(32))>>>0;if(!((p===q))||p<97||p>122){return false;}}o=o+(1)>>0;}return true;};Z=function(m,n){var $ptr,m,n,o,p,q,r;o=m;p=0;while(true){if(!(p<o.$length)){break;}q=p;r=((p<0||p>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+p]);if(n.length>=r.length&&Y($substring(n,0,r.length),r)){return[q,$substring(n,r.length),$ifaceNil];}p++;}return[-1,n,AE];};AA=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,u;p=(n>>>0);if(n<0){m=$append(m,45);p=(-n>>>0);}q=DH.zero();r=20;while(true){if(!(p>=10)){break;}r=r-(1)>>0;t=(s=p/10,(s===s&&s!==1/0&&s!==-1/0)?s>>>0:$throwRuntimeError("integer divide by zero"));((r<0||r>=q.length)?($throwRuntimeError("index out of range"),undefined):q[r]=(((48+p>>>0)-(t*10>>>0)>>>0)<<24>>>24));p=t;}r=r-(1)>>0;((r<0||r>=q.length)?($throwRuntimeError("index out of range"),undefined):q[r]=((48+p>>>0)<<24>>>24));u=20-r>>0;while(true){if(!(u<o)){break;}m=$append(m,48);u=u+(1)>>0;}return $appendSlice(m,$subslice(new DI(q),r));};AC=function(m){var $ptr,m,n,o,p,q,r,s,t,u,v,w;n=0;o=$ifaceNil;p=false;if(!(m==="")&&((m.charCodeAt(0)===45)||(m.charCodeAt(0)===43))){p=m.charCodeAt(0)===45;m=$substring(m,1);}q=AS(m);r=q[0];s=q[1];o=q[2];n=((r.$low+((r.$high>>31)*4294967296))>>0);if(!($interfaceIsEqual(o,$ifaceNil))||!(s==="")){t=0;u=AB;n=t;o=u;return[n,o];}if(p){n=-n;}v=n;w=$ifaceNil;n=v;o=w;return[n,o];};AD=function(m,n,o,p){var $ptr,m,n,o,p,q,r,s,t,u,v;q=n;r=DJ.zero();s=9;while(true){if(!(s>0)){break;}s=s-(1)>>0;((s<0||s>=r.length)?($throwRuntimeError("index out of range"),undefined):r[s]=(((t=q%10,t===t?t:$throwRuntimeError("integer divide by zero"))+48>>>0)<<24>>>24));q=(u=q/(10),(u===u&&u!==1/0&&u!==-1/0)?u>>>0:$throwRuntimeError("integer divide by zero"));}if(o>9){o=9;}if(p){while(true){if(!(o>0&&((v=o-1>>0,((v<0||v>=r.length)?($throwRuntimeError("index out of range"),undefined):r[v]))===48))){break;}o=o-(1)>>0;}if(o===0){return m;}}m=$append(m,46);return $appendSlice(m,$subslice(new DI(r),0,o));};BM.ptr.prototype.String=function(){var $ptr,m,n,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;n=$clone(m,BM).Format("2006-01-02 15:04:05.999999999 -0700 MST");$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$s=-1;return n;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.String};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.String=function(){return this.$val.String();};BM.ptr.prototype.Format=function(m){var $ptr,m,n,o,p,q,r,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;o=DI.nil;p=m.length+10>>0;if(p<64){q=DK.zero();o=$subslice(new DI(q),0,0);}else{o=$makeSlice(DI,0,p);}r=$clone(n,BM).AppendFormat(o,m);$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}o=r;$s=-1;return $bytesToString(o);}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.Format};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.Format=function(m){return this.$val.Format(m);};BM.ptr.prototype.AppendFormat=function(m,n){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;q=$clone(o,BM).locabs();$s=1;case 1:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;r=p[0];s=p[1];t=p[2];u=-1;v=0;w=0;x=-1;y=0;z=0;while(true){if(!(!(n===""))){break;}aa=T(n);ab=aa[0];ac=aa[1];ad=aa[2];if(!(ab==="")){m=$appendSlice(m,ab);}if(ac===0){break;}n=ad;if(u<0&&!(((ac&256)===0))){ae=BY(t,true);u=ae[0];v=ae[1];w=ae[2];}if(x<0&&!(((ac&512)===0))){af=BS(t);x=af[0];y=af[1];z=af[2];}switch(0){default:ag=ac&65535;if(ag===(274)){ah=u;if(ah<0){ah=-ah;}m=AA(m,(ai=ah%100,ai===ai?ai:$throwRuntimeError("integer divide by zero")),2);}else if(ag===(273)){m=AA(m,u,4);}else if(ag===(258)){m=$appendSlice(m,$substring(new BN(v).String(),0,3));}else if(ag===(257)){aj=new BN(v).String();m=$appendSlice(m,aj);}else if(ag===(259)){m=AA(m,(v>>0),0);}else if(ag===(260)){m=AA(m,(v>>0),2);}else if(ag===(262)){m=$appendSlice(m,$substring(new BP(BR(t)).String(),0,3));}else if(ag===(261)){ak=new BP(BR(t)).String();m=$appendSlice(m,ak);}else if(ag===(263)){m=AA(m,w,0);}else if(ag===(264)){if(w<10){m=$append(m,32);}m=AA(m,w,0);}else if(ag===(265)){m=AA(m,w,2);}else if(ag===(522)){m=AA(m,x,2);}else if(ag===(523)){am=(al=x%12,al===al?al:$throwRuntimeError("integer divide by zero"));if(am===0){am=12;}m=AA(m,am,0);}else if(ag===(524)){ao=(an=x%12,an===an?an:$throwRuntimeError("integer divide by zero"));if(ao===0){ao=12;}m=AA(m,ao,2);}else if(ag===(525)){m=AA(m,y,0);}else if(ag===(526)){m=AA(m,y,2);}else if(ag===(527)){m=AA(m,z,0);}else if(ag===(528)){m=AA(m,z,2);}else if(ag===(531)){if(x>=12){m=$appendSlice(m,"PM");}else{m=$appendSlice(m,"AM");}}else if(ag===(532)){if(x>=12){m=$appendSlice(m,"pm");}else{m=$appendSlice(m,"am");}}else if((ag===(22))||(ag===(25))||(ag===(23))||(ag===(24))||(ag===(26))||(ag===(27))||(ag===(30))||(ag===(28))||(ag===(29))||(ag===(31))){if((s===0)&&((ac===22)||(ac===25)||(ac===23)||(ac===24)||(ac===26))){m=$append(m,90);break;}aq=(ap=s/60,(ap===ap&&ap!==1/0&&ap!==-1/0)?ap>>0:$throwRuntimeError("integer divide by zero"));ar=s;if(aq<0){m=$append(m,45);aq=-aq;ar=-ar;}else{m=$append(m,43);}m=AA(m,(as=aq/60,(as===as&&as!==1/0&&as!==-1/0)?as>>0:$throwRuntimeError("integer divide by zero")),2);if((ac===25)||(ac===30)||(ac===26)||(ac===31)){m=$append(m,58);}if(!((ac===29))&&!((ac===24))){m=AA(m,(at=aq%60,at===at?at:$throwRuntimeError("integer divide by zero")),2);}if((ac===23)||(ac===28)||(ac===31)||(ac===26)){if((ac===31)||(ac===26)){m=$append(m,58);}m=AA(m,(au=ar%60,au===au?au:$throwRuntimeError("integer divide by zero")),2);}}else if(ag===(21)){if(!(r==="")){m=$appendSlice(m,r);break;}aw=(av=s/60,(av===av&&av!==1/0&&av!==-1/0)?av>>0:$throwRuntimeError("integer divide by zero"));if(aw<0){m=$append(m,45);aw=-aw;}else{m=$append(m,43);}m=AA(m,(ax=aw/60,(ax===ax&&ax!==1/0&&ax!==-1/0)?ax>>0:$throwRuntimeError("integer divide by zero")),2);m=AA(m,(ay=aw%60,ay===ay?ay:$throwRuntimeError("integer divide by zero")),2);}else if((ag===(32))||(ag===(33))){m=AD(m,($clone(o,BM).Nanosecond()>>>0),ac>>16>>0,(ac&65535)===33);}}}$s=-1;return m;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.AppendFormat};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.AppendFormat=function(m,n){return this.$val.AppendFormat(m,n);};AG=function(m){var $ptr,m;return"\""+m+"\"";};AF.ptr.prototype.Error=function(){var $ptr,m;m=this;if(m.Message===""){return"parsing time "+AG(m.Value)+" as "+AG(m.Layout)+": cannot parse "+AG(m.ValueElem)+" as "+AG(m.LayoutElem);}return"parsing time "+AG(m.Value)+m.Message;};AF.prototype.Error=function(){return this.$val.Error();};AH=function(m,n){var $ptr,m,n,o;if(m.length<=n){return false;}o=m.charCodeAt(n);return 48<=o&&o<=57;};AI=function(m,n){var $ptr,m,n;if(!AH(m,0)){return[0,m,AE];}if(!AH(m,1)){if(n){return[0,m,AE];}return[((m.charCodeAt(0)-48<<24>>>24)>>0),$substring(m,1),$ifaceNil];}return[($imul(((m.charCodeAt(0)-48<<24>>>24)>>0),10))+((m.charCodeAt(1)-48<<24>>>24)>>0)>>0,$substring(m,2),$ifaceNil];};AJ=function(m){var $ptr,m;while(true){if(!(m.length>0&&(m.charCodeAt(0)===32))){break;}m=$substring(m,1);}return m;};AK=function(m,n){var $ptr,m,n;while(true){if(!(n.length>0)){break;}if(n.charCodeAt(0)===32){if(m.length>0&&!((m.charCodeAt(0)===32))){return[m,AE];}n=AJ(n);m=AJ(m);continue;}if((m.length===0)||!((m.charCodeAt(0)===n.charCodeAt(0)))){return[m,AE];}n=$substring(n,1);m=$substring(m,1);}return[m,$ifaceNil];};AL=function(m,n){var $ptr,m,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=AN(m,n,$pkg.UTC,$pkg.Local);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$s=-1;return o;}return;}if($f===undefined){$f={$blk:AL};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Parse=AL;AN=function(m,n,o,p){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,cu,cv,cw,cx,cy,cz,da,db,dc,dd,de,df,dg,dh,di,dj,dk,dl,dm,dn,dp,dq,dr,ds,dt,du,dv,dw,dx,dy,dz,ea,eb,ec,ed,ee,ef,eg,eh,ei,ej,ek,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;bf=$f.bf;bg=$f.bg;bh=$f.bh;bi=$f.bi;bj=$f.bj;bk=$f.bk;bl=$f.bl;bm=$f.bm;bn=$f.bn;bo=$f.bo;bp=$f.bp;bq=$f.bq;br=$f.br;bs=$f.bs;bt=$f.bt;bu=$f.bu;bv=$f.bv;bw=$f.bw;bx=$f.bx;by=$f.by;bz=$f.bz;ca=$f.ca;cb=$f.cb;cc=$f.cc;cd=$f.cd;ce=$f.ce;cf=$f.cf;cg=$f.cg;ch=$f.ch;ci=$f.ci;cj=$f.cj;ck=$f.ck;cl=$f.cl;cm=$f.cm;cn=$f.cn;co=$f.co;cp=$f.cp;cq=$f.cq;cr=$f.cr;cs=$f.cs;ct=$f.ct;cu=$f.cu;cv=$f.cv;cw=$f.cw;cx=$f.cx;cy=$f.cy;cz=$f.cz;da=$f.da;db=$f.db;dc=$f.dc;dd=$f.dd;de=$f.de;df=$f.df;dg=$f.dg;dh=$f.dh;di=$f.di;dj=$f.dj;dk=$f.dk;dl=$f.dl;dm=$f.dm;dn=$f.dn;dp=$f.dp;dq=$f.dq;dr=$f.dr;ds=$f.ds;dt=$f.dt;du=$f.du;dv=$f.dv;dw=$f.dw;dx=$f.dx;dy=$f.dy;dz=$f.dz;ea=$f.ea;eb=$f.eb;ec=$f.ec;ed=$f.ed;ee=$f.ee;ef=$f.ef;eg=$f.eg;eh=$f.eh;ei=$f.ei;ej=$f.ej;ek=$f.ek;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=m;r=n;s=q;t=r;u="";v=false;w=false;x=0;y=1;z=1;aa=0;ab=0;ac=0;ad=0;ae=DL.nil;af=-1;ag="";while(true){ah=$ifaceNil;ai=T(m);aj=ai[0];ak=ai[1];al=ai[2];am=$substring(m,aj.length,(m.length-al.length>>0));an=AK(n,aj);n=an[0];ah=an[1];if(!($interfaceIsEqual(ah,$ifaceNil))){$s=-1;return[new BM.ptr(new $Int64(0,0),0,DL.nil),new AF.ptr(s,t,aj,n,"")];}if(ak===0){if(!((n.length===0))){$s=-1;return[new BM.ptr(new $Int64(0,0),0,DL.nil),new AF.ptr(s,t,"",n,": extra text: "+n)];}break;}m=al;ao="";switch(0){default:ap=ak&65535;if(ap===(274)){if(n.length<2){ah=AE;break;}aq=$substring(n,0,2);ar=$substring(n,2);ao=aq;n=ar;as=AC(ao);x=as[0];ah=as[1];if(x>=69){x=x+(1900)>>0;}else{x=x+(2000)>>0;}}else if(ap===(273)){if(n.length<4||!AH(n,0)){ah=AE;break;}at=$substring(n,0,4);au=$substring(n,4);ao=at;n=au;av=AC(ao);x=av[0];ah=av[1];}else if(ap===(258)){aw=Z(W,n);y=aw[0];n=aw[1];ah=aw[2];}else if(ap===(257)){ax=Z(X,n);y=ax[0];n=ax[1];ah=ax[2];}else if((ap===(259))||(ap===(260))){ay=AI(n,ak===260);y=ay[0];n=ay[1];ah=ay[2];if(y<=0||12<y){u="month";}}else if(ap===(262)){az=Z(V,n);n=az[1];ah=az[2];}else if(ap===(261)){ba=Z(U,n);n=ba[1];ah=ba[2];}else if((ap===(263))||(ap===(264))||(ap===(265))){if((ak===264)&&n.length>0&&(n.charCodeAt(0)===32)){n=$substring(n,1);}bb=AI(n,ak===265);z=bb[0];n=bb[1];ah=bb[2];if(z<0){u="day";}}else if(ap===(522)){bc=AI(n,false);aa=bc[0];n=bc[1];ah=bc[2];if(aa<0||24<=aa){u="hour";}}else if((ap===(523))||(ap===(524))){bd=AI(n,ak===524);aa=bd[0];n=bd[1];ah=bd[2];if(aa<0||12<aa){u="hour";}}else if((ap===(525))||(ap===(526))){be=AI(n,ak===526);ab=be[0];n=be[1];ah=be[2];if(ab<0||60<=ab){u="minute";}}else if((ap===(527))||(ap===(528))){bf=AI(n,ak===528);ac=bf[0];n=bf[1];ah=bf[2];if(ac<0||60<=ac){u="second";break;}if(n.length>=2&&(n.charCodeAt(0)===46)&&AH(n,1)){bg=T(m);ak=bg[1];ak=ak&(65535);if((ak===32)||(ak===33)){break;}bh=2;while(true){if(!(bh<n.length&&AH(n,bh))){break;}bh=bh+(1)>>0;}bi=AQ(n,bh);ad=bi[0];u=bi[1];ah=bi[2];n=$substring(n,bh);}}else if(ap===(531)){if(n.length<2){ah=AE;break;}bj=$substring(n,0,2);bk=$substring(n,2);ao=bj;n=bk;bl=ao;if(bl===("PM")){w=true;}else if(bl===("AM")){v=true;}else{ah=AE;}}else if(ap===(532)){if(n.length<2){ah=AE;break;}bm=$substring(n,0,2);bn=$substring(n,2);ao=bm;n=bn;bo=ao;if(bo===("pm")){w=true;}else if(bo===("am")){v=true;}else{ah=AE;}}else if((ap===(22))||(ap===(25))||(ap===(23))||(ap===(24))||(ap===(26))||(ap===(27))||(ap===(29))||(ap===(30))||(ap===(28))||(ap===(31))){if(((ak===22)||(ak===24)||(ak===25))&&n.length>=1&&(n.charCodeAt(0)===90)){n=$substring(n,1);ae=$pkg.UTC;break;}bp="";bq="";br="";bs="";bt=bp;bu=bq;bv=br;bw=bs;if((ak===25)||(ak===30)){if(n.length<6){ah=AE;break;}if(!((n.charCodeAt(3)===58))){ah=AE;break;}bx=$substring(n,0,1);by=$substring(n,1,3);bz=$substring(n,4,6);ca="00";cb=$substring(n,6);bt=bx;bu=by;bv=bz;bw=ca;n=cb;}else if((ak===29)||(ak===24)){if(n.length<3){ah=AE;break;}cc=$substring(n,0,1);cd=$substring(n,1,3);ce="00";cf="00";cg=$substring(n,3);bt=cc;bu=cd;bv=ce;bw=cf;n=cg;}else if((ak===26)||(ak===31)){if(n.length<9){ah=AE;break;}if(!((n.charCodeAt(3)===58))||!((n.charCodeAt(6)===58))){ah=AE;break;}ch=$substring(n,0,1);ci=$substring(n,1,3);cj=$substring(n,4,6);ck=$substring(n,7,9);cl=$substring(n,9);bt=ch;bu=ci;bv=cj;bw=ck;n=cl;}else if((ak===23)||(ak===28)){if(n.length<7){ah=AE;break;}cm=$substring(n,0,1);cn=$substring(n,1,3);co=$substring(n,3,5);cp=$substring(n,5,7);cq=$substring(n,7);bt=cm;bu=cn;bv=co;bw=cp;n=cq;}else{if(n.length<5){ah=AE;break;}cr=$substring(n,0,1);cs=$substring(n,1,3);ct=$substring(n,3,5);cu="00";cv=$substring(n,5);bt=cr;bu=cs;bv=ct;bw=cu;n=cv;}cw=0;cx=0;cy=0;cz=cw;da=cx;db=cy;dc=AC(bu);cz=dc[0];ah=dc[1];if($interfaceIsEqual(ah,$ifaceNil)){dd=AC(bv);da=dd[0];ah=dd[1];}if($interfaceIsEqual(ah,$ifaceNil)){de=AC(bw);db=de[0];ah=de[1];}af=($imul(((($imul(cz,60))+da>>0)),60))+db>>0;df=bt.charCodeAt(0);if(df===(43)){}else if(df===(45)){af=-af;}else{ah=AE;}}else if(ap===(21)){if(n.length>=3&&$substring(n,0,3)==="UTC"){ae=$pkg.UTC;n=$substring(n,3);break;}dg=AO(n);dh=dg[0];di=dg[1];if(!di){ah=AE;break;}dj=$substring(n,0,dh);dk=$substring(n,dh);ag=dj;n=dk;}else if(ap===(32)){dl=1+((ak>>16>>0))>>0;if(n.length<dl){ah=AE;break;}dm=AQ(n,dl);ad=dm[0];u=dm[1];ah=dm[2];n=$substring(n,dl);}else if(ap===(33)){if(n.length<2||!((n.charCodeAt(0)===46))||n.charCodeAt(1)<48||57<n.charCodeAt(1)){break;}dn=0;while(true){if(!(dn<9&&(dn+1>>0)<n.length&&48<=n.charCodeAt((dn+1>>0))&&n.charCodeAt((dn+1>>0))<=57)){break;}dn=dn+(1)>>0;}dp=AQ(n,1+dn>>0);ad=dp[0];u=dp[1];ah=dp[2];n=$substring(n,(1+dn>>0));}}if(!(u==="")){$s=-1;return[new BM.ptr(new $Int64(0,0),0,DL.nil),new AF.ptr(s,t,am,n,": "+u+" out of range")];}if(!($interfaceIsEqual(ah,$ifaceNil))){$s=-1;return[new BM.ptr(new $Int64(0,0),0,DL.nil),new AF.ptr(s,t,am,n,"")];}}if(w&&aa<12){aa=aa+(12)>>0;}else if(v&&(aa===12)){aa=0;}if(z<1||z>CA((y>>0),x)){$s=-1;return[new BM.ptr(new $Int64(0,0),0,DL.nil),new AF.ptr(s,t,"",n,": day out of range")];}if(!(ae===DL.nil)){$s=1;continue;}$s=2;continue;case 1:dq=CF(x,(y>>0),z,aa,ab,ac,ad,ae);$s=3;case 3:if($c){$c=false;dq=dq.$blk();}if(dq&&dq.$blk!==undefined){break s;}$s=-1;return[dq,$ifaceNil];case 2:if(!((af===-1))){$s=4;continue;}$s=5;continue;case 4:dr=CF(x,(y>>0),z,aa,ab,ac,ad,$pkg.UTC);$s=6;case 6:if($c){$c=false;dr=dr.$blk();}if(dr&&dr.$blk!==undefined){break s;}ds=$clone(dr,BM);ds.sec=(dt=ds.sec,du=new $Int64(0,af),new $Int64(dt.$high-du.$high,dt.$low-du.$low));dx=p.lookup((dw=ds.sec,new $Int64(dw.$high+-15,dw.$low+2288912640)));$s=7;case 7:if($c){$c=false;dx=dx.$blk();}if(dx&&dx.$blk!==undefined){break s;}dv=dx;dy=dv[0];dz=dv[1];if((dz===af)&&(ag===""||dy===ag)){ds.setLoc(p);$s=-1;return[ds,$ifaceNil];}ds.setLoc(CN(ag,af));$s=-1;return[ds,$ifaceNil];case 5:if(!(ag==="")){$s=8;continue;}$s=9;continue;case 8:ea=CF(x,(y>>0),z,aa,ab,ac,ad,$pkg.UTC);$s=10;case 10:if($c){$c=false;ea=ea.$blk();}if(ea&&ea.$blk!==undefined){break s;}eb=$clone(ea,BM);ee=p.lookupName(ag,(ed=eb.sec,new $Int64(ed.$high+-15,ed.$low+2288912640)));$s=11;case 11:if($c){$c=false;ee=ee.$blk();}if(ee&&ee.$blk!==undefined){break s;}ec=ee;ef=ec[0];eg=ec[2];if(eg){eb.sec=(eh=eb.sec,ei=new $Int64(0,ef),new $Int64(eh.$high-ei.$high,eh.$low-ei.$low));eb.setLoc(p);$s=-1;return[eb,$ifaceNil];}if(ag.length>3&&$substring(ag,0,3)==="GMT"){ej=AC($substring(ag,3));ef=ej[0];ef=$imul(ef,(3600));}eb.setLoc(CN(ag,ef));$s=-1;return[eb,$ifaceNil];case 9:ek=CF(x,(y>>0),z,aa,ab,ac,ad,o);$s=12;case 12:if($c){$c=false;ek=ek.$blk();}if(ek&&ek.$blk!==undefined){break s;}$s=-1;return[ek,$ifaceNil];}return;}if($f===undefined){$f={$blk:AN};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$f.bf=bf;$f.bg=bg;$f.bh=bh;$f.bi=bi;$f.bj=bj;$f.bk=bk;$f.bl=bl;$f.bm=bm;$f.bn=bn;$f.bo=bo;$f.bp=bp;$f.bq=bq;$f.br=br;$f.bs=bs;$f.bt=bt;$f.bu=bu;$f.bv=bv;$f.bw=bw;$f.bx=bx;$f.by=by;$f.bz=bz;$f.ca=ca;$f.cb=cb;$f.cc=cc;$f.cd=cd;$f.ce=ce;$f.cf=cf;$f.cg=cg;$f.ch=ch;$f.ci=ci;$f.cj=cj;$f.ck=ck;$f.cl=cl;$f.cm=cm;$f.cn=cn;$f.co=co;$f.cp=cp;$f.cq=cq;$f.cr=cr;$f.cs=cs;$f.ct=ct;$f.cu=cu;$f.cv=cv;$f.cw=cw;$f.cx=cx;$f.cy=cy;$f.cz=cz;$f.da=da;$f.db=db;$f.dc=dc;$f.dd=dd;$f.de=de;$f.df=df;$f.dg=dg;$f.dh=dh;$f.di=di;$f.dj=dj;$f.dk=dk;$f.dl=dl;$f.dm=dm;$f.dn=dn;$f.dp=dp;$f.dq=dq;$f.dr=dr;$f.ds=ds;$f.dt=dt;$f.du=du;$f.dv=dv;$f.dw=dw;$f.dx=dx;$f.dy=dy;$f.dz=dz;$f.ea=ea;$f.eb=eb;$f.ec=ec;$f.ed=ed;$f.ee=ee;$f.ef=ef;$f.eg=eg;$f.eh=eh;$f.ei=ei;$f.ej=ej;$f.ek=ek;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};AO=function(m){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,m,n,o,p,q,r,s,t,u,v,w,x,y,z;n=0;o=false;if(m.length<3){p=0;q=false;n=p;o=q;return[n,o];}if(m.length>=4&&($substring(m,0,4)==="ChST"||$substring(m,0,4)==="MeST")){r=4;s=true;n=r;o=s;return[n,o];}if($substring(m,0,3)==="GMT"){n=AP(m);t=n;u=true;n=t;o=u;return[n,o];}v=0;v=0;while(true){if(!(v<6)){break;}if(v>=m.length){break;}w=m.charCodeAt(v);if(w<65||90<w){break;}v=v+(1)>>0;}x=v;if((x===(0))||(x===(1))||(x===(2))||(x===(6))){y=0;z=false;n=y;o=z;return[n,o];}else if(x===(5)){if(m.charCodeAt(4)===84){aa=5;ab=true;n=aa;o=ab;return[n,o];}}else if(x===(4)){if((m.charCodeAt(3)===84)||$substring(m,0,4)==="WITA"){ac=4;ad=true;n=ac;o=ad;return[n,o];}}else if(x===(3)){ae=3;af=true;n=ae;o=af;return[n,o];}ag=0;ah=false;n=ag;o=ah;return[n,o];};AP=function(m){var $ptr,m,n,o,p,q,r;m=$substring(m,3);if(m.length===0){return 3;}n=m.charCodeAt(0);if(!((n===45))&&!((n===43))){return 3;}o=AS($substring(m,1));p=o[0];q=o[1];r=o[2];if(!($interfaceIsEqual(r,$ifaceNil))){return 3;}if(n===45){p=new $Int64(-p.$high,-p.$low);}if((p.$high===0&&p.$low===0)||(p.$high<-1||(p.$high===-1&&p.$low<4294967282))||(0<p.$high||(0===p.$high&&12<p.$low))){return 3;}return(3+m.length>>0)-q.length>>0;};AQ=function(m,n){var $ptr,m,n,o,p,q,r,s,t;o=0;p="";q=$ifaceNil;if(!((m.charCodeAt(0)===46))){q=AE;return[o,p,q];}r=AC($substring(m,1,n));o=r[0];q=r[1];if(!($interfaceIsEqual(q,$ifaceNil))){return[o,p,q];}if(o<0||1000000000<=o){p="fractional second";return[o,p,q];}s=10-n>>0;t=0;while(true){if(!(t<s)){break;}o=$imul(o,(10));t=t+(1)>>0;}return[o,p,q];};AS=function(m){var $ptr,aa,ab,ac,ad,m,n,o,p,q,r,s,t,u,v,w,x,y,z;n=new $Int64(0,0);o="";p=$ifaceNil;q=0;while(true){if(!(q<m.length)){break;}r=m.charCodeAt(q);if(r<48||r>57){break;}if((n.$high>214748364||(n.$high===214748364&&n.$low>3435973836))){s=new $Int64(0,0);t="";u=AR;n=s;o=t;p=u;return[n,o,p];}n=(v=(w=$mul64(n,new $Int64(0,10)),x=new $Int64(0,r),new $Int64(w.$high+x.$high,w.$low+x.$low)),new $Int64(v.$high-0,v.$low-48));if((n.$high<0||(n.$high===0&&n.$low<0))){y=new $Int64(0,0);z="";aa=AR;n=y;o=z;p=aa;return[n,o,p];}q=q+(1)>>0;}ab=n;ac=$substring(m,q);ad=$ifaceNil;n=ab;o=ac;p=ad;return[n,o,p];};AT=function(m){var $ptr,m,n,o,p,q,r,s,t,u,v,w,x,y,z;n=new $Int64(0,0);o=0;p="";q=0;o=1;r=false;while(true){if(!(q<m.length)){break;}s=m.charCodeAt(q);if(s<48||s>57){break;}if(r){q=q+(1)>>0;continue;}if((n.$high>214748364||(n.$high===214748364&&n.$low>3435973836))){r=true;q=q+(1)>>0;continue;}w=(t=(u=$mul64(n,new $Int64(0,10)),v=new $Int64(0,s),new $Int64(u.$high+v.$high,u.$low+v.$low)),new $Int64(t.$high-0,t.$low-48));if((w.$high<0||(w.$high===0&&w.$low<0))){r=true;q=q+(1)>>0;continue;}n=w;o=o*(10);q=q+(1)>>0;}x=n;y=o;z=$substring(m,q);n=x;o=y;p=z;return[n,o,p];};AV=function(m){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,m,n,o,p,q,r,s,t,u,v,w,x,y,z;n=m;o=new $Int64(0,0);p=false;if(!(m==="")){q=m.charCodeAt(0);if((q===45)||(q===43)){p=q===45;m=$substring(m,1);}}if(m==="0"){return[new BT(0,0),$ifaceNil];}if(m===""){return[new BT(0,0),C.New("time: invalid duration "+n)];}while(true){if(!(!(m===""))){break;}r=new $Int64(0,0);s=new $Int64(0,0);t=r;u=s;v=1;w=$ifaceNil;if(!((m.charCodeAt(0)===46)||48<=m.charCodeAt(0)&&m.charCodeAt(0)<=57)){return[new BT(0,0),C.New("time: invalid duration "+n)];}x=m.length;y=AS(m);t=y[0];m=y[1];w=y[2];if(!($interfaceIsEqual(w,$ifaceNil))){return[new BT(0,0),C.New("time: invalid duration "+n)];}z=!((x===m.length));aa=false;if(!(m==="")&&(m.charCodeAt(0)===46)){m=$substring(m,1);ab=m.length;ac=AT(m);u=ac[0];v=ac[1];m=ac[2];aa=!((ab===m.length));}if(!z&&!aa){return[new BT(0,0),C.New("time: invalid duration "+n)];}ad=0;while(true){if(!(ad<m.length)){break;}ae=m.charCodeAt(ad);if((ae===46)||48<=ae&&ae<=57){break;}ad=ad+(1)>>0;}if(ad===0){return[new BT(0,0),C.New("time: missing unit in duration "+n)];}af=$substring(m,0,ad);m=$substring(m,ad);ag=(ah=AU[$String.keyFor(af)],ah!==undefined?[ah.v,true]:[new $Int64(0,0),false]);ai=ag[0];aj=ag[1];if(!aj){return[new BT(0,0),C.New("time: unknown unit "+af+" in duration "+n)];}if((ak=$div64(new $Int64(2147483647,4294967295),ai,false),(t.$high>ak.$high||(t.$high===ak.$high&&t.$low>ak.$low)))){return[new BT(0,0),C.New("time: invalid duration "+n)];}t=$mul64(t,(ai));if((u.$high>0||(u.$high===0&&u.$low>0))){t=(al=new $Int64(0,$flatten64(u)*($flatten64(ai)/v)),new $Int64(t.$high+al.$high,t.$low+al.$low));if((t.$high<0||(t.$high===0&&t.$low<0))){return[new BT(0,0),C.New("time: invalid duration "+n)];}}o=(am=t,new $Int64(o.$high+am.$high,o.$low+am.$low));if((o.$high<0||(o.$high===0&&o.$low<0))){return[new BT(0,0),C.New("time: invalid duration "+n)];}}if(p){o=new $Int64(-o.$high,-o.$low);}return[new BT(o.$high,o.$low),$ifaceNil];};$pkg.ParseDuration=AV;BM.ptr.prototype.setLoc=function(m){var $ptr,m,n;n=this;if(m===CK){m=DL.nil;}n.loc=m;};BM.prototype.setLoc=function(m){return this.$val.setLoc(m);};BM.ptr.prototype.After=function(m){var $ptr,m,n,o,p,q,r;n=this;return(o=n.sec,p=m.sec,(o.$high>p.$high||(o.$high===p.$high&&o.$low>p.$low)))||(q=n.sec,r=m.sec,(q.$high===r.$high&&q.$low===r.$low))&&n.nsec>m.nsec;};BM.prototype.After=function(m){return this.$val.After(m);};BM.ptr.prototype.Before=function(m){var $ptr,m,n,o,p,q,r;n=this;return(o=n.sec,p=m.sec,(o.$high<p.$high||(o.$high===p.$high&&o.$low<p.$low)))||(q=n.sec,r=m.sec,(q.$high===r.$high&&q.$low===r.$low))&&n.nsec<m.nsec;};BM.prototype.Before=function(m){return this.$val.Before(m);};BM.ptr.prototype.Equal=function(m){var $ptr,m,n,o,p;n=this;return(o=n.sec,p=m.sec,(o.$high===p.$high&&o.$low===p.$low))&&(n.nsec===m.nsec);};BM.prototype.Equal=function(m){return this.$val.Equal(m);};BN.prototype.String=function(){var $ptr,m,n,o,p;m=this.$val;if(1<=m&&m<=12){return(n=m-1>>0,((n<0||n>=BO.length)?($throwRuntimeError("index out of range"),undefined):BO[n]));}o=$makeSlice(DI,20);p=BV(o,new $Uint64(0,m));return"%!Month("+$bytesToString($subslice(o,p))+")";};$ptrType(BN).prototype.String=function(){return new BN(this.$get()).String();};BP.prototype.String=function(){var $ptr,m;m=this.$val;return((m<0||m>=BQ.length)?($throwRuntimeError("index out of range"),undefined):BQ[m]);};$ptrType(BP).prototype.String=function(){return new BP(this.$get()).String();};BM.ptr.prototype.IsZero=function(){var $ptr,m,n;m=this;return(n=m.sec,(n.$high===0&&n.$low===0))&&(m.nsec===0);};BM.prototype.IsZero=function(){return this.$val.IsZero();};BM.ptr.prototype.abs=function(){var $ptr,m,n,o,p,q,r,s,t,u,v,w,x,y,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;n=m.loc;if(n===DL.nil||n===CL){$s=1;continue;}$s=2;continue;case 1:o=n.get();$s=3;case 3:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;case 2:q=(p=m.sec,new $Int64(p.$high+-15,p.$low+2288912640));if(!(n===CK)){$s=4;continue;}$s=5;continue;case 4:if(!(n.cacheZone===DE.nil)&&(r=n.cacheStart,(r.$high<q.$high||(r.$high===q.$high&&r.$low<=q.$low)))&&(s=n.cacheEnd,(q.$high<s.$high||(q.$high===s.$high&&q.$low<s.$low)))){$s=6;continue;}$s=7;continue;case 6:q=(t=new $Int64(0,n.cacheZone.offset),new $Int64(q.$high+t.$high,q.$low+t.$low));$s=8;continue;case 7:v=n.lookup(q);$s=9;case 9:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}u=v;w=u[1];q=(x=new $Int64(0,w),new $Int64(q.$high+x.$high,q.$low+x.$low));case 8:case 5:$s=-1;return(y=new $Int64(q.$high+2147483646,q.$low+450480384),new $Uint64(y.$high,y.$low));}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.abs};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.abs=function(){return this.$val.abs();};BM.ptr.prototype.locabs=function(){var $ptr,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m="";n=0;o=new $Uint64(0,0);p=this;q=p.loc;if(q===DL.nil||q===CL){$s=1;continue;}$s=2;continue;case 1:r=q.get();$s=3;case 3:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=r;case 2:t=(s=p.sec,new $Int64(s.$high+-15,s.$low+2288912640));if(!(q===CK)){$s=4;continue;}$s=5;continue;case 4:if(!(q.cacheZone===DE.nil)&&(u=q.cacheStart,(u.$high<t.$high||(u.$high===t.$high&&u.$low<=t.$low)))&&(v=q.cacheEnd,(t.$high<v.$high||(t.$high===v.$high&&t.$low<v.$low)))){$s=7;continue;}$s=8;continue;case 7:m=q.cacheZone.name;n=q.cacheZone.offset;$s=9;continue;case 8:x=q.lookup(t);$s=10;case 10:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}w=x;m=w[0];n=w[1];case 9:t=(y=new $Int64(0,n),new $Int64(t.$high+y.$high,t.$low+y.$low));$s=6;continue;case 5:m="UTC";case 6:o=(z=new $Int64(t.$high+2147483646,t.$low+450480384),new $Uint64(z.$high,z.$low));$s=-1;return[m,n,o];}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.locabs};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.locabs=function(){return this.$val.locabs();};BM.ptr.prototype.Date=function(){var $ptr,m,n,o,p,q,r,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=0;n=0;o=0;p=this;r=$clone(p,BM).date(true);$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=r;m=q[0];n=q[1];o=q[2];$s=-1;return[m,n,o];}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.Date};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.Date=function(){return this.$val.Date();};BM.ptr.prototype.Year=function(){var $ptr,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;o=$clone(m,BM).date(false);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n[0];$s=-1;return p;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.Year};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.Year=function(){return this.$val.Year();};BM.ptr.prototype.Month=function(){var $ptr,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;o=$clone(m,BM).date(true);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n[1];$s=-1;return p;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.Month};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.Month=function(){return this.$val.Month();};BM.ptr.prototype.Day=function(){var $ptr,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;o=$clone(m,BM).date(true);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n[2];$s=-1;return p;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.Day};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.Day=function(){return this.$val.Day();};BM.ptr.prototype.Weekday=function(){var $ptr,m,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;n=$clone(m,BM).abs();$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=BR(n);$s=2;case 2:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$s=-1;return o;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.Weekday};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.Weekday=function(){return this.$val.Weekday();};BR=function(m){var $ptr,m,n,o;n=$div64((new $Uint64(m.$high+0,m.$low+86400)),new $Uint64(0,604800),true);return((o=(n.$low>>0)/86400,(o===o&&o!==1/0&&o!==-1/0)?o>>0:$throwRuntimeError("integer divide by zero"))>>0);};BM.ptr.prototype.ISOWeek=function(){var $ptr,aa,ab,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=0;n=0;o=this;q=$clone(o,BM).date(true);$s=1;case 1:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;m=p[0];r=p[1];s=p[2];t=p[3];v=$clone(o,BM).Weekday();$s=2;case 2:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}w=(u=((v+6>>0)>>0)%7,u===u?u:$throwRuntimeError("integer divide by zero"));n=(x=(((t-w>>0)+7>>0))/7,(x===x&&x!==1/0&&x!==-1/0)?x>>0:$throwRuntimeError("integer divide by zero"));z=(y=(((w-t>>0)+371>>0))%7,y===y?y:$throwRuntimeError("integer divide by zero"));if(1<=z&&z<=3){n=n+(1)>>0;}if(n===0){m=m-(1)>>0;n=52;if((z===4)||((z===5)&&CD(m))){n=n+(1)>>0;}}if((r===12)&&s>=29&&w<3){ab=(aa=(((w+31>>0)-s>>0))%7,aa===aa?aa:$throwRuntimeError("integer divide by zero"));if(0<=ab&&ab<=2){m=m+(1)>>0;n=1;}}$s=-1;return[m,n];}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.ISOWeek};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.ISOWeek=function(){return this.$val.ISOWeek();};BM.ptr.prototype.Clock=function(){var $ptr,m,n,o,p,q,r,s,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=0;n=0;o=0;p=this;r=$clone(p,BM).abs();$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=BS(r);$s=2;case 2:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}q=s;m=q[0];n=q[1];o=q[2];$s=-1;return[m,n,o];}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.Clock};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.Clock=function(){return this.$val.Clock();};BS=function(m){var $ptr,m,n,o,p,q,r;n=0;o=0;p=0;p=($div64(m,new $Uint64(0,86400),true).$low>>0);n=(q=p/3600,(q===q&&q!==1/0&&q!==-1/0)?q>>0:$throwRuntimeError("integer divide by zero"));p=p-(($imul(n,3600)))>>0;o=(r=p/60,(r===r&&r!==1/0&&r!==-1/0)?r>>0:$throwRuntimeError("integer divide by zero"));p=p-(($imul(o,60)))>>0;return[n,o,p];};BM.ptr.prototype.Hour=function(){var $ptr,m,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;o=$clone(m,BM).abs();$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$s=-1;return(n=($div64(o,new $Uint64(0,86400),true).$low>>0)/3600,(n===n&&n!==1/0&&n!==-1/0)?n>>0:$throwRuntimeError("integer divide by zero"));}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.Hour};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.Hour=function(){return this.$val.Hour();};BM.ptr.prototype.Minute=function(){var $ptr,m,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;o=$clone(m,BM).abs();$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$s=-1;return(n=($div64(o,new $Uint64(0,3600),true).$low>>0)/60,(n===n&&n!==1/0&&n!==-1/0)?n>>0:$throwRuntimeError("integer divide by zero"));}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.Minute};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.Minute=function(){return this.$val.Minute();};BM.ptr.prototype.Second=function(){var $ptr,m,n,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;n=$clone(m,BM).abs();$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$s=-1;return($div64(n,new $Uint64(0,60),true).$low>>0);}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.Second};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.Second=function(){return this.$val.Second();};BM.ptr.prototype.Nanosecond=function(){var $ptr,m;m=this;return(m.nsec>>0);};BM.prototype.Nanosecond=function(){return this.$val.Nanosecond();};BM.ptr.prototype.YearDay=function(){var $ptr,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;o=$clone(m,BM).date(false);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n[3];$s=-1;return p+1>>0;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.YearDay};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.YearDay=function(){return this.$val.YearDay();};BT.prototype.String=function(){var $ptr,m,n,o,p,q,r,s,t;m=this;n=DP.zero();o=32;p=new $Uint64(m.$high,m.$low);q=(m.$high<0||(m.$high===0&&m.$low<0));if(q){p=new $Uint64(-p.$high,-p.$low);}if((p.$high<0||(p.$high===0&&p.$low<1000000000))){r=0;o=o-(1)>>0;((o<0||o>=n.length)?($throwRuntimeError("index out of range"),undefined):n[o]=115);o=o-(1)>>0;if((p.$high===0&&p.$low===0)){return"0s";}else if((p.$high<0||(p.$high===0&&p.$low<1000))){r=0;((o<0||o>=n.length)?($throwRuntimeError("index out of range"),undefined):n[o]=110);}else if((p.$high<0||(p.$high===0&&p.$low<1000000))){r=3;o=o-(1)>>0;$copyString($subslice(new DI(n),o),"\xC2\xB5");}else{r=6;((o<0||o>=n.length)?($throwRuntimeError("index out of range"),undefined):n[o]=109);}s=BU($subslice(new DI(n),0,o),p,r);o=s[0];p=s[1];o=BV($subslice(new DI(n),0,o),p);}else{o=o-(1)>>0;((o<0||o>=n.length)?($throwRuntimeError("index out of range"),undefined):n[o]=115);t=BU($subslice(new DI(n),0,o),p,9);o=t[0];p=t[1];o=BV($subslice(new DI(n),0,o),$div64(p,new $Uint64(0,60),true));p=$div64(p,(new $Uint64(0,60)),false);if((p.$high>0||(p.$high===0&&p.$low>0))){o=o-(1)>>0;((o<0||o>=n.length)?($throwRuntimeError("index out of range"),undefined):n[o]=109);o=BV($subslice(new DI(n),0,o),$div64(p,new $Uint64(0,60),true));p=$div64(p,(new $Uint64(0,60)),false);if((p.$high>0||(p.$high===0&&p.$low>0))){o=o-(1)>>0;((o<0||o>=n.length)?($throwRuntimeError("index out of range"),undefined):n[o]=104);o=BV($subslice(new DI(n),0,o),p);}}}if(q){o=o-(1)>>0;((o<0||o>=n.length)?($throwRuntimeError("index out of range"),undefined):n[o]=45);}return $bytesToString($subslice(new DI(n),o));};$ptrType(BT).prototype.String=function(){return this.$get().String();};BU=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,u,v,w;p=0;q=new $Uint64(0,0);r=m.$length;s=false;t=0;while(true){if(!(t<o)){break;}u=$div64(n,new $Uint64(0,10),true);s=s||!((u.$high===0&&u.$low===0));if(s){r=r-(1)>>0;((r<0||r>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+r]=((u.$low<<24>>>24)+48<<24>>>24));}n=$div64(n,(new $Uint64(0,10)),false);t=t+(1)>>0;}if(s){r=r-(1)>>0;((r<0||r>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+r]=46);}v=r;w=n;p=v;q=w;return[p,q];};BV=function(m,n){var $ptr,m,n,o;o=m.$length;if((n.$high===0&&n.$low===0)){o=o-(1)>>0;((o<0||o>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+o]=48);}else{while(true){if(!((n.$high>0||(n.$high===0&&n.$low>0)))){break;}o=o-(1)>>0;((o<0||o>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+o]=(($div64(n,new $Uint64(0,10),true).$low<<24>>>24)+48<<24>>>24));n=$div64(n,(new $Uint64(0,10)),false);}}return o;};BT.prototype.Nanoseconds=function(){var $ptr,m;m=this;return new $Int64(m.$high,m.$low);};$ptrType(BT).prototype.Nanoseconds=function(){return this.$get().Nanoseconds();};BT.prototype.Seconds=function(){var $ptr,m,n,o;m=this;n=$div64(m,new BT(0,1000000000),false);o=$div64(m,new BT(0,1000000000),true);return $flatten64(n)+$flatten64(o)/1e+09;};$ptrType(BT).prototype.Seconds=function(){return this.$get().Seconds();};BT.prototype.Minutes=function(){var $ptr,m,n,o;m=this;n=$div64(m,new BT(13,4165425152),false);o=$div64(m,new BT(13,4165425152),true);return $flatten64(n)+$flatten64(o)/6e+10;};$ptrType(BT).prototype.Minutes=function(){return this.$get().Minutes();};BT.prototype.Hours=function(){var $ptr,m,n,o;m=this;n=$div64(m,new BT(838,817405952),false);o=$div64(m,new BT(838,817405952),true);return $flatten64(n)+$flatten64(o)/3.6e+12;};$ptrType(BT).prototype.Hours=function(){return this.$get().Hours();};BM.ptr.prototype.Add=function(m){var $ptr,m,n,o,p,q,r,s,t,u,v,w;n=this;n.sec=(o=n.sec,p=(q=$div64(m,new BT(0,1000000000),false),new $Int64(q.$high,q.$low)),new $Int64(o.$high+p.$high,o.$low+p.$low));s=n.nsec+((r=$div64(m,new BT(0,1000000000),true),r.$low+((r.$high>>31)*4294967296))>>0)>>0;if(s>=1000000000){n.sec=(t=n.sec,u=new $Int64(0,1),new $Int64(t.$high+u.$high,t.$low+u.$low));s=s-(1000000000)>>0;}else if(s<0){n.sec=(v=n.sec,w=new $Int64(0,1),new $Int64(v.$high-w.$high,v.$low-w.$low));s=s+(1000000000)>>0;}n.nsec=s;return n;};BM.prototype.Add=function(m){return this.$val.Add(m);};BM.ptr.prototype.Sub=function(m){var $ptr,m,n,o,p,q,r,s,t;n=this;t=(o=$mul64((p=(q=n.sec,r=m.sec,new $Int64(q.$high-r.$high,q.$low-r.$low)),new BT(p.$high,p.$low)),new BT(0,1000000000)),s=new BT(0,(n.nsec-m.nsec>>0)),new BT(o.$high+s.$high,o.$low+s.$low));if($clone($clone(m,BM).Add(t),BM).Equal($clone(n,BM))){return t;}else if($clone(n,BM).Before($clone(m,BM))){return new BT(-2147483648,0);}else{return new BT(2147483647,4294967295);}};BM.prototype.Sub=function(m){return this.$val.Sub(m);};BM.ptr.prototype.AddDate=function(m,n,o){var $ptr,aa,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;r=$clone(p,BM).Date();$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=r;s=q[0];t=q[1];u=q[2];w=$clone(p,BM).Clock();$s=2;case 2:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}v=w;x=v[0];y=v[1];z=v[2];aa=CF(s+m>>0,t+(n>>0)>>0,u+o>>0,x,y,z,(p.nsec>>0),$clone(p,BM).Location());$s=3;case 3:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}$s=-1;return aa;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.AddDate};}$f.$ptr=$ptr;$f.aa=aa;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.AddDate=function(m,n,o){return this.$val.AddDate(m,n,o);};BM.ptr.prototype.date=function(m){var $ptr,m,n,o,p,q,r,s,t,u,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=0;o=0;p=0;q=0;r=this;t=$clone(r,BM).abs();$s=1;case 1:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}u=BY(t,m);$s=2;case 2:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}s=u;n=s[0];o=s[1];p=s[2];q=s[3];$s=-1;return[n,o,p,q];}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.date};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.date=function(m){return this.$val.date(m);};BY=function(m,n){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,m,n,o,p,q,r,s,t,u,v,w,x,y,z;o=0;p=0;q=0;r=0;s=$div64(m,new $Uint64(0,86400),false);t=$div64(s,new $Uint64(0,146097),false);u=$mul64(new $Uint64(0,400),t);s=(v=$mul64(new $Uint64(0,146097),t),new $Uint64(s.$high-v.$high,s.$low-v.$low));t=$div64(s,new $Uint64(0,36524),false);t=(w=$shiftRightUint64(t,2),new $Uint64(t.$high-w.$high,t.$low-w.$low));u=(x=$mul64(new $Uint64(0,100),t),new $Uint64(u.$high+x.$high,u.$low+x.$low));s=(y=$mul64(new $Uint64(0,36524),t),new $Uint64(s.$high-y.$high,s.$low-y.$low));t=$div64(s,new $Uint64(0,1461),false);u=(z=$mul64(new $Uint64(0,4),t),new $Uint64(u.$high+z.$high,u.$low+z.$low));s=(aa=$mul64(new $Uint64(0,1461),t),new $Uint64(s.$high-aa.$high,s.$low-aa.$low));t=$div64(s,new $Uint64(0,365),false);t=(ab=$shiftRightUint64(t,2),new $Uint64(t.$high-ab.$high,t.$low-ab.$low));u=(ac=t,new $Uint64(u.$high+ac.$high,u.$low+ac.$low));s=(ad=$mul64(new $Uint64(0,365),t),new $Uint64(s.$high-ad.$high,s.$low-ad.$low));o=((ae=(af=new $Int64(u.$high,u.$low),new $Int64(af.$high+-69,af.$low+4075721025)),ae.$low+((ae.$high>>31)*4294967296))>>0);r=(s.$low>>0);if(!n){return[o,p,q,r];}q=r;if(CD(o)){if(q>59){q=q-(1)>>0;}else if((q===59)){p=2;q=29;return[o,p,q,r];}}p=((ag=q/31,(ag===ag&&ag!==1/0&&ag!==-1/0)?ag>>0:$throwRuntimeError("integer divide by zero"))>>0);ai=((ah=p+1>>0,((ah<0||ah>=BZ.length)?($throwRuntimeError("index out of range"),undefined):BZ[ah]))>>0);aj=0;if(q>=ai){p=p+(1)>>0;aj=ai;}else{aj=(((p<0||p>=BZ.length)?($throwRuntimeError("index out of range"),undefined):BZ[p])>>0);}p=p+(1)>>0;q=(q-aj>>0)+1>>0;return[o,p,q,r];};CA=function(m,n){var $ptr,m,n,o;if((m===2)&&CD(n)){return 29;}return((((m<0||m>=BZ.length)?($throwRuntimeError("index out of range"),undefined):BZ[m])-(o=m-1>>0,((o<0||o>=BZ.length)?($throwRuntimeError("index out of range"),undefined):BZ[o]))>>0)>>0);};CB=function(){var $ptr,m,n,o;m=J();n=m[0];o=m[1];return new BM.ptr(new $Int64(n.$high+14,n.$low+2006054656),o,$pkg.Local);};$pkg.Now=CB;BM.ptr.prototype.UTC=function(){var $ptr,m;m=this;m.setLoc(CK);return m;};BM.prototype.UTC=function(){return this.$val.UTC();};BM.ptr.prototype.Local=function(){var $ptr,m;m=this;m.setLoc($pkg.Local);return m;};BM.prototype.Local=function(){return this.$val.Local();};BM.ptr.prototype.In=function(m){var $ptr,m,n;n=this;if(m===DL.nil){$panic(new $String("time: missing Location in call to Time.In"));}n.setLoc(m);return n;};BM.prototype.In=function(m){return this.$val.In(m);};BM.ptr.prototype.Location=function(){var $ptr,m,n;m=this;n=m.loc;if(n===DL.nil){n=$pkg.UTC;}return n;};BM.prototype.Location=function(){return this.$val.Location();};BM.ptr.prototype.Zone=function(){var $ptr,m,n,o,p,q,r,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m="";n=0;o=this;r=o.loc.lookup((q=o.sec,new $Int64(q.$high+-15,q.$low+2288912640)));$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}p=r;m=p[0];n=p[1];$s=-1;return[m,n];}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.Zone};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.Zone=function(){return this.$val.Zone();};BM.ptr.prototype.Unix=function(){var $ptr,m,n;m=this;return(n=m.sec,new $Int64(n.$high+-15,n.$low+2288912640));};BM.prototype.Unix=function(){return this.$val.Unix();};BM.ptr.prototype.UnixNano=function(){var $ptr,m,n,o,p;m=this;return(n=$mul64(((o=m.sec,new $Int64(o.$high+-15,o.$low+2288912640))),new $Int64(0,1000000000)),p=new $Int64(0,m.nsec),new $Int64(n.$high+p.$high,n.$low+p.$low));};BM.prototype.UnixNano=function(){return this.$val.UnixNano();};BM.ptr.prototype.MarshalBinary=function(){var $ptr,m,n,o,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;n=0;if($clone(m,BM).Location()===$pkg.UTC){$s=1;continue;}$s=2;continue;case 1:n=-1;$s=3;continue;case 2:p=$clone(m,BM).Zone();$s=4;case 4:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}o=p;q=o[1];if(!(((r=q%60,r===r?r:$throwRuntimeError("integer divide by zero"))===0))){$s=-1;return[DI.nil,C.New("Time.MarshalBinary: zone offset has fractional minute")];}q=(s=q/(60),(s===s&&s!==1/0&&s!==-1/0)?s>>0:$throwRuntimeError("integer divide by zero"));if(q<-32768||(q===-1)||q>32767){$s=-1;return[DI.nil,C.New("Time.MarshalBinary: unexpected zone offset")];}n=(q<<16>>16);case 3:t=new DI([1,($shiftRightInt64(m.sec,56).$low<<24>>>24),($shiftRightInt64(m.sec,48).$low<<24>>>24),($shiftRightInt64(m.sec,40).$low<<24>>>24),($shiftRightInt64(m.sec,32).$low<<24>>>24),($shiftRightInt64(m.sec,24).$low<<24>>>24),($shiftRightInt64(m.sec,16).$low<<24>>>24),($shiftRightInt64(m.sec,8).$low<<24>>>24),(m.sec.$low<<24>>>24),((m.nsec>>24>>0)<<24>>>24),((m.nsec>>16>>0)<<24>>>24),((m.nsec>>8>>0)<<24>>>24),(m.nsec<<24>>>24),((n>>8<<16>>16)<<24>>>24),(n<<24>>>24)]);$s=-1;return[t,$ifaceNil];}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.MarshalBinary};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.MarshalBinary=function(){return this.$val.MarshalBinary();};BM.ptr.prototype.UnmarshalBinary=function(m){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;o=m;if(o.$length===0){$s=-1;return C.New("Time.UnmarshalBinary: no data");}if(!(((0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0])===1))){$s=-1;return C.New("Time.UnmarshalBinary: unsupported version");}if(!((o.$length===15))){$s=-1;return C.New("Time.UnmarshalBinary: invalid length");}o=$subslice(o,1);n.sec=(p=(q=(r=(s=(t=(u=(v=new $Int64(0,(7>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+7])),w=$shiftLeft64(new $Int64(0,(6>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+6])),8),new $Int64(v.$high|w.$high,(v.$low|w.$low)>>>0)),x=$shiftLeft64(new $Int64(0,(5>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+5])),16),new $Int64(u.$high|x.$high,(u.$low|x.$low)>>>0)),y=$shiftLeft64(new $Int64(0,(4>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+4])),24),new $Int64(t.$high|y.$high,(t.$low|y.$low)>>>0)),z=$shiftLeft64(new $Int64(0,(3>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+3])),32),new $Int64(s.$high|z.$high,(s.$low|z.$low)>>>0)),aa=$shiftLeft64(new $Int64(0,(2>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+2])),40),new $Int64(r.$high|aa.$high,(r.$low|aa.$low)>>>0)),ab=$shiftLeft64(new $Int64(0,(1>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+1])),48),new $Int64(q.$high|ab.$high,(q.$low|ab.$low)>>>0)),ac=$shiftLeft64(new $Int64(0,(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0])),56),new $Int64(p.$high|ac.$high,(p.$low|ac.$low)>>>0));o=$subslice(o,8);n.nsec=((((3>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+3])>>0)|(((2>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+2])>>0)<<8>>0))|(((1>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+1])>>0)<<16>>0))|(((0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0])>>0)<<24>>0);o=$subslice(o,4);ad=$imul(((((1>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+1])<<16>>16)|(((0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0])<<16>>16)<<8<<16>>16))>>0),60);if(ad===-60){$s=1;continue;}$s=2;continue;case 1:n.setLoc(CK);$s=3;continue;case 2:ag=$pkg.Local.lookup((af=n.sec,new $Int64(af.$high+-15,af.$low+2288912640)));$s=4;case 4:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}ae=ag;ah=ae[1];if(ad===ah){n.setLoc($pkg.Local);}else{n.setLoc(CN("",ad));}case 3:$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.UnmarshalBinary};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.UnmarshalBinary=function(m){return this.$val.UnmarshalBinary(m);};BM.ptr.prototype.GobEncode=function(){var $ptr,m,n,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;n=$clone(m,BM).MarshalBinary();$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$s=-1;return n;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.GobEncode};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.GobEncode=function(){return this.$val.GobEncode();};BM.ptr.prototype.GobDecode=function(m){var $ptr,m,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;o=n.UnmarshalBinary(m);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$s=-1;return o;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.GobDecode};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.GobDecode=function(m){return this.$val.GobDecode(m);};BM.ptr.prototype.MarshalJSON=function(){var $ptr,m,n,o,p,q,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;n=$clone(m,BM).Year();$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=n;if(o<0||o>=10000){$s=-1;return[DI.nil,C.New("Time.MarshalJSON: year outside of range [0,9999]")];}p=$makeSlice(DI,0,37);p=$append(p,34);q=$clone(m,BM).AppendFormat(p,"2006-01-02T15:04:05.999999999Z07:00");$s=2;case 2:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;p=$append(p,34);$s=-1;return[p,$ifaceNil];}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.MarshalJSON};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.MarshalJSON=function(){return this.$val.MarshalJSON();};BM.ptr.prototype.UnmarshalJSON=function(m){var $ptr,m,n,o,p,q,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;if($bytesToString(m)==="null"){$s=-1;return $ifaceNil;}o=$ifaceNil;q=AL("\"2006-01-02T15:04:05Z07:00\"",$bytesToString(m));$s=1;case 1:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;BM.copy(n,p[0]);o=p[1];$s=-1;return o;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.UnmarshalJSON};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.UnmarshalJSON=function(m){return this.$val.UnmarshalJSON(m);};BM.ptr.prototype.MarshalText=function(){var $ptr,m,n,o,p,q,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;n=$clone(m,BM).Year();$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=n;if(o<0||o>=10000){$s=-1;return[DI.nil,C.New("Time.MarshalText: year outside of range [0,9999]")];}p=$makeSlice(DI,0,35);q=$clone(m,BM).AppendFormat(p,"2006-01-02T15:04:05.999999999Z07:00");$s=2;case 2:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}$s=-1;return[q,$ifaceNil];}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.MarshalText};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.MarshalText=function(){return this.$val.MarshalText();};BM.ptr.prototype.UnmarshalText=function(m){var $ptr,m,n,o,p,q,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;o=$ifaceNil;q=AL("2006-01-02T15:04:05Z07:00",$bytesToString(m));$s=1;case 1:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;BM.copy(n,p[0]);o=p[1];$s=-1;return o;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.UnmarshalText};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.UnmarshalText=function(m){return this.$val.UnmarshalText(m);};CC=function(m,n){var $ptr,m,n,o,p,q,r,s;if((n.$high<0||(n.$high===0&&n.$low<0))||(n.$high>0||(n.$high===0&&n.$low>=1000000000))){o=$div64(n,new $Int64(0,1000000000),false);m=(p=o,new $Int64(m.$high+p.$high,m.$low+p.$low));n=(q=$mul64(o,new $Int64(0,1000000000)),new $Int64(n.$high-q.$high,n.$low-q.$low));if((n.$high<0||(n.$high===0&&n.$low<0))){n=(r=new $Int64(0,1000000000),new $Int64(n.$high+r.$high,n.$low+r.$low));m=(s=new $Int64(0,1),new $Int64(m.$high-s.$high,m.$low-s.$low));}}return new BM.ptr(new $Int64(m.$high+14,m.$low+2006054656),((n.$low+((n.$high>>31)*4294967296))>>0),$pkg.Local);};$pkg.Unix=CC;CD=function(m){var $ptr,m,n,o,p;return((n=m%4,n===n?n:$throwRuntimeError("integer divide by zero"))===0)&&(!(((o=m%100,o===o?o:$throwRuntimeError("integer divide by zero"))===0))||((p=m%400,p===p?p:$throwRuntimeError("integer divide by zero"))===0));};CE=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,u,v,w;p=0;q=0;if(n<0){s=(r=((-n-1>>0))/o,(r===r&&r!==1/0&&r!==-1/0)?r>>0:$throwRuntimeError("integer divide by zero"))+1>>0;m=m-(s)>>0;n=n+(($imul(s,o)))>>0;}if(n>=o){u=(t=n/o,(t===t&&t!==1/0&&t!==-1/0)?t>>0:$throwRuntimeError("integer divide by zero"));m=m+(u)>>0;n=n-(($imul(u,o)))>>0;}v=m;w=n;p=v;q=w;return[p,q];};CF=function(m,n,o,p,q,r,s,t){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;bf=$f.bf;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if(t===DL.nil){$panic(new $String("time: missing Location in call to Date"));}u=(n>>0)-1>>0;v=CE(m,u,12);m=v[0];u=v[1];n=(u>>0)+1>>0;w=CE(r,s,1000000000);r=w[0];s=w[1];x=CE(q,r,60);q=x[0];r=x[1];y=CE(p,q,60);p=y[0];q=y[1];z=CE(o,p,24);o=z[0];p=z[1];ac=(aa=(ab=new $Int64(0,m),new $Int64(ab.$high- -69,ab.$low-4075721025)),new $Uint64(aa.$high,aa.$low));ad=$div64(ac,new $Uint64(0,400),false);ac=(ae=$mul64(new $Uint64(0,400),ad),new $Uint64(ac.$high-ae.$high,ac.$low-ae.$low));af=$mul64(new $Uint64(0,146097),ad);ad=$div64(ac,new $Uint64(0,100),false);ac=(ag=$mul64(new $Uint64(0,100),ad),new $Uint64(ac.$high-ag.$high,ac.$low-ag.$low));af=(ah=$mul64(new $Uint64(0,36524),ad),new $Uint64(af.$high+ah.$high,af.$low+ah.$low));ad=$div64(ac,new $Uint64(0,4),false);ac=(ai=$mul64(new $Uint64(0,4),ad),new $Uint64(ac.$high-ai.$high,ac.$low-ai.$low));af=(aj=$mul64(new $Uint64(0,1461),ad),new $Uint64(af.$high+aj.$high,af.$low+aj.$low));ad=ac;af=(ak=$mul64(new $Uint64(0,365),ad),new $Uint64(af.$high+ak.$high,af.$low+ak.$low));af=(al=new $Uint64(0,(am=n-1>>0,((am<0||am>=BZ.length)?($throwRuntimeError("index out of range"),undefined):BZ[am]))),new $Uint64(af.$high+al.$high,af.$low+al.$low));if(CD(m)&&n>=3){af=(an=new $Uint64(0,1),new $Uint64(af.$high+an.$high,af.$low+an.$low));}af=(ao=new $Uint64(0,(o-1>>0)),new $Uint64(af.$high+ao.$high,af.$low+ao.$low));ap=$mul64(af,new $Uint64(0,86400));ap=(aq=new $Uint64(0,((($imul(p,3600))+($imul(q,60))>>0)+r>>0)),new $Uint64(ap.$high+aq.$high,ap.$low+aq.$low));as=(ar=new $Int64(ap.$high,ap.$low),new $Int64(ar.$high+-2147483647,ar.$low+3844486912));au=t.lookup(as);$s=1;case 1:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}at=au;av=at[1];aw=at[3];ax=at[4];if(!((av===0))){$s=2;continue;}$s=3;continue;case 2:az=(ay=new $Int64(0,av),new $Int64(as.$high-ay.$high,as.$low-ay.$low));if((az.$high<aw.$high||(az.$high===aw.$high&&az.$low<aw.$low))){$s=5;continue;}if((az.$high>ax.$high||(az.$high===ax.$high&&az.$low>=ax.$low))){$s=6;continue;}$s=7;continue;case 5:bb=t.lookup(new $Int64(aw.$high-0,aw.$low-1));$s=8;case 8:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}ba=bb;av=ba[1];$s=7;continue;case 6:bd=t.lookup(ax);$s=9;case 9:if($c){$c=false;bd=bd.$blk();}if(bd&&bd.$blk!==undefined){break s;}bc=bd;av=bc[1];case 7:case 4:as=(be=new $Int64(0,av),new $Int64(as.$high-be.$high,as.$low-be.$low));case 3:bf=new BM.ptr(new $Int64(as.$high+14,as.$low+2006054656),(s>>0),DL.nil);bf.setLoc(t);$s=-1;return bf;}return;}if($f===undefined){$f={$blk:CF};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$f.bf=bf;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Date=CF;BM.ptr.prototype.Truncate=function(m){var $ptr,m,n,o,p;n=this;if((m.$high<0||(m.$high===0&&m.$low<=0))){return n;}o=CG($clone(n,BM),m);p=o[1];return $clone(n,BM).Add(new BT(-p.$high,-p.$low));};BM.prototype.Truncate=function(m){return this.$val.Truncate(m);};BM.ptr.prototype.Round=function(m){var $ptr,m,n,o,p,q;n=this;if((m.$high<0||(m.$high===0&&m.$low<=0))){return n;}o=CG($clone(n,BM),m);p=o[1];if((q=new BT(p.$high+p.$high,p.$low+p.$low),(q.$high<m.$high||(q.$high===m.$high&&q.$low<m.$low)))){return $clone(n,BM).Add(new BT(-p.$high,-p.$low));}return $clone(n,BM).Add(new BT(m.$high-p.$high,m.$low-p.$low));};BM.prototype.Round=function(m){return this.$val.Round(m);};CG=function(m,n){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,m,n,o,p,q,r,s,t,u,v,w,x,y,z;o=0;p=new BT(0,0);q=false;r=m.nsec;if((s=m.sec,(s.$high<0||(s.$high===0&&s.$low<0)))){q=true;m.sec=(t=m.sec,new $Int64(-t.$high,-t.$low));r=-r;if(r<0){r=r+(1000000000)>>0;m.sec=(u=m.sec,v=new $Int64(0,1),new $Int64(u.$high-v.$high,u.$low-v.$low));}}if((n.$high<0||(n.$high===0&&n.$low<1000000000))&&(w=$div64(new BT(0,1000000000),(new BT(n.$high+n.$high,n.$low+n.$low)),true),(w.$high===0&&w.$low===0))){o=((y=r/((n.$low+((n.$high>>31)*4294967296))>>0),(y===y&&y!==1/0&&y!==-1/0)?y>>0:$throwRuntimeError("integer divide by zero"))>>0)&1;p=new BT(0,(z=r%((n.$low+((n.$high>>31)*4294967296))>>0),z===z?z:$throwRuntimeError("integer divide by zero")));}else if((x=$div64(n,new BT(0,1000000000),true),(x.$high===0&&x.$low===0))){ab=(aa=$div64(n,new BT(0,1000000000),false),new $Int64(aa.$high,aa.$low));o=((ac=$div64(m.sec,ab,false),ac.$low+((ac.$high>>31)*4294967296))>>0)&1;p=(ad=$mul64((ae=$div64(m.sec,ab,true),new BT(ae.$high,ae.$low)),new BT(0,1000000000)),af=new BT(0,r),new BT(ad.$high+af.$high,ad.$low+af.$low));}else{ah=(ag=m.sec,new $Uint64(ag.$high,ag.$low));ai=$mul64(($shiftRightUint64(ah,32)),new $Uint64(0,1000000000));aj=$shiftRightUint64(ai,32);ak=$shiftLeft64(ai,32);ai=$mul64((new $Uint64(ah.$high&0,(ah.$low&4294967295)>>>0)),new $Uint64(0,1000000000));al=ak;am=new $Uint64(ak.$high+ai.$high,ak.$low+ai.$low);an=al;ak=am;if((ak.$high<an.$high||(ak.$high===an.$high&&ak.$low<an.$low))){aj=(ao=new $Uint64(0,1),new $Uint64(aj.$high+ao.$high,aj.$low+ao.$low));}ap=ak;aq=(ar=new $Uint64(0,r),new $Uint64(ak.$high+ar.$high,ak.$low+ar.$low));an=ap;ak=aq;if((ak.$high<an.$high||(ak.$high===an.$high&&ak.$low<an.$low))){aj=(as=new $Uint64(0,1),new $Uint64(aj.$high+as.$high,aj.$low+as.$low));}at=new $Uint64(n.$high,n.$low);while(true){if(!(!((au=$shiftRightUint64(at,63),(au.$high===0&&au.$low===1))))){break;}at=$shiftLeft64(at,(1));}av=new $Uint64(0,0);while(true){o=0;if((aj.$high>at.$high||(aj.$high===at.$high&&aj.$low>at.$low))||(aj.$high===at.$high&&aj.$low===at.$low)&&(ak.$high>av.$high||(ak.$high===av.$high&&ak.$low>=av.$low))){o=1;aw=ak;ax=new $Uint64(ak.$high-av.$high,ak.$low-av.$low);an=aw;ak=ax;if((ak.$high>an.$high||(ak.$high===an.$high&&ak.$low>an.$low))){aj=(ay=new $Uint64(0,1),new $Uint64(aj.$high-ay.$high,aj.$low-ay.$low));}aj=(az=at,new $Uint64(aj.$high-az.$high,aj.$low-az.$low));}if((at.$high===0&&at.$low===0)&&(ba=new $Uint64(n.$high,n.$low),(av.$high===ba.$high&&av.$low===ba.$low))){break;}av=$shiftRightUint64(av,(1));av=(bb=$shiftLeft64((new $Uint64(at.$high&0,(at.$low&1)>>>0)),63),new $Uint64(av.$high|bb.$high,(av.$low|bb.$low)>>>0));at=$shiftRightUint64(at,(1));}p=new BT(ak.$high,ak.$low);}if(q&&!((p.$high===0&&p.$low===0))){o=(o^(1))>>0;p=new BT(n.$high-p.$high,n.$low-p.$low);}return[o,p];};CH.ptr.prototype.get=function(){var $ptr,m,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;if(m===DL.nil){$s=-1;return CK;}if(m===CL){$s=1;continue;}$s=2;continue;case 1:$r=CM.Do(H);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return m;}return;}if($f===undefined){$f={$blk:CH.ptr.prototype.get};}$f.$ptr=$ptr;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};CH.prototype.get=function(){return this.$val.get();};CH.ptr.prototype.String=function(){var $ptr,m,n,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;n=m.get();$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$s=-1;return n.name;}return;}if($f===undefined){$f={$blk:CH.ptr.prototype.String};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.$s=$s;$f.$r=$r;return $f;};CH.prototype.String=function(){return this.$val.String();};CN=function(m,n){var $ptr,m,n,o,p;o=new CH.ptr(m,new DC([new CI.ptr(m,n,false)]),new DD([new CJ.ptr(new $Int64(-2147483648,0),0,false,false)]),new $Int64(-2147483648,0),new $Int64(2147483647,4294967295),DE.nil);o.cacheZone=(p=o.zone,(0>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+0]));return o;};$pkg.FixedZone=CN;CH.ptr.prototype.lookup=function(m){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n="";o=0;p=false;q=new $Int64(0,0);r=new $Int64(0,0);s=this;t=s.get();$s=1;case 1:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}s=t;if(s.zone.$length===0){n="UTC";o=0;p=false;q=new $Int64(-2147483648,0);r=new $Int64(2147483647,4294967295);$s=-1;return[n,o,p,q,r];}u=s.cacheZone;if(!(u===DE.nil)&&(v=s.cacheStart,(v.$high<m.$high||(v.$high===m.$high&&v.$low<=m.$low)))&&(w=s.cacheEnd,(m.$high<w.$high||(m.$high===w.$high&&m.$low<w.$low)))){n=u.name;o=u.offset;p=u.isDST;q=s.cacheStart;r=s.cacheEnd;$s=-1;return[n,o,p,q,r];}if((s.tx.$length===0)||(x=(y=s.tx,(0>=y.$length?($throwRuntimeError("index out of range"),undefined):y.$array[y.$offset+0])).when,(m.$high<x.$high||(m.$high===x.$high&&m.$low<x.$low)))){ab=(z=s.zone,aa=s.lookupFirstZone(),((aa<0||aa>=z.$length)?($throwRuntimeError("index out of range"),undefined):z.$array[z.$offset+aa]));n=ab.name;o=ab.offset;p=ab.isDST;q=new $Int64(-2147483648,0);if(s.tx.$length>0){r=(ac=s.tx,(0>=ac.$length?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+0])).when;}else{r=new $Int64(2147483647,4294967295);}$s=-1;return[n,o,p,q,r];}ad=s.tx;r=new $Int64(2147483647,4294967295);ae=0;af=ad.$length;while(true){if(!((af-ae>>0)>1)){break;}ah=ae+(ag=((af-ae>>0))/2,(ag===ag&&ag!==1/0&&ag!==-1/0)?ag>>0:$throwRuntimeError("integer divide by zero"))>>0;ai=((ah<0||ah>=ad.$length)?($throwRuntimeError("index out of range"),undefined):ad.$array[ad.$offset+ah]).when;if((m.$high<ai.$high||(m.$high===ai.$high&&m.$low<ai.$low))){r=ai;af=ah;}else{ae=ah;}}al=(aj=s.zone,ak=((ae<0||ae>=ad.$length)?($throwRuntimeError("index out of range"),undefined):ad.$array[ad.$offset+ae]).index,((ak<0||ak>=aj.$length)?($throwRuntimeError("index out of range"),undefined):aj.$array[aj.$offset+ak]));n=al.name;o=al.offset;p=al.isDST;q=((ae<0||ae>=ad.$length)?($throwRuntimeError("index out of range"),undefined):ad.$array[ad.$offset+ae]).when;$s=-1;return[n,o,p,q,r];}return;}if($f===undefined){$f={$blk:CH.ptr.prototype.lookup};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};CH.prototype.lookup=function(m){return this.$val.lookup(m);};CH.ptr.prototype.lookupFirstZone=function(){var $ptr,m,n,o,p,q,r,s,t,u,v,w;m=this;if(!m.firstZoneUsed()){return 0;}if(m.tx.$length>0&&(n=m.zone,o=(p=m.tx,(0>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+0])).index,((o<0||o>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+o])).isDST){r=((q=m.tx,(0>=q.$length?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+0])).index>>0)-1>>0;while(true){if(!(r>=0)){break;}if(!(s=m.zone,((r<0||r>=s.$length)?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+r])).isDST){return r;}r=r-(1)>>0;}}t=m.zone;u=0;while(true){if(!(u<t.$length)){break;}v=u;if(!(w=m.zone,((v<0||v>=w.$length)?($throwRuntimeError("index out of range"),undefined):w.$array[w.$offset+v])).isDST){return v;}u++;}return 0;};CH.prototype.lookupFirstZone=function(){return this.$val.lookupFirstZone();};CH.ptr.prototype.firstZoneUsed=function(){var $ptr,m,n,o,p;m=this;n=m.tx;o=0;while(true){if(!(o<n.$length)){break;}p=$clone(((o<0||o>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+o]),CJ);if(p.index===0){return true;}o++;}return false;};CH.prototype.firstZoneUsed=function(){return this.$val.firstZoneUsed();};CH.ptr.prototype.lookupName=function(m,n){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=0;p=false;q=false;r=this;s=r.get();$s=1;case 1:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;t=r.zone;u=0;case 2:if(!(u<t.$length)){$s=3;continue;}v=u;x=(w=r.zone,((v<0||v>=w.$length)?($throwRuntimeError("index out of range"),undefined):w.$array[w.$offset+v]));if(x.name===m){$s=4;continue;}$s=5;continue;case 4:aa=r.lookup((z=new $Int64(0,x.offset),new $Int64(n.$high-z.$high,n.$low-z.$low)));$s=6;case 6:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}y=aa;ab=y[0];ac=y[1];ad=y[2];if(ab===x.name){ae=ac;af=ad;ag=true;o=ae;p=af;q=ag;$s=-1;return[o,p,q];}case 5:u++;$s=2;continue;case 3:ah=r.zone;ai=0;while(true){if(!(ai<ah.$length)){break;}aj=ai;al=(ak=r.zone,((aj<0||aj>=ak.$length)?($throwRuntimeError("index out of range"),undefined):ak.$array[ak.$offset+aj]));if(al.name===m){am=al.offset;an=al.isDST;ao=true;o=am;p=an;q=ao;$s=-1;return[o,p,q];}ai++;}$s=-1;return[o,p,q];}return;}if($f===undefined){$f={$blk:CH.ptr.prototype.lookupName};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};CH.prototype.lookupName=function(m,n){return this.$val.lookupName(m,n);};DT.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];BM.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Format",name:"Format",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"AppendFormat",name:"AppendFormat",pkg:"",typ:$funcType([DI,$String],[DI],false)},{prop:"After",name:"After",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"Before",name:"Before",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"Equal",name:"Equal",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"IsZero",name:"IsZero",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"abs",name:"abs",pkg:"time",typ:$funcType([],[$Uint64],false)},{prop:"locabs",name:"locabs",pkg:"time",typ:$funcType([],[$String,$Int,$Uint64],false)},{prop:"Date",name:"Date",pkg:"",typ:$funcType([],[$Int,BN,$Int],false)},{prop:"Year",name:"Year",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Month",name:"Month",pkg:"",typ:$funcType([],[BN],false)},{prop:"Day",name:"Day",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Weekday",name:"Weekday",pkg:"",typ:$funcType([],[BP],false)},{prop:"ISOWeek",name:"ISOWeek",pkg:"",typ:$funcType([],[$Int,$Int],false)},{prop:"Clock",name:"Clock",pkg:"",typ:$funcType([],[$Int,$Int,$Int],false)},{prop:"Hour",name:"Hour",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Minute",name:"Minute",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Second",name:"Second",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Nanosecond",name:"Nanosecond",pkg:"",typ:$funcType([],[$Int],false)},{prop:"YearDay",name:"YearDay",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Add",name:"Add",pkg:"",typ:$funcType([BT],[BM],false)},{prop:"Sub",name:"Sub",pkg:"",typ:$funcType([BM],[BT],false)},{prop:"AddDate",name:"AddDate",pkg:"",typ:$funcType([$Int,$Int,$Int],[BM],false)},{prop:"date",name:"date",pkg:"time",typ:$funcType([$Bool],[$Int,BN,$Int,$Int],false)},{prop:"UTC",name:"UTC",pkg:"",typ:$funcType([],[BM],false)},{prop:"Local",name:"Local",pkg:"",typ:$funcType([],[BM],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([DL],[BM],false)},{prop:"Location",name:"Location",pkg:"",typ:$funcType([],[DL],false)},{prop:"Zone",name:"Zone",pkg:"",typ:$funcType([],[$String,$Int],false)},{prop:"Unix",name:"Unix",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"UnixNano",name:"UnixNano",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"MarshalBinary",name:"MarshalBinary",pkg:"",typ:$funcType([],[DI,$error],false)},{prop:"GobEncode",name:"GobEncode",pkg:"",typ:$funcType([],[DI,$error],false)},{prop:"MarshalJSON",name:"MarshalJSON",pkg:"",typ:$funcType([],[DI,$error],false)},{prop:"MarshalText",name:"MarshalText",pkg:"",typ:$funcType([],[DI,$error],false)},{prop:"Truncate",name:"Truncate",pkg:"",typ:$funcType([BT],[BM],false)},{prop:"Round",name:"Round",pkg:"",typ:$funcType([BT],[BM],false)}];DX.methods=[{prop:"setLoc",name:"setLoc",pkg:"time",typ:$funcType([DL],[],false)},{prop:"UnmarshalBinary",name:"UnmarshalBinary",pkg:"",typ:$funcType([DI],[$error],false)},{prop:"GobDecode",name:"GobDecode",pkg:"",typ:$funcType([DI],[$error],false)},{prop:"UnmarshalJSON",name:"UnmarshalJSON",pkg:"",typ:$funcType([DI],[$error],false)},{prop:"UnmarshalText",name:"UnmarshalText",pkg:"",typ:$funcType([DI],[$error],false)}];BN.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];BP.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];BT.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Nanoseconds",name:"Nanoseconds",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Seconds",name:"Seconds",pkg:"",typ:$funcType([],[$Float64],false)},{prop:"Minutes",name:"Minutes",pkg:"",typ:$funcType([],[$Float64],false)},{prop:"Hours",name:"Hours",pkg:"",typ:$funcType([],[$Float64],false)}];DL.methods=[{prop:"get",name:"get",pkg:"time",typ:$funcType([],[DL],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"lookup",name:"lookup",pkg:"time",typ:$funcType([$Int64],[$String,$Int,$Bool,$Int64,$Int64],false)},{prop:"lookupFirstZone",name:"lookupFirstZone",pkg:"time",typ:$funcType([],[$Int],false)},{prop:"firstZoneUsed",name:"firstZoneUsed",pkg:"time",typ:$funcType([],[$Bool],false)},{prop:"lookupName",name:"lookupName",pkg:"time",typ:$funcType([$String,$Int64],[$Int,$Bool,$Bool],false)}];AF.init("",[{prop:"Layout",name:"Layout",exported:true,typ:$String,tag:""},{prop:"Value",name:"Value",exported:true,typ:$String,tag:""},{prop:"LayoutElem",name:"LayoutElem",exported:true,typ:$String,tag:""},{prop:"ValueElem",name:"ValueElem",exported:true,typ:$String,tag:""},{prop:"Message",name:"Message",exported:true,typ:$String,tag:""}]);BM.init("time",[{prop:"sec",name:"sec",exported:false,typ:$Int64,tag:""},{prop:"nsec",name:"nsec",exported:false,typ:$Int32,tag:""},{prop:"loc",name:"loc",exported:false,typ:DL,tag:""}]);CH.init("time",[{prop:"name",name:"name",exported:false,typ:$String,tag:""},{prop:"zone",name:"zone",exported:false,typ:DC,tag:""},{prop:"tx",name:"tx",exported:false,typ:DD,tag:""},{prop:"cacheStart",name:"cacheStart",exported:false,typ:$Int64,tag:""},{prop:"cacheEnd",name:"cacheEnd",exported:false,typ:$Int64,tag:""},{prop:"cacheZone",name:"cacheZone",exported:false,typ:DE,tag:""}]);CI.init("time",[{prop:"name",name:"name",exported:false,typ:$String,tag:""},{prop:"offset",name:"offset",exported:false,typ:$Int,tag:""},{prop:"isDST",name:"isDST",exported:false,typ:$Bool,tag:""}]);CJ.init("time",[{prop:"when",name:"when",exported:false,typ:$Int64,tag:""},{prop:"index",name:"index",exported:false,typ:$Uint8,tag:""},{prop:"isstd",name:"isstd",exported:false,typ:$Bool,tag:""},{prop:"isutc",name:"isutc",exported:false,typ:$Bool,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=C.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}CL=new CH.ptr("",DC.nil,DD.nil,new $Int64(0,0),new $Int64(0,0),DE.nil);CM=new E.Once.ptr(false,false);R=$toNativeArray($kindInt,[260,265,524,526,528,274]);U=new DF(["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]);V=new DF(["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]);W=new DF(["---","Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]);X=new DF(["---","January","February","March","April","May","June","July","August","September","October","November","December"]);AB=C.New("time: invalid number");AE=C.New("bad value for field");AR=C.New("time: bad [0-9]*");BO=$toNativeArray($kindString,["January","February","March","April","May","June","July","August","September","October","November","December"]);BQ=$toNativeArray($kindString,["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]);AU=$makeMap($String.keyFor,[{k:"ns",v:new $Int64(0,1)},{k:"us",v:new $Int64(0,1000)},{k:"\xC2\xB5s",v:new $Int64(0,1000)},{k:"\xCE\xBCs",v:new $Int64(0,1000)},{k:"ms",v:new $Int64(0,1000000)},{k:"s",v:new $Int64(0,1000000000)},{k:"m",v:new $Int64(13,4165425152)},{k:"h",v:new $Int64(838,817405952)}]);BZ=$toNativeArray($kindInt32,[0,31,59,90,120,151,181,212,243,273,304,334,365]);CK=new CH.ptr("UTC",DC.nil,DD.nil,new $Int64(0,0),new $Int64(0,0),DE.nil);$pkg.UTC=CK;$pkg.Local=CL;l=D.Getenv("ZONEINFO");$s=6;case 6:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}k=l;CO=k[0];CS=C.New("malformed time zone information");F();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["unicode/utf8"]=(function(){var $pkg={},$init,B,A,C,F,G,H,I,J,K,L,M,N,Q;B=$pkg.acceptRange=$newType(0,$kindStruct,"utf8.acceptRange",true,"unicode/utf8",false,function(lo_,hi_){this.$val=this;if(arguments.length===0){this.lo=0;this.hi=0;return;}this.lo=lo_;this.hi=hi_;});F=function(a){var $ptr,a,aa,ab,ac,ad,ae,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;b=0;c=0;d=a.$length;if(d<1){e=65533;f=0;b=e;c=f;return[b,c];}g=(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]);h=((g<0||g>=A.length)?($throwRuntimeError("index out of range"),undefined):A[g]);if(h>=240){i=((h>>0)<<31>>0)>>31>>0;j=((((0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0])>>0)&~i)>>0)|(65533&i);k=1;b=j;c=k;return[b,c];}l=(h&7)>>>0;n=$clone((m=h>>>4<<24>>>24,((m<0||m>=C.length)?($throwRuntimeError("index out of range"),undefined):C[m])),B);if(d<(l>>0)){o=65533;p=1;b=o;c=p;return[b,c];}q=(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]);if(q<n.lo||n.hi<q){r=65533;s=1;b=r;c=s;return[b,c];}if(l===2){t=((((g&31)>>>0)>>0)<<6>>0)|(((q&63)>>>0)>>0);u=2;b=t;c=u;return[b,c];}v=(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]);if(v<128||191<v){w=65533;x=1;b=w;c=x;return[b,c];}if(l===3){y=(((((g&15)>>>0)>>0)<<12>>0)|((((q&63)>>>0)>>0)<<6>>0))|(((v&63)>>>0)>>0);z=3;b=y;c=z;return[b,c];}aa=(3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]);if(aa<128||191<aa){ab=65533;ac=1;b=ab;c=ac;return[b,c];}ad=((((((g&7)>>>0)>>0)<<18>>0)|((((q&63)>>>0)>>0)<<12>>0))|((((v&63)>>>0)>>0)<<6>>0))|(((aa&63)>>>0)>>0);ae=4;b=ad;c=ae;return[b,c];};$pkg.DecodeRune=F;G=function(a){var $ptr,a,aa,ab,ac,ad,ae,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;b=0;c=0;d=a.length;if(d<1){e=65533;f=0;b=e;c=f;return[b,c];}g=a.charCodeAt(0);h=((g<0||g>=A.length)?($throwRuntimeError("index out of range"),undefined):A[g]);if(h>=240){i=((h>>0)<<31>>0)>>31>>0;j=(((a.charCodeAt(0)>>0)&~i)>>0)|(65533&i);k=1;b=j;c=k;return[b,c];}l=(h&7)>>>0;n=$clone((m=h>>>4<<24>>>24,((m<0||m>=C.length)?($throwRuntimeError("index out of range"),undefined):C[m])),B);if(d<(l>>0)){o=65533;p=1;b=o;c=p;return[b,c];}q=a.charCodeAt(1);if(q<n.lo||n.hi<q){r=65533;s=1;b=r;c=s;return[b,c];}if(l===2){t=((((g&31)>>>0)>>0)<<6>>0)|(((q&63)>>>0)>>0);u=2;b=t;c=u;return[b,c];}v=a.charCodeAt(2);if(v<128||191<v){w=65533;x=1;b=w;c=x;return[b,c];}if(l===3){y=(((((g&15)>>>0)>>0)<<12>>0)|((((q&63)>>>0)>>0)<<6>>0))|(((v&63)>>>0)>>0);z=3;b=y;c=z;return[b,c];}aa=a.charCodeAt(3);if(aa<128||191<aa){ab=65533;ac=1;b=ab;c=ac;return[b,c];}ad=((((((g&7)>>>0)>>0)<<18>>0)|((((q&63)>>>0)>>0)<<12>>0))|((((v&63)>>>0)>>0)<<6>>0))|(((aa&63)>>>0)>>0);ae=4;b=ad;c=ae;return[b,c];};$pkg.DecodeRuneInString=G;H=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;b=0;c=0;d=a.$length;if(d===0){e=65533;f=0;b=e;c=f;return[b,c];}g=d-1>>0;b=(((g<0||g>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+g])>>0);if(b<128){h=b;i=1;b=h;c=i;return[b,c];}j=d-4>>0;if(j<0){j=0;}g=g-(1)>>0;while(true){if(!(g>=j)){break;}if(N(((g<0||g>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+g]))){break;}g=g-(1)>>0;}if(g<0){g=0;}k=F($subslice(a,g,d));b=k[0];c=k[1];if(!(((g+c>>0)===d))){l=65533;m=1;b=l;c=m;return[b,c];}n=b;o=c;b=n;c=o;return[b,c];};$pkg.DecodeLastRune=H;I=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;b=0;c=0;d=a.length;if(d===0){e=65533;f=0;b=e;c=f;return[b,c];}g=d-1>>0;b=(a.charCodeAt(g)>>0);if(b<128){h=b;i=1;b=h;c=i;return[b,c];}j=d-4>>0;if(j<0){j=0;}g=g-(1)>>0;while(true){if(!(g>=j)){break;}if(N(a.charCodeAt(g))){break;}g=g-(1)>>0;}if(g<0){g=0;}k=G($substring(a,g,d));b=k[0];c=k[1];if(!(((g+c>>0)===d))){l=65533;m=1;b=l;c=m;return[b,c];}n=b;o=c;b=n;c=o;return[b,c];};$pkg.DecodeLastRuneInString=I;J=function(a){var $ptr,a;if(a<0){return-1;}else if(a<=127){return 1;}else if(a<=2047){return 2;}else if(55296<=a&&a<=57343){return-1;}else if(a<=65535){return 3;}else if(a<=1114111){return 4;}return-1;};$pkg.RuneLen=J;K=function(a,b){var $ptr,a,b,c;c=(b>>>0);if(c<=127){(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=(b<<24>>>24));return 1;}else if(c<=2047){$unused((1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]));(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=((192|((b>>6>>0)<<24>>>24))>>>0));(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=((128|(((b<<24>>>24)&63)>>>0))>>>0));return 2;}else if((c>1114111)||(55296<=c&&c<=57343)){b=65533;$unused((2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]));(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=((224|((b>>12>>0)<<24>>>24))>>>0));(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=((128|((((b>>6>>0)<<24>>>24)&63)>>>0))>>>0));(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]=((128|(((b<<24>>>24)&63)>>>0))>>>0));return 3;}else if(c<=65535){$unused((2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]));(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=((224|((b>>12>>0)<<24>>>24))>>>0));(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=((128|((((b>>6>>0)<<24>>>24)&63)>>>0))>>>0));(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]=((128|(((b<<24>>>24)&63)>>>0))>>>0));return 3;}else{$unused((3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]));(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=((240|((b>>18>>0)<<24>>>24))>>>0));(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=((128|((((b>>12>>0)<<24>>>24)&63)>>>0))>>>0));(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]=((128|((((b>>6>>0)<<24>>>24)&63)>>>0))>>>0));(3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]=((128|(((b<<24>>>24)&63)>>>0))>>>0));return 4;}};$pkg.EncodeRune=K;L=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;b=a.$length;c=0;d=0;while(true){if(!(d<b)){break;}c=c+(1)>>0;e=((d<0||d>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+d]);if(e<128){d=d+(1)>>0;continue;}f=((e<0||e>=A.length)?($throwRuntimeError("index out of range"),undefined):A[e]);if(f===241){d=d+(1)>>0;continue;}g=(((f&7)>>>0)>>0);if((d+g>>0)>b){d=d+(1)>>0;continue;}i=$clone((h=f>>>4<<24>>>24,((h<0||h>=C.length)?($throwRuntimeError("index out of range"),undefined):C[h])),B);k=(j=d+1>>0,((j<0||j>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+j]));if(k<i.lo||i.hi<k){g=1;}else if(g===2){}else{m=(l=d+2>>0,((l<0||l>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+l]));if(m<128||191<m){g=1;}else if(g===3){}else{o=(n=d+3>>0,((n<0||n>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+n]));if(o<128||191<o){g=1;}}}d=d+(g)>>0;}return c;};$pkg.RuneCount=L;M=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l;b=0;c=a.length;d=0;while(true){if(!(d<c)){break;}e=a.charCodeAt(d);if(e<128){d=d+(1)>>0;b=b+(1)>>0;continue;}f=((e<0||e>=A.length)?($throwRuntimeError("index out of range"),undefined):A[e]);if(f===241){d=d+(1)>>0;b=b+(1)>>0;continue;}g=(((f&7)>>>0)>>0);if((d+g>>0)>c){d=d+(1)>>0;b=b+(1)>>0;continue;}i=$clone((h=f>>>4<<24>>>24,((h<0||h>=C.length)?($throwRuntimeError("index out of range"),undefined):C[h])),B);j=a.charCodeAt((d+1>>0));if(j<i.lo||i.hi<j){g=1;}else if(g===2){}else{k=a.charCodeAt((d+2>>0));if(k<128||191<k){g=1;}else if(g===3){}else{l=a.charCodeAt((d+3>>0));if(l<128||191<l){g=1;}}}d=d+(g)>>0;b=b+(1)>>0;}b=b;return b;};$pkg.RuneCountInString=M;N=function(a){var $ptr,a;return!((((a&192)>>>0)===128));};$pkg.RuneStart=N;Q=function(a){var $ptr,a;if(0<=a&&a<55296){return true;}else if(57343<a&&a<=1114111){return true;}return false;};$pkg.ValidRune=Q;B.init("unicode/utf8",[{prop:"lo",name:"lo",exported:false,typ:$Uint8,tag:""},{prop:"hi",name:"hi",exported:false,typ:$Uint8,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:A=$toNativeArray($kindUint8,[240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,19,3,3,3,3,3,3,3,3,3,3,3,3,35,3,3,52,4,4,4,68,241,241,241,241,241,241,241,241,241,241,241]);C=$toNativeArray($kindStruct,[new B.ptr(128,191),new B.ptr(160,191),new B.ptr(128,159),new B.ptr(144,191),new B.ptr(128,143)]);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["strconv"]=(function(){var $pkg={},$init,B,A,C,S,Y,AC,AH,AO,AX,CS,CT,CU,CV,CW,CX,CY,CZ,DA,DB,DC,DD,DE,DF,DG,DH,DI,G,K,L,M,AD,AI,AJ,AK,AP,CQ,AQ,CR,BD,BE,BF,BG,BH,BN,D,E,H,I,J,N,O,P,Q,R,T,U,V,W,X,Z,AA,AB,AE,AF,AG,AL,AM,AN,AR,AS,AT,AU,AV,AW,AY,AZ,BA,BB,BC,BI,BJ,BK,BM,BO,BP,BR,BS,BT,BU,BV,BW,BX,CB,CD,CG,CH,CI,CJ,CK,CL,CM,CN,CP;B=$packages["errors"];A=$packages["math"];C=$packages["unicode/utf8"];S=$pkg.NumError=$newType(0,$kindStruct,"strconv.NumError",true,"strconv",true,function(Func_,Num_,Err_){this.$val=this;if(arguments.length===0){this.Func="";this.Num="";this.Err=$ifaceNil;return;}this.Func=Func_;this.Num=Num_;this.Err=Err_;});Y=$pkg.decimal=$newType(0,$kindStruct,"strconv.decimal",true,"strconv",false,function(d_,nd_,dp_,neg_,trunc_){this.$val=this;if(arguments.length===0){this.d=CY.zero();this.nd=0;this.dp=0;this.neg=false;this.trunc=false;return;}this.d=d_;this.nd=nd_;this.dp=dp_;this.neg=neg_;this.trunc=trunc_;});AC=$pkg.leftCheat=$newType(0,$kindStruct,"strconv.leftCheat",true,"strconv",false,function(delta_,cutoff_){this.$val=this;if(arguments.length===0){this.delta=0;this.cutoff="";return;}this.delta=delta_;this.cutoff=cutoff_;});AH=$pkg.extFloat=$newType(0,$kindStruct,"strconv.extFloat",true,"strconv",false,function(mant_,exp_,neg_){this.$val=this;if(arguments.length===0){this.mant=new $Uint64(0,0);this.exp=0;this.neg=false;return;}this.mant=mant_;this.exp=exp_;this.neg=neg_;});AO=$pkg.floatInfo=$newType(0,$kindStruct,"strconv.floatInfo",true,"strconv",false,function(mantbits_,expbits_,bias_){this.$val=this;if(arguments.length===0){this.mantbits=0;this.expbits=0;this.bias=0;return;}this.mantbits=mantbits_;this.expbits=expbits_;this.bias=bias_;});AX=$pkg.decimalSlice=$newType(0,$kindStruct,"strconv.decimalSlice",true,"strconv",false,function(d_,nd_,dp_,neg_){this.$val=this;if(arguments.length===0){this.d=DA.nil;this.nd=0;this.dp=0;this.neg=false;return;}this.d=d_;this.nd=nd_;this.dp=dp_;this.neg=neg_;});CS=$sliceType($Int);CT=$sliceType($Float64);CU=$sliceType($Float32);CV=$sliceType(AC);CW=$sliceType($Uint16);CX=$sliceType($Uint32);CY=$arrayType($Uint8,800);CZ=$ptrType(S);DA=$sliceType($Uint8);DB=$arrayType($Uint8,24);DC=$arrayType($Uint8,32);DD=$ptrType(AO);DE=$arrayType($Uint8,65);DF=$arrayType($Uint8,4);DG=$ptrType(Y);DH=$ptrType(AX);DI=$ptrType(AH);D=function(a){var $ptr,a,b;b=a;if(b===("1")||b===("t")||b===("T")||b===("true")||b===("TRUE")||b===("True")){return[true,$ifaceNil];}else if(b===("0")||b===("f")||b===("F")||b===("false")||b===("FALSE")||b===("False")){return[false,$ifaceNil];}return[false,T("ParseBool",a)];};$pkg.ParseBool=D;E=function(a){var $ptr,a;if(a){return"true";}return"false";};$pkg.FormatBool=E;H=function(a,b){var $ptr,a,b,c,d,e;if(!((a.length===b.length))){return false;}c=0;while(true){if(!(c<a.length)){break;}d=a.charCodeAt(c);if(65<=d&&d<=90){d=d+(32)<<24>>>24;}e=b.charCodeAt(c);if(65<=e&&e<=90){e=e+(32)<<24>>>24;}if(!((d===e))){return false;}c=c+(1)>>0;}return true;};I=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l;b=0;c=false;if(a.length===0){return[b,c];}d=a.charCodeAt(0);if(d===(43)){if(H(a,"+inf")||H(a,"+infinity")){e=A.Inf(1);f=true;b=e;c=f;return[b,c];}}else if(d===(45)){if(H(a,"-inf")||H(a,"-infinity")){g=A.Inf(-1);h=true;b=g;c=h;return[b,c];}}else if((d===(110))||(d===(78))){if(H(a,"nan")){i=A.NaN();j=true;b=i;c=j;return[b,c];}}else if((d===(105))||(d===(73))){if(H(a,"inf")||H(a,"infinity")){k=A.Inf(1);l=true;b=k;c=l;return[b,c];}}else{return[b,c];}return[b,c];};Y.ptr.prototype.set=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j;b=false;c=this;d=0;c.neg=false;c.trunc=false;if(d>=a.length){return b;}if((a.charCodeAt(d)===43)){d=d+(1)>>0;}else if((a.charCodeAt(d)===45)){c.neg=true;d=d+(1)>>0;}e=false;f=false;while(true){if(!(d<a.length)){break;}if((a.charCodeAt(d)===46)){if(e){return b;}e=true;c.dp=c.nd;d=d+(1)>>0;continue;}else if(48<=a.charCodeAt(d)&&a.charCodeAt(d)<=57){f=true;if((a.charCodeAt(d)===48)&&(c.nd===0)){c.dp=c.dp-(1)>>0;d=d+(1)>>0;continue;}if(c.nd<800){(g=c.d,h=c.nd,((h<0||h>=g.length)?($throwRuntimeError("index out of range"),undefined):g[h]=a.charCodeAt(d)));c.nd=c.nd+(1)>>0;}else if(!((a.charCodeAt(d)===48))){c.trunc=true;}d=d+(1)>>0;continue;}break;}if(!f){return b;}if(!e){c.dp=c.nd;}if(d<a.length&&((a.charCodeAt(d)===101)||(a.charCodeAt(d)===69))){d=d+(1)>>0;if(d>=a.length){return b;}i=1;if(a.charCodeAt(d)===43){d=d+(1)>>0;}else if(a.charCodeAt(d)===45){d=d+(1)>>0;i=-1;}if(d>=a.length||a.charCodeAt(d)<48||a.charCodeAt(d)>57){return b;}j=0;while(true){if(!(d<a.length&&48<=a.charCodeAt(d)&&a.charCodeAt(d)<=57)){break;}if(j<10000){j=(($imul(j,10))+(a.charCodeAt(d)>>0)>>0)-48>>0;}d=d+(1)>>0;}c.dp=c.dp+(($imul(j,i)))>>0;}if(!((d===a.length))){return b;}b=true;return b;};Y.prototype.set=function(a){return this.$val.set(a);};J=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q;b=new $Uint64(0,0);c=0;d=false;e=false;f=false;g=0;if(g>=a.length){return[b,c,d,e,f];}if((a.charCodeAt(g)===43)){g=g+(1)>>0;}else if((a.charCodeAt(g)===45)){d=true;g=g+(1)>>0;}h=false;i=false;j=0;k=0;l=0;while(true){if(!(g<a.length)){break;}m=a.charCodeAt(g);n=true;if(n===((m===46))){if(h){return[b,c,d,e,f];}h=true;l=j;g=g+(1)>>0;continue;}else if(n===(48<=m&&m<=57)){i=true;if((m===48)&&(j===0)){l=l-(1)>>0;g=g+(1)>>0;continue;}j=j+(1)>>0;if(k<19){b=$mul64(b,(new $Uint64(0,10)));b=(o=new $Uint64(0,(m-48<<24>>>24)),new $Uint64(b.$high+o.$high,b.$low+o.$low));k=k+(1)>>0;}else if(!((a.charCodeAt(g)===48))){e=true;}g=g+(1)>>0;continue;}break;}if(!i){return[b,c,d,e,f];}if(!h){l=j;}if(g<a.length&&((a.charCodeAt(g)===101)||(a.charCodeAt(g)===69))){g=g+(1)>>0;if(g>=a.length){return[b,c,d,e,f];}p=1;if(a.charCodeAt(g)===43){g=g+(1)>>0;}else if(a.charCodeAt(g)===45){g=g+(1)>>0;p=-1;}if(g>=a.length||a.charCodeAt(g)<48||a.charCodeAt(g)>57){return[b,c,d,e,f];}q=0;while(true){if(!(g<a.length&&48<=a.charCodeAt(g)&&a.charCodeAt(g)<=57)){break;}if(q<10000){q=(($imul(q,10))+(a.charCodeAt(g)>>0)>>0)-48>>0;}g=g+(1)>>0;}l=l+(($imul(q,p)))>>0;}if(!((g===a.length))){return[b,c,d,e,f];}if(!((b.$high===0&&b.$low===0))){c=l-k>>0;}f=true;return[b,c,d,e,f];};Y.ptr.prototype.floatBits=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,$s;$s=0;s:while(true){switch($s){case 0:b=new $Uint64(0,0);c=false;d=this;e=0;f=new $Uint64(0,0);if(d.nd===0){$s=1;continue;}$s=2;continue;case 1:f=new $Uint64(0,0);e=a.bias;$s=3;continue;case 2:if(d.dp>310){$s=4;continue;}$s=5;continue;case 4:$s=6;continue;case 5:if(d.dp<-330){$s=7;continue;}$s=8;continue;case 7:f=new $Uint64(0,0);e=a.bias;$s=3;continue;case 8:e=0;while(true){if(!(d.dp>0)){break;}g=0;if(d.dp>=K.$length){g=27;}else{g=(h=d.dp,((h<0||h>=K.$length)?($throwRuntimeError("index out of range"),undefined):K.$array[K.$offset+h]));}d.Shift(-g);e=e+(g)>>0;}while(true){if(!(d.dp<0||(d.dp===0)&&d.d[0]<53)){break;}i=0;if(-d.dp>=K.$length){i=27;}else{i=(j=-d.dp,((j<0||j>=K.$length)?($throwRuntimeError("index out of range"),undefined):K.$array[K.$offset+j]));}d.Shift(i);e=e-(i)>>0;}e=e-(1)>>0;if(e<(a.bias+1>>0)){k=(a.bias+1>>0)-e>>0;d.Shift(-k);e=e+(k)>>0;}if((e-a.bias>>0)>=(((l=a.expbits,l<32?(1<<l):0)>>0)-1>>0)){$s=9;continue;}$s=10;continue;case 9:$s=6;continue;case 10:d.Shift(((1+a.mantbits>>>0)>>0));f=d.RoundedInteger();if((m=$shiftLeft64(new $Uint64(0,2),a.mantbits),(f.$high===m.$high&&f.$low===m.$low))){$s=11;continue;}$s=12;continue;case 11:f=$shiftRightUint64(f,(1));e=e+(1)>>0;if((e-a.bias>>0)>=(((n=a.expbits,n<32?(1<<n):0)>>0)-1>>0)){$s=13;continue;}$s=14;continue;case 13:$s=6;continue;case 14:case 12:if((o=(p=$shiftLeft64(new $Uint64(0,1),a.mantbits),new $Uint64(f.$high&p.$high,(f.$low&p.$low)>>>0)),(o.$high===0&&o.$low===0))){e=a.bias;}$s=3;continue;case 6:f=new $Uint64(0,0);e=(((q=a.expbits,q<32?(1<<q):0)>>0)-1>>0)+a.bias>>0;c=true;case 3:t=(r=(s=$shiftLeft64(new $Uint64(0,1),a.mantbits),new $Uint64(s.$high-0,s.$low-1)),new $Uint64(f.$high&r.$high,(f.$low&r.$low)>>>0));t=(u=$shiftLeft64(new $Uint64(0,(((e-a.bias>>0))&((((v=a.expbits,v<32?(1<<v):0)>>0)-1>>0)))),a.mantbits),new $Uint64(t.$high|u.$high,(t.$low|u.$low)>>>0));if(d.neg){t=(w=$shiftLeft64($shiftLeft64(new $Uint64(0,1),a.mantbits),a.expbits),new $Uint64(t.$high|w.$high,(t.$low|w.$low)>>>0));}x=t;y=c;b=x;c=y;$s=-1;return[b,c];}return;}};Y.prototype.floatBits=function(a){return this.$val.floatBits(a);};N=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n;d=0;e=false;if(!((f=$shiftRightUint64(a,AQ.mantbits),(f.$high===0&&f.$low===0)))){return[d,e];}d=$flatten64(a);if(c){d=-d;}if((b===0)){g=d;h=true;d=g;e=h;return[d,e];}else if(b>0&&b<=37){if(b>22){d=d*((i=b-22>>0,((i<0||i>=L.$length)?($throwRuntimeError("index out of range"),undefined):L.$array[L.$offset+i])));b=22;}if(d>1e+15||d<-1e+15){return[d,e];}j=d*((b<0||b>=L.$length)?($throwRuntimeError("index out of range"),undefined):L.$array[L.$offset+b]);k=true;d=j;e=k;return[d,e];}else if(b<0&&b>=-22){l=d/(m=-b,((m<0||m>=L.$length)?($throwRuntimeError("index out of range"),undefined):L.$array[L.$offset+m]));n=true;d=l;e=n;return[d,e];}return[d,e];};O=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n;d=0;e=false;if(!((f=$shiftRightUint64(a,AP.mantbits),(f.$high===0&&f.$low===0)))){return[d,e];}d=$flatten64(a);if(c){d=-d;}if((b===0)){g=d;h=true;d=g;e=h;return[d,e];}else if(b>0&&b<=17){if(b>10){d=$fround(d*((i=b-10>>0,((i<0||i>=M.$length)?($throwRuntimeError("index out of range"),undefined):M.$array[M.$offset+i]))));b=10;}if(d>1e+07||d<-1e+07){return[d,e];}j=$fround(d*((b<0||b>=M.$length)?($throwRuntimeError("index out of range"),undefined):M.$array[M.$offset+b]));k=true;d=j;e=k;return[d,e];}else if(b<0&&b>=-10){l=$fround(d/(m=-b,((m<0||m>=M.$length)?($throwRuntimeError("index out of range"),undefined):M.$array[M.$offset+m])));n=true;d=l;e=n;return[d,e];}return[d,e];};P=function(a){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;b=0;c=$ifaceNil;d=I(a);e=d[0];f=d[1];if(f){g=$fround(e);h=$ifaceNil;b=g;c=h;return[b,c];}if(G){i=J(a);j=i[0];k=i[1];l=i[2];m=i[3];n=i[4];if(n){if(!m){o=O(j,k,l);p=o[0];q=o[1];if(q){r=p;s=$ifaceNil;b=r;c=s;return[b,c];}}t=new AH.ptr(new $Uint64(0,0),0,false);u=t.AssignDecimal(j,k,l,m,AP);if(u){v=t.floatBits(AP);w=v[0];x=v[1];b=A.Float32frombits((w.$low>>>0));if(x){c=U("ParseFloat",a);}y=b;z=c;b=y;c=z;return[b,c];}}}aa=new Y.ptr(CY.zero(),0,0,false,false);if(!aa.set(a)){ab=0;ac=T("ParseFloat",a);b=ab;c=ac;return[b,c];}ad=aa.floatBits(AP);ae=ad[0];af=ad[1];b=A.Float32frombits((ae.$low>>>0));if(af){c=U("ParseFloat",a);}ag=b;ah=c;b=ag;c=ah;return[b,c];};Q=function(a){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;b=0;c=$ifaceNil;d=I(a);e=d[0];f=d[1];if(f){g=e;h=$ifaceNil;b=g;c=h;return[b,c];}if(G){i=J(a);j=i[0];k=i[1];l=i[2];m=i[3];n=i[4];if(n){if(!m){o=N(j,k,l);p=o[0];q=o[1];if(q){r=p;s=$ifaceNil;b=r;c=s;return[b,c];}}t=new AH.ptr(new $Uint64(0,0),0,false);u=t.AssignDecimal(j,k,l,m,AQ);if(u){v=t.floatBits(AQ);w=v[0];x=v[1];b=A.Float64frombits(w);if(x){c=U("ParseFloat",a);}y=b;z=c;b=y;c=z;return[b,c];}}}aa=new Y.ptr(CY.zero(),0,0,false,false);if(!aa.set(a)){ab=0;ac=T("ParseFloat",a);b=ab;c=ac;return[b,c];}ad=aa.floatBits(AQ);ae=ad[0];af=ad[1];b=A.Float64frombits(ae);if(af){c=U("ParseFloat",a);}ag=b;ah=c;b=ag;c=ah;return[b,c];};R=function(a,b){var $ptr,a,b,c,d,e;if(b===32){c=P(a);d=c[0];e=c[1];return[d,e];}return Q(a);};$pkg.ParseFloat=R;S.ptr.prototype.Error=function(){var $ptr,a,b,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.Err.Error();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=-1;return"strconv."+a.Func+": "+"parsing "+BU(a.Num)+": "+b;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.Error};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};S.prototype.Error=function(){return this.$val.Error();};T=function(a,b){var $ptr,a,b;return new S.ptr(a,b,$pkg.ErrSyntax);};U=function(a,b){var $ptr,a,b;return new S.ptr(a,b,$pkg.ErrRange);};V=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,$s;$s=0;s:while(true){switch($s){case 0:d=new $Uint64(0,0);e=$ifaceNil;f=new $Uint64(0,0);g=new $Uint64(0,0);h=f;i=g;if(c===0){c=32;}j=0;if(a.length<1){$s=2;continue;}if(2<=b&&b<=36){$s=3;continue;}if((b===0)){$s=4;continue;}$s=5;continue;case 2:e=$pkg.ErrSyntax;$s=7;continue;$s=6;continue;case 3:$s=6;continue;case 4:if((a.charCodeAt(0)===48)&&a.length>1&&((a.charCodeAt(1)===120)||(a.charCodeAt(1)===88))){$s=9;continue;}if((a.charCodeAt(0)===48)){$s=10;continue;}$s=11;continue;case 9:if(a.length<3){$s=13;continue;}$s=14;continue;case 13:e=$pkg.ErrSyntax;$s=7;continue;case 14:b=16;j=2;$s=12;continue;case 10:b=8;j=1;$s=12;continue;case 11:b=10;case 12:case 8:$s=6;continue;case 5:e=B.New("invalid base "+BK(b));$s=7;continue;case 6:case 1:k=b;if(k===(10)){h=new $Uint64(429496729,2576980378);}else if(k===(16)){h=new $Uint64(268435456,0);}else{h=(l=$div64(new $Uint64(4294967295,4294967295),new $Uint64(0,b),false),new $Uint64(l.$high+0,l.$low+1));}i=(m=$shiftLeft64(new $Uint64(0,1),(c>>>0)),new $Uint64(m.$high-0,m.$low-1));case 15:if(!(j<a.length)){$s=16;continue;}n=0;o=a.charCodeAt(j);if(48<=o&&o<=57){$s=18;continue;}if(97<=o&&o<=122){$s=19;continue;}if(65<=o&&o<=90){$s=20;continue;}$s=21;continue;case 18:n=o-48<<24>>>24;$s=22;continue;case 19:n=(o-97<<24>>>24)+10<<24>>>24;$s=22;continue;case 20:n=(o-65<<24>>>24)+10<<24>>>24;$s=22;continue;case 21:d=new $Uint64(0,0);e=$pkg.ErrSyntax;$s=7;continue;case 22:case 17:if(n>=(b<<24>>>24)){$s=23;continue;}$s=24;continue;case 23:d=new $Uint64(0,0);e=$pkg.ErrSyntax;$s=7;continue;case 24:if((d.$high>h.$high||(d.$high===h.$high&&d.$low>=h.$low))){$s=25;continue;}$s=26;continue;case 25:d=new $Uint64(4294967295,4294967295);e=$pkg.ErrRange;$s=7;continue;case 26:d=$mul64(d,(new $Uint64(0,b)));q=(p=new $Uint64(0,n),new $Uint64(d.$high+p.$high,d.$low+p.$low));if((q.$high<d.$high||(q.$high===d.$high&&q.$low<d.$low))||(q.$high>i.$high||(q.$high===i.$high&&q.$low>i.$low))){$s=27;continue;}$s=28;continue;case 27:d=new $Uint64(4294967295,4294967295);e=$pkg.ErrRange;$s=7;continue;case 28:d=q;j=j+(1)>>0;$s=15;continue;case 16:$s=-1;return[d,$ifaceNil];case 7:$s=-1;return[d,new S.ptr("ParseUint",a,e)];$s=-1;return[new $Uint64(0,0),$ifaceNil];}return;}};$pkg.ParseUint=V;W=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w;d=new $Int64(0,0);e=$ifaceNil;if(c===0){c=32;}if(a.length===0){f=new $Int64(0,0);g=T("ParseInt",a);d=f;e=g;return[d,e];}h=a;i=false;if(a.charCodeAt(0)===43){a=$substring(a,1);}else if(a.charCodeAt(0)===45){i=true;a=$substring(a,1);}j=new $Uint64(0,0);k=V(a,b,c);j=k[0];e=k[1];if(!($interfaceIsEqual(e,$ifaceNil))&&!($interfaceIsEqual($assertType(e,CZ).Err,$pkg.ErrRange))){$assertType(e,CZ).Func="ParseInt";$assertType(e,CZ).Num=h;l=new $Int64(0,0);m=e;d=l;e=m;return[d,e];}n=$shiftLeft64(new $Uint64(0,1),((c-1>>0)>>>0));if(!i&&(j.$high>n.$high||(j.$high===n.$high&&j.$low>=n.$low))){o=(p=new $Uint64(n.$high-0,n.$low-1),new $Int64(p.$high,p.$low));q=U("ParseInt",h);d=o;e=q;return[d,e];}if(i&&(j.$high>n.$high||(j.$high===n.$high&&j.$low>n.$low))){r=(s=new $Int64(n.$high,n.$low),new $Int64(-s.$high,-s.$low));t=U("ParseInt",h);d=r;e=t;return[d,e];}u=new $Int64(j.$high,j.$low);if(i){u=new $Int64(-u.$high,-u.$low);}v=u;w=$ifaceNil;d=v;e=w;return[d,e];};$pkg.ParseInt=W;X=function(a){var $ptr,a,b,c,d,e,f,g;b=W(a,10,0);c=b[0];d=b[1];e=$assertType(d,CZ,true);f=e[0];g=e[1];if(g){f.Func="Atoi";}return[((c.$low+((c.$high>>31)*4294967296))>>0),d];};$pkg.Atoi=X;Y.ptr.prototype.String=function(){var $ptr,a,b,c,d;a=this;b=10+a.nd>>0;if(a.dp>0){b=b+(a.dp)>>0;}if(a.dp<0){b=b+(-a.dp)>>0;}c=$makeSlice(DA,b);d=0;if((a.nd===0)){return"0";}else if(a.dp<=0){((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]=48);d=d+(1)>>0;((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]=46);d=d+(1)>>0;d=d+(Z($subslice(c,d,(d+-a.dp>>0))))>>0;d=d+($copySlice($subslice(c,d),$subslice(new DA(a.d),0,a.nd)))>>0;}else if(a.dp<a.nd){d=d+($copySlice($subslice(c,d),$subslice(new DA(a.d),0,a.dp)))>>0;((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]=46);d=d+(1)>>0;d=d+($copySlice($subslice(c,d),$subslice(new DA(a.d),a.dp,a.nd)))>>0;}else{d=d+($copySlice($subslice(c,d),$subslice(new DA(a.d),0,a.nd)))>>0;d=d+(Z($subslice(c,d,((d+a.dp>>0)-a.nd>>0))))>>0;}return $bytesToString($subslice(c,0,d));};Y.prototype.String=function(){return this.$val.String();};Z=function(a){var $ptr,a,b,c,d;b=a;c=0;while(true){if(!(c<b.$length)){break;}d=c;((d<0||d>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+d]=48);c++;}return a.$length;};AA=function(a){var $ptr,a,b,c;while(true){if(!(a.nd>0&&((b=a.d,c=a.nd-1>>0,((c<0||c>=b.length)?($throwRuntimeError("index out of range"),undefined):b[c]))===48))){break;}a.nd=a.nd-(1)>>0;}if(a.nd===0){a.dp=0;}};Y.ptr.prototype.Assign=function(a){var $ptr,a,b,c,d,e,f,g,h;b=this;c=DB.zero();d=0;while(true){if(!((a.$high>0||(a.$high===0&&a.$low>0)))){break;}e=$div64(a,new $Uint64(0,10),false);a=(f=$mul64(new $Uint64(0,10),e),new $Uint64(a.$high-f.$high,a.$low-f.$low));((d<0||d>=c.length)?($throwRuntimeError("index out of range"),undefined):c[d]=(new $Uint64(a.$high+0,a.$low+48).$low<<24>>>24));d=d+(1)>>0;a=e;}b.nd=0;d=d-(1)>>0;while(true){if(!(d>=0)){break;}(g=b.d,h=b.nd,((h<0||h>=g.length)?($throwRuntimeError("index out of range"),undefined):g[h]=((d<0||d>=c.length)?($throwRuntimeError("index out of range"),undefined):c[d])));b.nd=b.nd+(1)>>0;d=d-(1)>>0;}b.dp=b.nd;AA(b);};Y.prototype.Assign=function(a){return this.$val.Assign(a);};AB=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s;c=0;d=0;e=0;while(true){if(!(((f=b,f<32?(e>>>f):0)>>>0)===0)){break;}if(c>=a.nd){if(e===0){a.nd=0;return;}while(true){if(!(((g=b,g<32?(e>>>g):0)>>>0)===0)){break;}e=e*10>>>0;c=c+(1)>>0;}break;}i=((h=a.d,((c<0||c>=h.length)?($throwRuntimeError("index out of range"),undefined):h[c]))>>>0);e=((e*10>>>0)+i>>>0)-48>>>0;c=c+(1)>>0;}a.dp=a.dp-((c-1>>0))>>0;k=(((j=b,j<32?(1<<j):0)>>>0))-1>>>0;while(true){if(!(c<a.nd)){break;}m=((l=a.d,((c<0||c>=l.length)?($throwRuntimeError("index out of range"),undefined):l[c]))>>>0);o=(n=b,n<32?(e>>>n):0)>>>0;e=(e&(k))>>>0;(p=a.d,((d<0||d>=p.length)?($throwRuntimeError("index out of range"),undefined):p[d]=((o+48>>>0)<<24>>>24)));d=d+(1)>>0;e=((e*10>>>0)+m>>>0)-48>>>0;c=c+(1)>>0;}while(true){if(!(e>0)){break;}r=(q=b,q<32?(e>>>q):0)>>>0;e=(e&(k))>>>0;if(d<800){(s=a.d,((d<0||d>=s.length)?($throwRuntimeError("index out of range"),undefined):s[d]=((r+48>>>0)<<24>>>24)));d=d+(1)>>0;}else if(r>0){a.trunc=true;}e=e*10>>>0;}a.nd=d;AA(a);};AE=function(a,b){var $ptr,a,b,c;c=0;while(true){if(!(c<b.length)){break;}if(c>=a.$length){return true;}if(!((((c<0||c>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+c])===b.charCodeAt(c)))){return((c<0||c>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+c])<b.charCodeAt(c);}c=c+(1)>>0;}return false;};AF=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p;c=((b<0||b>=AD.$length)?($throwRuntimeError("index out of range"),undefined):AD.$array[AD.$offset+b]).delta;if(AE($subslice(new DA(a.d),0,a.nd),((b<0||b>=AD.$length)?($throwRuntimeError("index out of range"),undefined):AD.$array[AD.$offset+b]).cutoff)){c=c-(1)>>0;}d=a.nd;e=a.nd+c>>0;f=0;d=d-(1)>>0;while(true){if(!(d>=0)){break;}f=f+(((g=b,g<32?(((((h=a.d,((d<0||d>=h.length)?($throwRuntimeError("index out of range"),undefined):h[d]))>>>0)-48>>>0))<<g):0)>>>0))>>>0;j=(i=f/10,(i===i&&i!==1/0&&i!==-1/0)?i>>>0:$throwRuntimeError("integer divide by zero"));k=f-(10*j>>>0)>>>0;e=e-(1)>>0;if(e<800){(l=a.d,((e<0||e>=l.length)?($throwRuntimeError("index out of range"),undefined):l[e]=((k+48>>>0)<<24>>>24)));}else if(!((k===0))){a.trunc=true;}f=j;d=d-(1)>>0;}while(true){if(!(f>0)){break;}n=(m=f/10,(m===m&&m!==1/0&&m!==-1/0)?m>>>0:$throwRuntimeError("integer divide by zero"));o=f-(10*n>>>0)>>>0;e=e-(1)>>0;if(e<800){(p=a.d,((e<0||e>=p.length)?($throwRuntimeError("index out of range"),undefined):p[e]=((o+48>>>0)<<24>>>24)));}else if(!((o===0))){a.trunc=true;}f=n;}a.nd=a.nd+(c)>>0;if(a.nd>=800){a.nd=800;}a.dp=a.dp+(c)>>0;AA(a);};Y.ptr.prototype.Shift=function(a){var $ptr,a,b;b=this;if((b.nd===0)){}else if(a>0){while(true){if(!(a>28)){break;}AF(b,28);a=a-(28)>>0;}AF(b,(a>>>0));}else if(a<0){while(true){if(!(a<-28)){break;}AB(b,28);a=a+(28)>>0;}AB(b,(-a>>>0));}};Y.prototype.Shift=function(a){return this.$val.Shift(a);};AG=function(a,b){var $ptr,a,b,c,d,e,f,g;if(b<0||b>=a.nd){return false;}if(((c=a.d,((b<0||b>=c.length)?($throwRuntimeError("index out of range"),undefined):c[b]))===53)&&((b+1>>0)===a.nd)){if(a.trunc){return true;}return b>0&&!(((d=(((e=a.d,f=b-1>>0,((f<0||f>=e.length)?($throwRuntimeError("index out of range"),undefined):e[f]))-48<<24>>>24))%2,d===d?d:$throwRuntimeError("integer divide by zero"))===0));}return(g=a.d,((b<0||b>=g.length)?($throwRuntimeError("index out of range"),undefined):g[b]))>=53;};Y.ptr.prototype.Round=function(a){var $ptr,a,b;b=this;if(a<0||a>=b.nd){return;}if(AG(b,a)){b.RoundUp(a);}else{b.RoundDown(a);}};Y.prototype.Round=function(a){return this.$val.Round(a);};Y.ptr.prototype.RoundDown=function(a){var $ptr,a,b;b=this;if(a<0||a>=b.nd){return;}b.nd=a;AA(b);};Y.prototype.RoundDown=function(a){return this.$val.RoundDown(a);};Y.ptr.prototype.RoundUp=function(a){var $ptr,a,b,c,d,e,f,g;b=this;if(a<0||a>=b.nd){return;}c=a-1>>0;while(true){if(!(c>=0)){break;}e=(d=b.d,((c<0||c>=d.length)?($throwRuntimeError("index out of range"),undefined):d[c]));if(e<57){(g=b.d,((c<0||c>=g.length)?($throwRuntimeError("index out of range"),undefined):g[c]=((f=b.d,((c<0||c>=f.length)?($throwRuntimeError("index out of range"),undefined):f[c]))+(1)<<24>>>24)));b.nd=c+1>>0;return;}c=c-(1)>>0;}b.d[0]=49;b.nd=1;b.dp=b.dp+(1)>>0;};Y.prototype.RoundUp=function(a){return this.$val.RoundUp(a);};Y.ptr.prototype.RoundedInteger=function(){var $ptr,a,b,c,d,e,f,g;a=this;if(a.dp>20){return new $Uint64(4294967295,4294967295);}b=0;c=new $Uint64(0,0);b=0;while(true){if(!(b<a.dp&&b<a.nd)){break;}c=(d=$mul64(c,new $Uint64(0,10)),e=new $Uint64(0,((f=a.d,((b<0||b>=f.length)?($throwRuntimeError("index out of range"),undefined):f[b]))-48<<24>>>24)),new $Uint64(d.$high+e.$high,d.$low+e.$low));b=b+(1)>>0;}while(true){if(!(b<a.dp)){break;}c=$mul64(c,(new $Uint64(0,10)));b=b+(1)>>0;}if(AG(a,a.dp)){c=(g=new $Uint64(0,1),new $Uint64(c.$high+g.$high,c.$low+g.$low));}return c;};Y.prototype.RoundedInteger=function(){return this.$val.RoundedInteger();};AH.ptr.prototype.floatBits=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u;b=new $Uint64(0,0);c=false;d=this;d.Normalize();e=d.exp+63>>0;if(e<(a.bias+1>>0)){f=(a.bias+1>>0)-e>>0;d.mant=$shiftRightUint64(d.mant,((f>>>0)));e=e+(f)>>0;}g=$shiftRightUint64(d.mant,((63-a.mantbits>>>0)));if(!((h=(i=d.mant,j=$shiftLeft64(new $Uint64(0,1),((62-a.mantbits>>>0))),new $Uint64(i.$high&j.$high,(i.$low&j.$low)>>>0)),(h.$high===0&&h.$low===0)))){g=(k=new $Uint64(0,1),new $Uint64(g.$high+k.$high,g.$low+k.$low));}if((l=$shiftLeft64(new $Uint64(0,2),a.mantbits),(g.$high===l.$high&&g.$low===l.$low))){g=$shiftRightUint64(g,(1));e=e+(1)>>0;}if((e-a.bias>>0)>=(((m=a.expbits,m<32?(1<<m):0)>>0)-1>>0)){g=new $Uint64(0,0);e=(((p=a.expbits,p<32?(1<<p):0)>>0)-1>>0)+a.bias>>0;c=true;}else if((n=(o=$shiftLeft64(new $Uint64(0,1),a.mantbits),new $Uint64(g.$high&o.$high,(g.$low&o.$low)>>>0)),(n.$high===0&&n.$low===0))){e=a.bias;}b=(q=(r=$shiftLeft64(new $Uint64(0,1),a.mantbits),new $Uint64(r.$high-0,r.$low-1)),new $Uint64(g.$high&q.$high,(g.$low&q.$low)>>>0));b=(s=$shiftLeft64(new $Uint64(0,(((e-a.bias>>0))&((((t=a.expbits,t<32?(1<<t):0)>>0)-1>>0)))),a.mantbits),new $Uint64(b.$high|s.$high,(b.$low|s.$low)>>>0));if(d.neg){b=(u=$shiftLeft64(new $Uint64(0,1),((a.mantbits+a.expbits>>>0))),new $Uint64(b.$high|u.$high,(b.$low|u.$low)>>>0));}return[b,c];};AH.prototype.floatBits=function(a){return this.$val.floatBits(a);};AH.ptr.prototype.AssignComputeBounds=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;e=new AH.ptr(new $Uint64(0,0),0,false);f=new AH.ptr(new $Uint64(0,0),0,false);g=this;g.mant=a;g.exp=b-(d.mantbits>>0)>>0;g.neg=c;if(g.exp<=0&&(h=$shiftLeft64(($shiftRightUint64(a,(-g.exp>>>0))),(-g.exp>>>0)),(a.$high===h.$high&&a.$low===h.$low))){g.mant=$shiftRightUint64(g.mant,((-g.exp>>>0)));g.exp=0;i=$clone(g,AH);j=$clone(g,AH);AH.copy(e,i);AH.copy(f,j);return[e,f];}k=b-d.bias>>0;AH.copy(f,new AH.ptr((l=$mul64(new $Uint64(0,2),g.mant),new $Uint64(l.$high+0,l.$low+1)),g.exp-1>>0,g.neg));if(!((m=$shiftLeft64(new $Uint64(0,1),d.mantbits),(a.$high===m.$high&&a.$low===m.$low)))||(k===1)){AH.copy(e,new AH.ptr((n=$mul64(new $Uint64(0,2),g.mant),new $Uint64(n.$high-0,n.$low-1)),g.exp-1>>0,g.neg));}else{AH.copy(e,new AH.ptr((o=$mul64(new $Uint64(0,4),g.mant),new $Uint64(o.$high-0,o.$low-1)),g.exp-2>>0,g.neg));}return[e,f];};AH.prototype.AssignComputeBounds=function(a,b,c,d){return this.$val.AssignComputeBounds(a,b,c,d);};AH.ptr.prototype.Normalize=function(){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n;a=0;b=this;c=b.mant;d=b.exp;e=c;f=d;if((e.$high===0&&e.$low===0)){a=0;return a;}if((g=$shiftRightUint64(e,32),(g.$high===0&&g.$low===0))){e=$shiftLeft64(e,(32));f=f-(32)>>0;}if((h=$shiftRightUint64(e,48),(h.$high===0&&h.$low===0))){e=$shiftLeft64(e,(16));f=f-(16)>>0;}if((i=$shiftRightUint64(e,56),(i.$high===0&&i.$low===0))){e=$shiftLeft64(e,(8));f=f-(8)>>0;}if((j=$shiftRightUint64(e,60),(j.$high===0&&j.$low===0))){e=$shiftLeft64(e,(4));f=f-(4)>>0;}if((k=$shiftRightUint64(e,62),(k.$high===0&&k.$low===0))){e=$shiftLeft64(e,(2));f=f-(2)>>0;}if((l=$shiftRightUint64(e,63),(l.$high===0&&l.$low===0))){e=$shiftLeft64(e,(1));f=f-(1)>>0;}a=((b.exp-f>>0)>>>0);m=e;n=f;b.mant=m;b.exp=n;return a;};AH.prototype.Normalize=function(){return this.$val.Normalize();};AH.ptr.prototype.Multiply=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x;b=this;c=$shiftRightUint64(b.mant,32);d=new $Uint64(0,(b.mant.$low>>>0));e=c;f=d;g=$shiftRightUint64(a.mant,32);h=new $Uint64(0,(a.mant.$low>>>0));i=g;j=h;k=$mul64(e,j);l=$mul64(f,i);b.mant=(m=(n=$mul64(e,i),o=$shiftRightUint64(k,32),new $Uint64(n.$high+o.$high,n.$low+o.$low)),p=$shiftRightUint64(l,32),new $Uint64(m.$high+p.$high,m.$low+p.$low));u=(q=(r=new $Uint64(0,(k.$low>>>0)),s=new $Uint64(0,(l.$low>>>0)),new $Uint64(r.$high+s.$high,r.$low+s.$low)),t=$shiftRightUint64(($mul64(f,j)),32),new $Uint64(q.$high+t.$high,q.$low+t.$low));u=(v=new $Uint64(0,2147483648),new $Uint64(u.$high+v.$high,u.$low+v.$low));b.mant=(w=b.mant,x=($shiftRightUint64(u,32)),new $Uint64(w.$high+x.$high,w.$low+x.$low));b.exp=(b.exp+a.exp>>0)+64>>0;};AH.prototype.Multiply=function(a){return this.$val.Multiply(a);};AH.ptr.prototype.AssignDecimal=function(a,b,c,d,e){var $ptr,a,aa,ab,ac,ad,ae,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;f=false;g=this;h=0;if(d){h=h+(4)>>0;}g.mant=a;g.exp=0;g.neg=c;j=(i=((b- -348>>0))/8,(i===i&&i!==1/0&&i!==-1/0)?i>>0:$throwRuntimeError("integer divide by zero"));if(b<-348||j>=87){f=false;return f;}l=(k=((b- -348>>0))%8,k===k?k:$throwRuntimeError("integer divide by zero"));if(l<19&&(m=(n=19-l>>0,((n<0||n>=AK.length)?($throwRuntimeError("index out of range"),undefined):AK[n])),(a.$high<m.$high||(a.$high===m.$high&&a.$low<m.$low)))){g.mant=$mul64(g.mant,(((l<0||l>=AK.length)?($throwRuntimeError("index out of range"),undefined):AK[l])));g.Normalize();}else{g.Normalize();g.Multiply($clone(((l<0||l>=AI.length)?($throwRuntimeError("index out of range"),undefined):AI[l]),AH));h=h+(4)>>0;}g.Multiply($clone(((j<0||j>=AJ.length)?($throwRuntimeError("index out of range"),undefined):AJ[j]),AH));if(h>0){h=h+(1)>>0;}h=h+(4)>>0;o=g.Normalize();h=(p=(o),p<32?(h<<p):0)>>0;q=e.bias-63>>0;r=0;if(g.exp<=q){r=((63-e.mantbits>>>0)+1>>>0)+((q-g.exp>>0)>>>0)>>>0;}else{r=63-e.mantbits>>>0;}s=$shiftLeft64(new $Uint64(0,1),((r-1>>>0)));w=(t=g.mant,u=(v=$shiftLeft64(new $Uint64(0,1),r),new $Uint64(v.$high-0,v.$low-1)),new $Uint64(t.$high&u.$high,(t.$low&u.$low)>>>0));if((x=(y=new $Int64(s.$high,s.$low),z=new $Int64(0,h),new $Int64(y.$high-z.$high,y.$low-z.$low)),aa=new $Int64(w.$high,w.$low),(x.$high<aa.$high||(x.$high===aa.$high&&x.$low<aa.$low)))&&(ab=new $Int64(w.$high,w.$low),ac=(ad=new $Int64(s.$high,s.$low),ae=new $Int64(0,h),new $Int64(ad.$high+ae.$high,ad.$low+ae.$low)),(ab.$high<ac.$high||(ab.$high===ac.$high&&ab.$low<ac.$low)))){f=false;return f;}f=true;return f;};AH.prototype.AssignDecimal=function(a,b,c,d,e){return this.$val.AssignDecimal(a,b,c,d,e);};AH.ptr.prototype.frexp10=function(){var $ptr,a,b,c,d,e,f,g,h,i,j;a=0;b=0;c=this;e=(d=($imul(((-46-c.exp>>0)),28))/93,(d===d&&d!==1/0&&d!==-1/0)?d>>0:$throwRuntimeError("integer divide by zero"));g=(f=((e- -348>>0))/8,(f===f&&f!==1/0&&f!==-1/0)?f>>0:$throwRuntimeError("integer divide by zero"));Loop:while(true){h=(c.exp+((g<0||g>=AJ.length)?($throwRuntimeError("index out of range"),undefined):AJ[g]).exp>>0)+64>>0;if(h<-60){g=g+(1)>>0;}else if(h>-32){g=g-(1)>>0;}else{break Loop;}}c.Multiply($clone(((g<0||g>=AJ.length)?($throwRuntimeError("index out of range"),undefined):AJ[g]),AH));i=-((-348+($imul(g,8))>>0));j=g;a=i;b=j;return[a,b];};AH.prototype.frexp10=function(){return this.$val.frexp10();};AL=function(a,b,c){var $ptr,a,b,c,d,e,f;d=0;e=c.frexp10();d=e[0];f=e[1];a.Multiply($clone(((f<0||f>=AJ.length)?($throwRuntimeError("index out of range"),undefined):AJ[f]),AH));b.Multiply($clone(((f<0||f>=AJ.length)?($throwRuntimeError("index out of range"),undefined):AJ[f]),AH));return d;};AH.ptr.prototype.FixedDecimal=function(a,b){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;c=this;if((d=c.mant,(d.$high===0&&d.$low===0))){a.nd=0;a.dp=0;a.neg=c.neg;return true;}if(b===0){$panic(new $String("strconv: internal error: extFloat.FixedDecimal called with n == 0"));}c.Normalize();e=c.frexp10();f=e[0];g=(-c.exp>>>0);h=($shiftRightUint64(c.mant,g).$low>>>0);k=(i=c.mant,j=$shiftLeft64(new $Uint64(0,h),g),new $Uint64(i.$high-j.$high,i.$low-j.$low));l=new $Uint64(0,1);m=b;n=0;o=new $Uint64(0,1);p=0;q=new $Uint64(0,1);r=p;s=q;while(true){if(!(r<20)){break;}if((t=new $Uint64(0,h),(s.$high>t.$high||(s.$high===t.$high&&s.$low>t.$low)))){n=r;break;}s=$mul64(s,(new $Uint64(0,10)));r=r+(1)>>0;}u=h;if(n>m){o=(v=n-m>>0,((v<0||v>=AK.length)?($throwRuntimeError("index out of range"),undefined):AK[v]));h=(w=h/((o.$low>>>0)),(w===w&&w!==1/0&&w!==-1/0)?w>>>0:$throwRuntimeError("integer divide by zero"));u=u-(($imul(h,(o.$low>>>0))>>>0))>>>0;}else{u=0;}x=DC.zero();y=32;z=h;while(true){if(!(z>0)){break;}ab=(aa=z/10,(aa===aa&&aa!==1/0&&aa!==-1/0)?aa>>>0:$throwRuntimeError("integer divide by zero"));z=z-(($imul(10,ab)>>>0))>>>0;y=y-(1)>>0;((y<0||y>=x.length)?($throwRuntimeError("index out of range"),undefined):x[y]=((z+48>>>0)<<24>>>24));z=ab;}ac=y;while(true){if(!(ac<32)){break;}(ad=a.d,ae=ac-y>>0,((ae<0||ae>=ad.$length)?($throwRuntimeError("index out of range"),undefined):ad.$array[ad.$offset+ae]=((ac<0||ac>=x.length)?($throwRuntimeError("index out of range"),undefined):x[ac])));ac=ac+(1)>>0;}af=32-y>>0;a.nd=af;a.dp=n+f>>0;m=m-(af)>>0;if(m>0){if(!((u===0))||!((o.$high===0&&o.$low===1))){$panic(new $String("strconv: internal error, rest != 0 but needed > 0"));}while(true){if(!(m>0)){break;}k=$mul64(k,(new $Uint64(0,10)));l=$mul64(l,(new $Uint64(0,10)));if((ag=$mul64(new $Uint64(0,2),l),ah=$shiftLeft64(new $Uint64(0,1),g),(ag.$high>ah.$high||(ag.$high===ah.$high&&ag.$low>ah.$low)))){return false;}ai=$shiftRightUint64(k,g);(aj=a.d,((af<0||af>=aj.$length)?($throwRuntimeError("index out of range"),undefined):aj.$array[aj.$offset+af]=(new $Uint64(ai.$high+0,ai.$low+48).$low<<24>>>24)));k=(ak=$shiftLeft64(ai,g),new $Uint64(k.$high-ak.$high,k.$low-ak.$low));af=af+(1)>>0;m=m-(1)>>0;}a.nd=af;}am=AM(a,(al=$shiftLeft64(new $Uint64(0,u),g),new $Uint64(al.$high|k.$high,(al.$low|k.$low)>>>0)),o,g,l);if(!am){return false;}an=a.nd-1>>0;while(true){if(!(an>=0)){break;}if(!(((ao=a.d,((an<0||an>=ao.$length)?($throwRuntimeError("index out of range"),undefined):ao.$array[ao.$offset+an]))===48))){a.nd=an+1>>0;break;}an=an-(1)>>0;}return true;};AH.prototype.FixedDecimal=function(a,b){return this.$val.FixedDecimal(a,b);};AM=function(a,b,c,d,e){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q;if((f=$shiftLeft64(c,d),(b.$high>f.$high||(b.$high===f.$high&&b.$low>f.$low)))){$panic(new $String("strconv: num > den<<shift in adjustLastDigitFixed"));}if((g=$mul64(new $Uint64(0,2),e),h=$shiftLeft64(c,d),(g.$high>h.$high||(g.$high===h.$high&&g.$low>h.$low)))){$panic(new $String("strconv: \xCE\xB5 > (den<<shift)/2"));}if((i=$mul64(new $Uint64(0,2),(new $Uint64(b.$high+e.$high,b.$low+e.$low))),j=$shiftLeft64(c,d),(i.$high<j.$high||(i.$high===j.$high&&i.$low<j.$low)))){return true;}if((k=$mul64(new $Uint64(0,2),(new $Uint64(b.$high-e.$high,b.$low-e.$low))),l=$shiftLeft64(c,d),(k.$high>l.$high||(k.$high===l.$high&&k.$low>l.$low)))){m=a.nd-1>>0;while(true){if(!(m>=0)){break;}if((n=a.d,((m<0||m>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+m]))===57){a.nd=a.nd-(1)>>0;}else{break;}m=m-(1)>>0;}if(m<0){(o=a.d,(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0]=49));a.nd=1;a.dp=a.dp+(1)>>0;}else{(q=a.d,((m<0||m>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+m]=((p=a.d,((m<0||m>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+m]))+(1)<<24>>>24)));}return true;}return false;};AH.ptr.prototype.ShortestDecimal=function(a,b,c){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;d=this;if((e=d.mant,(e.$high===0&&e.$low===0))){a.nd=0;a.dp=0;a.neg=d.neg;return true;}if((d.exp===0)&&$equal(b,d,AH)&&$equal(b,c,AH)){f=DB.zero();g=23;h=d.mant;while(true){if(!((h.$high>0||(h.$high===0&&h.$low>0)))){break;}i=$div64(h,new $Uint64(0,10),false);h=(j=$mul64(new $Uint64(0,10),i),new $Uint64(h.$high-j.$high,h.$low-j.$low));((g<0||g>=f.length)?($throwRuntimeError("index out of range"),undefined):f[g]=(new $Uint64(h.$high+0,h.$low+48).$low<<24>>>24));g=g-(1)>>0;h=i;}k=(24-g>>0)-1>>0;l=0;while(true){if(!(l<k)){break;}(n=a.d,((l<0||l>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+l]=(m=(g+1>>0)+l>>0,((m<0||m>=f.length)?($throwRuntimeError("index out of range"),undefined):f[m]))));l=l+(1)>>0;}o=k;p=k;a.nd=o;a.dp=p;while(true){if(!(a.nd>0&&((q=a.d,r=a.nd-1>>0,((r<0||r>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+r]))===48))){break;}a.nd=a.nd-(1)>>0;}if(a.nd===0){a.dp=0;}a.neg=d.neg;return true;}c.Normalize();if(d.exp>c.exp){d.mant=$shiftLeft64(d.mant,(((d.exp-c.exp>>0)>>>0)));d.exp=c.exp;}if(b.exp>c.exp){b.mant=$shiftLeft64(b.mant,(((b.exp-c.exp>>0)>>>0)));b.exp=c.exp;}s=AL(b,d,c);c.mant=(t=c.mant,u=new $Uint64(0,1),new $Uint64(t.$high+u.$high,t.$low+u.$low));b.mant=(v=b.mant,w=new $Uint64(0,1),new $Uint64(v.$high-w.$high,v.$low-w.$low));x=(-c.exp>>>0);y=($shiftRightUint64(c.mant,x).$low>>>0);ab=(z=c.mant,aa=$shiftLeft64(new $Uint64(0,y),x),new $Uint64(z.$high-aa.$high,z.$low-aa.$low));ae=(ac=c.mant,ad=b.mant,new $Uint64(ac.$high-ad.$high,ac.$low-ad.$low));ah=(af=c.mant,ag=d.mant,new $Uint64(af.$high-ag.$high,af.$low-ag.$low));ai=0;aj=0;ak=new $Uint64(0,1);al=aj;am=ak;while(true){if(!(al<20)){break;}if((an=new $Uint64(0,y),(am.$high>an.$high||(am.$high===an.$high&&am.$low>an.$low)))){ai=al;break;}am=$mul64(am,(new $Uint64(0,10)));al=al+(1)>>0;}ao=0;while(true){if(!(ao<ai)){break;}aq=(ap=(ai-ao>>0)-1>>0,((ap<0||ap>=AK.length)?($throwRuntimeError("index out of range"),undefined):AK[ap]));as=(ar=y/(aq.$low>>>0),(ar===ar&&ar!==1/0&&ar!==-1/0)?ar>>>0:$throwRuntimeError("integer divide by zero"));(at=a.d,((ao<0||ao>=at.$length)?($throwRuntimeError("index out of range"),undefined):at.$array[at.$offset+ao]=((as+48>>>0)<<24>>>24)));y=y-(($imul(as,(aq.$low>>>0))>>>0))>>>0;av=(au=$shiftLeft64(new $Uint64(0,y),x),new $Uint64(au.$high+ab.$high,au.$low+ab.$low));if((av.$high<ae.$high||(av.$high===ae.$high&&av.$low<ae.$low))){a.nd=ao+1>>0;a.dp=ai+s>>0;a.neg=d.neg;return AN(a,av,ah,ae,$shiftLeft64(aq,x),new $Uint64(0,2));}ao=ao+(1)>>0;}a.nd=ai;a.dp=a.nd+s>>0;a.neg=d.neg;aw=0;ax=new $Uint64(0,1);while(true){ab=$mul64(ab,(new $Uint64(0,10)));ax=$mul64(ax,(new $Uint64(0,10)));aw=($shiftRightUint64(ab,x).$low>>0);(ay=a.d,az=a.nd,((az<0||az>=ay.$length)?($throwRuntimeError("index out of range"),undefined):ay.$array[ay.$offset+az]=((aw+48>>0)<<24>>>24)));a.nd=a.nd+(1)>>0;ab=(ba=$shiftLeft64(new $Uint64(0,aw),x),new $Uint64(ab.$high-ba.$high,ab.$low-ba.$low));if((bb=$mul64(ae,ax),(ab.$high<bb.$high||(ab.$high===bb.$high&&ab.$low<bb.$low)))){return AN(a,ab,$mul64(ah,ax),$mul64(ae,ax),$shiftLeft64(new $Uint64(0,1),x),$mul64(ax,new $Uint64(0,2)));}}};AH.prototype.ShortestDecimal=function(a,b,c){return this.$val.ShortestDecimal(a,b,c);};AN=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t;if((g=$mul64(new $Uint64(0,2),f),(e.$high<g.$high||(e.$high===g.$high&&e.$low<g.$low)))){return false;}while(true){if(!((h=(i=(j=$div64(e,new $Uint64(0,2),false),new $Uint64(b.$high+j.$high,b.$low+j.$low)),new $Uint64(i.$high+f.$high,i.$low+f.$low)),(h.$high<c.$high||(h.$high===c.$high&&h.$low<c.$low))))){break;}k=a.nd-1>>0;(m=a.d,((k<0||k>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+k]=((l=a.d,((k<0||k>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+k]))-(1)<<24>>>24)));b=(n=e,new $Uint64(b.$high+n.$high,b.$low+n.$low));}if((o=new $Uint64(b.$high+e.$high,b.$low+e.$low),p=(q=(r=$div64(e,new $Uint64(0,2),false),new $Uint64(c.$high+r.$high,c.$low+r.$low)),new $Uint64(q.$high+f.$high,q.$low+f.$low)),(o.$high<p.$high||(o.$high===p.$high&&o.$low<=p.$low)))){return false;}if((b.$high<f.$high||(b.$high===f.$high&&b.$low<f.$low))||(s=new $Uint64(d.$high-f.$high,d.$low-f.$low),(b.$high>s.$high||(b.$high===s.$high&&b.$low>s.$low)))){return false;}if((a.nd===1)&&((t=a.d,(0>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+0]))===48)){a.nd=0;a.dp=0;}return true;};AR=function(a,b,c,d){var $ptr,a,b,c,d;return $bytesToString(AT($makeSlice(DA,0,BC(c+4>>0,24)),a,b,c,d));};$pkg.FormatFloat=AR;AS=function(a,b,c,d,e){var $ptr,a,b,c,d,e;return AT(a,b,c,d,e);};$pkg.AppendFloat=AS;AT=function(a,b,c,d,e){var $ptr,a,aa,ab,ac,ad,ae,af,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;f=new $Uint64(0,0);g=DD.nil;h=e;if(h===(32)){f=new $Uint64(0,A.Float32bits($fround(b)));g=AP;}else if(h===(64)){f=A.Float64bits(b);g=AQ;}else{$panic(new $String("strconv: illegal AppendFloat/FormatFloat bitSize"));}j=!((i=$shiftRightUint64(f,((g.expbits+g.mantbits>>>0))),(i.$high===0&&i.$low===0)));l=($shiftRightUint64(f,g.mantbits).$low>>0)&((((k=g.expbits,k<32?(1<<k):0)>>0)-1>>0));o=(m=(n=$shiftLeft64(new $Uint64(0,1),g.mantbits),new $Uint64(n.$high-0,n.$low-1)),new $Uint64(f.$high&m.$high,(f.$low&m.$low)>>>0));p=l;if(p===((((q=g.expbits,q<32?(1<<q):0)>>0)-1>>0))){r="";if(!((o.$high===0&&o.$low===0))){r="NaN";}else if(j){r="-Inf";}else{r="+Inf";}return $appendSlice(a,r);}else if(p===(0)){l=l+(1)>>0;}else{o=(s=$shiftLeft64(new $Uint64(0,1),g.mantbits),new $Uint64(o.$high|s.$high,(o.$low|s.$low)>>>0));}l=l+(g.bias)>>0;if(c===98){return BA(a,j,o,l,g);}if(!G){return AU(a,d,c,j,o,l,g);}t=new AX.ptr(DA.nil,0,0,false);u=false;v=d<0;if(v){w=new AH.ptr(new $Uint64(0,0),0,false);x=w.AssignComputeBounds(o,l,j,g);y=$clone(x[0],AH);z=$clone(x[1],AH);aa=DC.zero();t.d=new DA(aa);u=w.ShortestDecimal(t,y,z);if(!u){return AU(a,d,c,j,o,l,g);}ab=c;if((ab===(101))||(ab===(69))){d=BC(t.nd-1>>0,0);}else if(ab===(102)){d=BC(t.nd-t.dp>>0,0);}else if((ab===(103))||(ab===(71))){d=t.nd;}}else if(!((c===102))){ac=d;ad=c;if((ad===(101))||(ad===(69))){ac=ac+(1)>>0;}else if((ad===(103))||(ad===(71))){if(d===0){d=1;}ac=d;}if(ac<=15){ae=DB.zero();t.d=new DA(ae);af=new AH.ptr(o,l-(g.mantbits>>0)>>0,j);u=af.FixedDecimal(t,ac);}}if(!u){return AU(a,d,c,j,o,l,g);}return AV(a,v,j,$clone(t,AX),d,c);};AU=function(a,b,c,d,e,f,g){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l;h=new Y.ptr(CY.zero(),0,0,false,false);h.Assign(e);h.Shift(f-(g.mantbits>>0)>>0);i=new AX.ptr(DA.nil,0,0,false);j=b<0;if(j){AW(h,e,f,g);AX.copy(i,new AX.ptr(new DA(h.d),h.nd,h.dp,false));k=c;if((k===(101))||(k===(69))){b=i.nd-1>>0;}else if(k===(102)){b=BC(i.nd-i.dp>>0,0);}else if((k===(103))||(k===(71))){b=i.nd;}}else{l=c;if((l===(101))||(l===(69))){h.Round(b+1>>0);}else if(l===(102)){h.Round(h.dp+b>>0);}else if((l===(103))||(l===(71))){if(b===0){b=1;}h.Round(b);}AX.copy(i,new AX.ptr(new DA(h.d),h.nd,h.dp,false));}return AV(a,j,d,$clone(i,AX),b,c);};AV=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g,h,i;g=f;if((g===(101))||(g===(69))){return AY(a,c,$clone(d,AX),e,f);}else if(g===(102)){return AZ(a,c,$clone(d,AX),e);}else if((g===(103))||(g===(71))){h=e;if(h>d.nd&&d.nd>=d.dp){h=d.nd;}if(b){h=6;}i=d.dp-1>>0;if(i<-4||i>=h){if(e>d.nd){e=d.nd;}return AY(a,c,$clone(d,AX),e-1>>0,(f+101<<24>>>24)-103<<24>>>24);}if(e>d.dp){e=d.nd;}return AZ(a,c,$clone(d,AX),BC(e-d.dp>>0,0));}return $append(a,37,f);};AW=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x;if((b.$high===0&&b.$low===0)){a.nd=0;return;}e=d.bias+1>>0;if(c>e&&($imul(332,((a.dp-a.nd>>0))))>=($imul(100,((c-(d.mantbits>>0)>>0))))){return;}f=new Y.ptr(CY.zero(),0,0,false,false);f.Assign((g=$mul64(b,new $Uint64(0,2)),new $Uint64(g.$high+0,g.$low+1)));f.Shift((c-(d.mantbits>>0)>>0)-1>>0);h=new $Uint64(0,0);i=0;if((j=$shiftLeft64(new $Uint64(0,1),d.mantbits),(b.$high>j.$high||(b.$high===j.$high&&b.$low>j.$low)))||(c===e)){h=new $Uint64(b.$high-0,b.$low-1);i=c;}else{h=(k=$mul64(b,new $Uint64(0,2)),new $Uint64(k.$high-0,k.$low-1));i=c-1>>0;}l=new Y.ptr(CY.zero(),0,0,false,false);l.Assign((m=$mul64(h,new $Uint64(0,2)),new $Uint64(m.$high+0,m.$low+1)));l.Shift((i-(d.mantbits>>0)>>0)-1>>0);o=(n=$div64(b,new $Uint64(0,2),true),(n.$high===0&&n.$low===0));p=0;while(true){if(!(p<a.nd)){break;}q=48;if(p<l.nd){q=(r=l.d,((p<0||p>=r.length)?($throwRuntimeError("index out of range"),undefined):r[p]));}t=(s=a.d,((p<0||p>=s.length)?($throwRuntimeError("index out of range"),undefined):s[p]));u=48;if(p<f.nd){u=(v=f.d,((p<0||p>=v.length)?($throwRuntimeError("index out of range"),undefined):v[p]));}w=!((q===t))||o&&((p+1>>0)===l.nd);x=!((t===u))&&(o||(t+1<<24>>>24)<u||(p+1>>0)<f.nd);if(w&&x){a.Round(p+1>>0);return;}else if(w){a.RoundDown(p+1>>0);return;}else if(x){a.RoundUp(p+1>>0);return;}p=p+(1)>>0;}};AY=function(a,b,c,d,e){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p;if(b){a=$append(a,45);}f=48;if(!((c.nd===0))){f=(g=c.d,(0>=g.$length?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+0]));}a=$append(a,f);if(d>0){a=$append(a,46);h=1;i=BB(c.nd,d+1>>0);if(h<i){a=$appendSlice(a,$subslice(c.d,h,i));h=i;}while(true){if(!(h<=d)){break;}a=$append(a,48);h=h+(1)>>0;}}a=$append(a,e);j=c.dp-1>>0;if(c.nd===0){j=0;}if(j<0){f=45;j=-j;}else{f=43;}a=$append(a,f);if(j<10){a=$append(a,48,(j<<24>>>24)+48<<24>>>24);}else if(j<100){a=$append(a,((k=j/10,(k===k&&k!==1/0&&k!==-1/0)?k>>0:$throwRuntimeError("integer divide by zero"))<<24>>>24)+48<<24>>>24,((l=j%10,l===l?l:$throwRuntimeError("integer divide by zero"))<<24>>>24)+48<<24>>>24);}else{a=$append(a,((m=j/100,(m===m&&m!==1/0&&m!==-1/0)?m>>0:$throwRuntimeError("integer divide by zero"))<<24>>>24)+48<<24>>>24,(n=((o=j/10,(o===o&&o!==1/0&&o!==-1/0)?o>>0:$throwRuntimeError("integer divide by zero"))<<24>>>24)%10,n===n?n:$throwRuntimeError("integer divide by zero"))+48<<24>>>24,((p=j%10,p===p?p:$throwRuntimeError("integer divide by zero"))<<24>>>24)+48<<24>>>24);}return a;};AZ=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i;if(b){a=$append(a,45);}if(c.dp>0){e=BB(c.nd,c.dp);a=$appendSlice(a,$subslice(c.d,0,e));while(true){if(!(e<c.dp)){break;}a=$append(a,48);e=e+(1)>>0;}}else{a=$append(a,48);}if(d>0){a=$append(a,46);f=0;while(true){if(!(f<d)){break;}g=48;h=c.dp+f>>0;if(0<=h&&h<c.nd){g=(i=c.d,((h<0||h>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+h]));}a=$append(a,g);f=f+(1)>>0;}}return a;};BA=function(a,b,c,d,e){var $ptr,a,b,c,d,e,f,g;if(b){a=$append(a,45);}f=BO(a,c,10,false,true);a=f[0];a=$append(a,112);d=d-((e.mantbits>>0))>>0;if(d>=0){a=$append(a,43);}g=BO(a,new $Uint64(0,d),10,d<0,true);a=g[0];return a;};BB=function(a,b){var $ptr,a,b;if(a<b){return a;}return b;};BC=function(a,b){var $ptr,a,b;if(a>b){return a;}return b;};BI=function(a,b){var $ptr,a,b,c,d;c=BO(DA.nil,a,b,false,false);d=c[1];return d;};$pkg.FormatUint=BI;BJ=function(a,b){var $ptr,a,b,c,d;c=BO(DA.nil,new $Uint64(a.$high,a.$low),b,(a.$high<0||(a.$high===0&&a.$low<0)),false);d=c[1];return d;};$pkg.FormatInt=BJ;BK=function(a){var $ptr,a;return BJ(new $Int64(0,a),10);};$pkg.Itoa=BK;BM=function(a,b,c){var $ptr,a,b,c,d;d=BO(a,b,c,false,true);a=d[0];return a;};$pkg.AppendUint=BM;BO=function(a,b,c,d,e){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x;f=DA.nil;g="";if(c<2||c>36){$panic(new $String("strconv: illegal AppendInt/FormatInt base"));}h=DE.zero();i=65;if(d){b=new $Uint64(-b.$high,-b.$low);}if(c===10){if(true){while(true){if(!((b.$high>0||(b.$high===0&&b.$low>4294967295)))){break;}j=$div64(b,new $Uint64(0,1000000000),false);l=((k=$mul64(j,new $Uint64(0,1000000000)),new $Uint64(b.$high-k.$high,b.$low-k.$low)).$low>>>0);m=9;while(true){if(!(m>0)){break;}i=i-(1)>>0;o=(n=l/10,(n===n&&n!==1/0&&n!==-1/0)?n>>>0:$throwRuntimeError("integer divide by zero"));((i<0||i>=h.length)?($throwRuntimeError("index out of range"),undefined):h[i]=(((l-($imul(o,10)>>>0)>>>0)+48>>>0)<<24>>>24));l=o;m=m-(1)>>0;}b=j;}}p=(b.$low>>>0);while(true){if(!(p>=10)){break;}i=i-(1)>>0;r=(q=p/10,(q===q&&q!==1/0&&q!==-1/0)?q>>>0:$throwRuntimeError("integer divide by zero"));((i<0||i>=h.length)?($throwRuntimeError("index out of range"),undefined):h[i]=(((p-($imul(r,10)>>>0)>>>0)+48>>>0)<<24>>>24));p=r;}i=i-(1)>>0;((i<0||i>=h.length)?($throwRuntimeError("index out of range"),undefined):h[i]=((p+48>>>0)<<24>>>24));}else{s=((c<0||c>=BN.length)?($throwRuntimeError("index out of range"),undefined):BN[c]);if(s>0){t=new $Uint64(0,c);u=(t.$low>>>0)-1>>>0;while(true){if(!((b.$high>t.$high||(b.$high===t.$high&&b.$low>=t.$low)))){break;}i=i-(1)>>0;((i<0||i>=h.length)?($throwRuntimeError("index out of range"),undefined):h[i]="0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt((((b.$low>>>0)&u)>>>0)));b=$shiftRightUint64(b,(s));}i=i-(1)>>0;((i<0||i>=h.length)?($throwRuntimeError("index out of range"),undefined):h[i]="0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt((b.$low>>>0)));}else{v=new $Uint64(0,c);while(true){if(!((b.$high>v.$high||(b.$high===v.$high&&b.$low>=v.$low)))){break;}i=i-(1)>>0;w=$div64(b,v,false);((i<0||i>=h.length)?($throwRuntimeError("index out of range"),undefined):h[i]="0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt(((x=$mul64(w,v),new $Uint64(b.$high-x.$high,b.$low-x.$low)).$low>>>0)));b=w;}i=i-(1)>>0;((i<0||i>=h.length)?($throwRuntimeError("index out of range"),undefined):h[i]="0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt((b.$low>>>0)));}}if(d){i=i-(1)>>0;((i<0||i>=h.length)?($throwRuntimeError("index out of range"),undefined):h[i]=45);}if(e){f=$appendSlice(a,$subslice(new DA(h),i));return[f,g];}g=$bytesToString($subslice(new DA(h),i));return[f,g];};BP=function(a,b,c,d){var $ptr,a,b,c,d,e;return $bytesToString(BR($makeSlice(DA,0,(e=($imul(3,a.length))/2,(e===e&&e!==1/0&&e!==-1/0)?e>>0:$throwRuntimeError("integer divide by zero"))),a,b,c,d));};BR=function(a,b,c,d,e){var $ptr,a,b,c,d,e,f,g,h;a=$append(a,c);f=0;while(true){if(!(b.length>0)){break;}g=(b.charCodeAt(0)>>0);f=1;if(g>=128){h=C.DecodeRuneInString(b);g=h[0];f=h[1];}if((f===1)&&(g===65533)){a=$appendSlice(a,"\\x");a=$append(a,"0123456789abcdef".charCodeAt((b.charCodeAt(0)>>>4<<24>>>24)));a=$append(a,"0123456789abcdef".charCodeAt(((b.charCodeAt(0)&15)>>>0)));b=$substring(b,f);continue;}a=BT(a,g,f,c,d,e);b=$substring(b,f);}a=$append(a,c);return a;};BS=function(a,b,c,d,e){var $ptr,a,b,c,d,e;a=$append(a,c);if(!C.ValidRune(b)){b=65533;}a=BT(a,b,C.RuneLen(b),c,d,e);a=$append(a,c);return a;};BT=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g,h,i,j,k;g=DF.zero();if((b===(d>>0))||(b===92)){a=$append(a,92);a=$append(a,(b<<24>>>24));return a;}if(e){if(b<128&&CN(b)){a=$append(a,(b<<24>>>24));return a;}}else if(CN(b)||f&&CP(b)){h=C.EncodeRune(new DA(g),b);a=$appendSlice(a,$subslice(new DA(g),0,h));return a;}i=b;if(i===(7)){a=$appendSlice(a,"\\a");}else if(i===(8)){a=$appendSlice(a,"\\b");}else if(i===(12)){a=$appendSlice(a,"\\f");}else if(i===(10)){a=$appendSlice(a,"\\n");}else if(i===(13)){a=$appendSlice(a,"\\r");}else if(i===(9)){a=$appendSlice(a,"\\t");}else if(i===(11)){a=$appendSlice(a,"\\v");}else{if(b<32){a=$appendSlice(a,"\\x");a=$append(a,"0123456789abcdef".charCodeAt(((b<<24>>>24)>>>4<<24>>>24)));a=$append(a,"0123456789abcdef".charCodeAt((((b<<24>>>24)&15)>>>0)));}else if(b>1114111){b=65533;a=$appendSlice(a,"\\u");j=12;while(true){if(!(j>=0)){break;}a=$append(a,"0123456789abcdef".charCodeAt((((b>>$min((j>>>0),31))>>0)&15)));j=j-(4)>>0;}}else if(b<65536){a=$appendSlice(a,"\\u");j=12;while(true){if(!(j>=0)){break;}a=$append(a,"0123456789abcdef".charCodeAt((((b>>$min((j>>>0),31))>>0)&15)));j=j-(4)>>0;}}else{a=$appendSlice(a,"\\U");k=28;while(true){if(!(k>=0)){break;}a=$append(a,"0123456789abcdef".charCodeAt((((b>>$min((k>>>0),31))>>0)&15)));k=k-(4)>>0;}}}return a;};BU=function(a){var $ptr,a;return BP(a,34,false,false);};$pkg.Quote=BU;BV=function(a,b){var $ptr,a,b;return BR(a,b,34,false,false);};$pkg.AppendQuote=BV;BW=function(a){var $ptr,a;return BP(a,34,true,false);};$pkg.QuoteToASCII=BW;BX=function(a,b){var $ptr,a,b;return BR(a,b,34,true,false);};$pkg.AppendQuoteToASCII=BX;CB=function(a,b){var $ptr,a,b;return BS(a,b,39,false,false);};$pkg.AppendQuoteRune=CB;CD=function(a,b){var $ptr,a,b;return BS(a,b,39,true,false);};$pkg.AppendQuoteRuneToASCII=CD;CG=function(a){var $ptr,a,b,c,d;while(true){if(!(a.length>0)){break;}b=C.DecodeRuneInString(a);c=b[0];d=b[1];a=$substring(a,d);if(d>1){if(c===65279){return false;}continue;}if(c===65533){return false;}if((c<32&&!((c===9)))||(c===96)||(c===127)){return false;}}return true;};$pkg.CanBackquote=CG;CH=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j;b=0;c=false;d=(a>>0);if(48<=d&&d<=57){e=d-48>>0;f=true;b=e;c=f;return[b,c];}else if(97<=d&&d<=102){g=(d-97>>0)+10>>0;h=true;b=g;c=h;return[b,c];}else if(65<=d&&d<=70){i=(d-65>>0)+10>>0;j=true;b=i;c=j;return[b,c];}return[b,c];};CI=function(a,b){var $ptr,a,aa,ab,ac,ad,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;c=0;d=false;e="";f=$ifaceNil;g=a.charCodeAt(0);if((g===b)&&((b===39)||(b===34))){f=$pkg.ErrSyntax;return[c,d,e,f];}else if(g>=128){h=C.DecodeRuneInString(a);i=h[0];j=h[1];k=i;l=true;m=$substring(a,j);n=$ifaceNil;c=k;d=l;e=m;f=n;return[c,d,e,f];}else if(!((g===92))){o=(a.charCodeAt(0)>>0);p=false;q=$substring(a,1);r=$ifaceNil;c=o;d=p;e=q;f=r;return[c,d,e,f];}if(a.length<=1){f=$pkg.ErrSyntax;return[c,d,e,f];}s=a.charCodeAt(1);a=$substring(a,2);switch(0){default:t=s;if(t===(97)){c=7;}else if(t===(98)){c=8;}else if(t===(102)){c=12;}else if(t===(110)){c=10;}else if(t===(114)){c=13;}else if(t===(116)){c=9;}else if(t===(118)){c=11;}else if((t===(120))||(t===(117))||(t===(85))){u=0;v=s;if(v===(120)){u=2;}else if(v===(117)){u=4;}else if(v===(85)){u=8;}w=0;if(a.length<u){f=$pkg.ErrSyntax;return[c,d,e,f];}x=0;while(true){if(!(x<u)){break;}y=CH(a.charCodeAt(x));z=y[0];aa=y[1];if(!aa){f=$pkg.ErrSyntax;return[c,d,e,f];}w=(w<<4>>0)|z;x=x+(1)>>0;}a=$substring(a,u);if(s===120){c=w;break;}if(w>1114111){f=$pkg.ErrSyntax;return[c,d,e,f];}c=w;d=true;}else if((t===(48))||(t===(49))||(t===(50))||(t===(51))||(t===(52))||(t===(53))||(t===(54))||(t===(55))){ab=(s>>0)-48>>0;if(a.length<2){f=$pkg.ErrSyntax;return[c,d,e,f];}ac=0;while(true){if(!(ac<2)){break;}ad=(a.charCodeAt(ac)>>0)-48>>0;if(ad<0||ad>7){f=$pkg.ErrSyntax;return[c,d,e,f];}ab=((ab<<3>>0))|ad;ac=ac+(1)>>0;}a=$substring(a,2);if(ab>255){f=$pkg.ErrSyntax;return[c,d,e,f];}c=ab;}else if(t===(92)){c=92;}else if((t===(39))||(t===(34))){if(!((s===b))){f=$pkg.ErrSyntax;return[c,d,e,f];}c=(s>>0);}else{f=$pkg.ErrSyntax;return[c,d,e,f];}}e=a;return[c,d,e,f];};$pkg.UnquoteChar=CI;CJ=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r;b=a.length;if(b<2){return["",$pkg.ErrSyntax];}c=a.charCodeAt(0);if(!((c===a.charCodeAt((b-1>>0))))){return["",$pkg.ErrSyntax];}a=$substring(a,1,(b-1>>0));if(c===96){if(CK(a,96)){return["",$pkg.ErrSyntax];}if(CK(a,13)){d=$makeSlice(DA,0,(a.length-1>>0));e=0;while(true){if(!(e<a.length)){break;}if(!((a.charCodeAt(e)===13))){d=$append(d,a.charCodeAt(e));}e=e+(1)>>0;}return[$bytesToString(d),$ifaceNil];}return[a,$ifaceNil];}if(!((c===34))&&!((c===39))){return["",$pkg.ErrSyntax];}if(CK(a,10)){return["",$pkg.ErrSyntax];}if(!CK(a,92)&&!CK(a,c)){f=c;if(f===(34)){return[a,$ifaceNil];}else if(f===(39)){g=C.DecodeRuneInString(a);h=g[0];i=g[1];if((i===a.length)&&(!((h===65533))||!((i===1)))){return[a,$ifaceNil];}}}j=DF.zero();l=$makeSlice(DA,0,(k=($imul(3,a.length))/2,(k===k&&k!==1/0&&k!==-1/0)?k>>0:$throwRuntimeError("integer divide by zero")));while(true){if(!(a.length>0)){break;}m=CI(a,c);n=m[0];o=m[1];p=m[2];q=m[3];if(!($interfaceIsEqual(q,$ifaceNil))){return["",q];}a=p;if(n<128||!o){l=$append(l,(n<<24>>>24));}else{r=C.EncodeRune(new DA(j),n);l=$appendSlice(l,$subslice(new DA(j),0,r));}if((c===39)&&!((a.length===0))){return["",$pkg.ErrSyntax];}}return[$bytesToString(l),$ifaceNil];};$pkg.Unquote=CJ;CK=function(a,b){var $ptr,a,b,c;c=0;while(true){if(!(c<a.length)){break;}if(a.charCodeAt(c)===b){return true;}c=c+(1)>>0;}return false;};CL=function(a,b){var $ptr,a,b,c,d,e,f,g,h;c=0;d=a.$length;e=c;f=d;while(true){if(!(e<f)){break;}h=e+(g=((f-e>>0))/2,(g===g&&g!==1/0&&g!==-1/0)?g>>0:$throwRuntimeError("integer divide by zero"))>>0;if(((h<0||h>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+h])<b){e=h+1>>0;}else{f=h;}}return e;};CM=function(a,b){var $ptr,a,b,c,d,e,f,g,h;c=0;d=a.$length;e=c;f=d;while(true){if(!(e<f)){break;}h=e+(g=((f-e>>0))/2,(g===g&&g!==1/0&&g!==-1/0)?g>>0:$throwRuntimeError("integer divide by zero"))>>0;if(((h<0||h>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+h])<b){e=h+1>>0;}else{f=h;}}return e;};CN=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u;if(a<=255){if(32<=a&&a<=126){return true;}if(161<=a&&a<=255){return!((a===173));}return false;}if(0<=a&&a<65536){b=(a<<16>>>16);c=BD;d=BE;e=b;f=c;g=d;h=CL(f,e);if(h>=f.$length||e<(i=(h&~1)>>0,((i<0||i>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+i]))||(j=h|1,((j<0||j>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+j]))<e){return false;}k=CL(g,e);return k>=g.$length||!((((k<0||k>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+k])===e));}l=(a>>>0);m=BF;n=BG;o=l;p=m;q=n;r=CM(p,o);if(r>=p.$length||o<(s=(r&~1)>>0,((s<0||s>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+s]))||(t=r|1,((t<0||t>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+t]))<o){return false;}if(a>=131072){return true;}a=a-(65536)>>0;u=CL(q,(a<<16>>>16));return u>=q.$length||!((((u<0||u>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+u])===(a<<16>>>16)));};$pkg.IsPrint=CN;CP=function(a){var $ptr,a,b,c;if(a>65535){return false;}b=(a<<16>>>16);c=CL(BH,b);return c<BH.$length&&(b===((c<0||c>=BH.$length)?($throwRuntimeError("index out of range"),undefined):BH.$array[BH.$offset+c]));};CZ.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];DG.methods=[{prop:"set",name:"set",pkg:"strconv",typ:$funcType([$String],[$Bool],false)},{prop:"floatBits",name:"floatBits",pkg:"strconv",typ:$funcType([DD],[$Uint64,$Bool],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Assign",name:"Assign",pkg:"",typ:$funcType([$Uint64],[],false)},{prop:"Shift",name:"Shift",pkg:"",typ:$funcType([$Int],[],false)},{prop:"Round",name:"Round",pkg:"",typ:$funcType([$Int],[],false)},{prop:"RoundDown",name:"RoundDown",pkg:"",typ:$funcType([$Int],[],false)},{prop:"RoundUp",name:"RoundUp",pkg:"",typ:$funcType([$Int],[],false)},{prop:"RoundedInteger",name:"RoundedInteger",pkg:"",typ:$funcType([],[$Uint64],false)}];DI.methods=[{prop:"floatBits",name:"floatBits",pkg:"strconv",typ:$funcType([DD],[$Uint64,$Bool],false)},{prop:"AssignComputeBounds",name:"AssignComputeBounds",pkg:"",typ:$funcType([$Uint64,$Int,$Bool,DD],[AH,AH],false)},{prop:"Normalize",name:"Normalize",pkg:"",typ:$funcType([],[$Uint],false)},{prop:"Multiply",name:"Multiply",pkg:"",typ:$funcType([AH],[],false)},{prop:"AssignDecimal",name:"AssignDecimal",pkg:"",typ:$funcType([$Uint64,$Int,$Bool,$Bool,DD],[$Bool],false)},{prop:"frexp10",name:"frexp10",pkg:"strconv",typ:$funcType([],[$Int,$Int],false)},{prop:"FixedDecimal",name:"FixedDecimal",pkg:"",typ:$funcType([DH,$Int],[$Bool],false)},{prop:"ShortestDecimal",name:"ShortestDecimal",pkg:"",typ:$funcType([DH,DI,DI],[$Bool],false)}];S.init("",[{prop:"Func",name:"Func",exported:true,typ:$String,tag:""},{prop:"Num",name:"Num",exported:true,typ:$String,tag:""},{prop:"Err",name:"Err",exported:true,typ:$error,tag:""}]);Y.init("strconv",[{prop:"d",name:"d",exported:false,typ:CY,tag:""},{prop:"nd",name:"nd",exported:false,typ:$Int,tag:""},{prop:"dp",name:"dp",exported:false,typ:$Int,tag:""},{prop:"neg",name:"neg",exported:false,typ:$Bool,tag:""},{prop:"trunc",name:"trunc",exported:false,typ:$Bool,tag:""}]);AC.init("strconv",[{prop:"delta",name:"delta",exported:false,typ:$Int,tag:""},{prop:"cutoff",name:"cutoff",exported:false,typ:$String,tag:""}]);AH.init("strconv",[{prop:"mant",name:"mant",exported:false,typ:$Uint64,tag:""},{prop:"exp",name:"exp",exported:false,typ:$Int,tag:""},{prop:"neg",name:"neg",exported:false,typ:$Bool,tag:""}]);AO.init("strconv",[{prop:"mantbits",name:"mantbits",exported:false,typ:$Uint,tag:""},{prop:"expbits",name:"expbits",exported:false,typ:$Uint,tag:""},{prop:"bias",name:"bias",exported:false,typ:$Int,tag:""}]);AX.init("strconv",[{prop:"d",name:"d",exported:false,typ:DA,tag:""},{prop:"nd",name:"nd",exported:false,typ:$Int,tag:""},{prop:"dp",name:"dp",exported:false,typ:$Int,tag:""},{prop:"neg",name:"neg",exported:false,typ:$Bool,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=B.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}G=true;K=new CS([1,3,6,9,13,16,19,23,26]);L=new CT([1,10,100,1000,10000,100000,1e+06,1e+07,1e+08,1e+09,1e+10,1e+11,1e+12,1e+13,1e+14,1e+15,1e+16,1e+17,1e+18,1e+19,1e+20,1e+21,1e+22]);M=new CU([1,10,100,1000,10000,100000,1e+06,1e+07,1e+08,1e+09,1e+10]);$pkg.ErrRange=B.New("value out of range");$pkg.ErrSyntax=B.New("invalid syntax");AD=new CV([new AC.ptr(0,""),new AC.ptr(1,"5"),new AC.ptr(1,"25"),new AC.ptr(1,"125"),new AC.ptr(2,"625"),new AC.ptr(2,"3125"),new AC.ptr(2,"15625"),new AC.ptr(3,"78125"),new AC.ptr(3,"390625"),new AC.ptr(3,"1953125"),new AC.ptr(4,"9765625"),new AC.ptr(4,"48828125"),new AC.ptr(4,"244140625"),new AC.ptr(4,"1220703125"),new AC.ptr(5,"6103515625"),new AC.ptr(5,"30517578125"),new AC.ptr(5,"152587890625"),new AC.ptr(6,"762939453125"),new AC.ptr(6,"3814697265625"),new AC.ptr(6,"19073486328125"),new AC.ptr(7,"95367431640625"),new AC.ptr(7,"476837158203125"),new AC.ptr(7,"2384185791015625"),new AC.ptr(7,"11920928955078125"),new AC.ptr(8,"59604644775390625"),new AC.ptr(8,"298023223876953125"),new AC.ptr(8,"1490116119384765625"),new AC.ptr(9,"7450580596923828125"),new AC.ptr(9,"37252902984619140625"),new AC.ptr(9,"186264514923095703125"),new AC.ptr(10,"931322574615478515625"),new AC.ptr(10,"4656612873077392578125"),new AC.ptr(10,"23283064365386962890625"),new AC.ptr(10,"116415321826934814453125"),new AC.ptr(11,"582076609134674072265625"),new AC.ptr(11,"2910383045673370361328125"),new AC.ptr(11,"14551915228366851806640625"),new AC.ptr(12,"72759576141834259033203125"),new AC.ptr(12,"363797880709171295166015625"),new AC.ptr(12,"1818989403545856475830078125"),new AC.ptr(13,"9094947017729282379150390625"),new AC.ptr(13,"45474735088646411895751953125"),new AC.ptr(13,"227373675443232059478759765625"),new AC.ptr(13,"1136868377216160297393798828125"),new AC.ptr(14,"5684341886080801486968994140625"),new AC.ptr(14,"28421709430404007434844970703125"),new AC.ptr(14,"142108547152020037174224853515625"),new AC.ptr(15,"710542735760100185871124267578125"),new AC.ptr(15,"3552713678800500929355621337890625"),new AC.ptr(15,"17763568394002504646778106689453125"),new AC.ptr(16,"88817841970012523233890533447265625"),new AC.ptr(16,"444089209850062616169452667236328125"),new AC.ptr(16,"2220446049250313080847263336181640625"),new AC.ptr(16,"11102230246251565404236316680908203125"),new AC.ptr(17,"55511151231257827021181583404541015625"),new AC.ptr(17,"277555756156289135105907917022705078125"),new AC.ptr(17,"1387778780781445675529539585113525390625"),new AC.ptr(18,"6938893903907228377647697925567626953125"),new AC.ptr(18,"34694469519536141888238489627838134765625"),new AC.ptr(18,"173472347597680709441192448139190673828125"),new AC.ptr(19,"867361737988403547205962240695953369140625")]);AI=$toNativeArray($kindStruct,[new AH.ptr(new $Uint64(2147483648,0),-63,false),new AH.ptr(new $Uint64(2684354560,0),-60,false),new AH.ptr(new $Uint64(3355443200,0),-57,false),new AH.ptr(new $Uint64(4194304000,0),-54,false),new AH.ptr(new $Uint64(2621440000,0),-50,false),new AH.ptr(new $Uint64(3276800000,0),-47,false),new AH.ptr(new $Uint64(4096000000,0),-44,false),new AH.ptr(new $Uint64(2560000000,0),-40,false)]);AJ=$toNativeArray($kindStruct,[new AH.ptr(new $Uint64(4203730336,136053384),-1220,false),new AH.ptr(new $Uint64(3132023167,2722021238),-1193,false),new AH.ptr(new $Uint64(2333539104,810921078),-1166,false),new AH.ptr(new $Uint64(3477244234,1573795306),-1140,false),new AH.ptr(new $Uint64(2590748842,1432697645),-1113,false),new AH.ptr(new $Uint64(3860516611,1025131999),-1087,false),new AH.ptr(new $Uint64(2876309015,3348809418),-1060,false),new AH.ptr(new $Uint64(4286034428,3200048207),-1034,false),new AH.ptr(new $Uint64(3193344495,1097586188),-1007,false),new AH.ptr(new $Uint64(2379227053,2424306748),-980,false),new AH.ptr(new $Uint64(3545324584,827693699),-954,false),new AH.ptr(new $Uint64(2641472655,2913388981),-927,false),new AH.ptr(new $Uint64(3936100983,602835915),-901,false),new AH.ptr(new $Uint64(2932623761,1081627501),-874,false),new AH.ptr(new $Uint64(2184974969,1572261463),-847,false),new AH.ptr(new $Uint64(3255866422,1308317239),-821,false),new AH.ptr(new $Uint64(2425809519,944281679),-794,false),new AH.ptr(new $Uint64(3614737867,629291719),-768,false),new AH.ptr(new $Uint64(2693189581,2545915892),-741,false),new AH.ptr(new $Uint64(4013165208,388672741),-715,false),new AH.ptr(new $Uint64(2990041083,708162190),-688,false),new AH.ptr(new $Uint64(2227754207,3536207675),-661,false),new AH.ptr(new $Uint64(3319612455,450088378),-635,false),new AH.ptr(new $Uint64(2473304014,3139815830),-608,false),new AH.ptr(new $Uint64(3685510180,2103616900),-582,false),new AH.ptr(new $Uint64(2745919064,224385782),-555,false),new AH.ptr(new $Uint64(4091738259,3737383206),-529,false),new AH.ptr(new $Uint64(3048582568,2868871352),-502,false),new AH.ptr(new $Uint64(2271371013,1820084875),-475,false),new AH.ptr(new $Uint64(3384606560,885076051),-449,false),new AH.ptr(new $Uint64(2521728396,2444895829),-422,false),new AH.ptr(new $Uint64(3757668132,1881767613),-396,false),new AH.ptr(new $Uint64(2799680927,3102062735),-369,false),new AH.ptr(new $Uint64(4171849679,2289335700),-343,false),new AH.ptr(new $Uint64(3108270227,2410191823),-316,false),new AH.ptr(new $Uint64(2315841784,3205436779),-289,false),new AH.ptr(new $Uint64(3450873173,1697722806),-263,false),new AH.ptr(new $Uint64(2571100870,3497754540),-236,false),new AH.ptr(new $Uint64(3831238852,707476230),-210,false),new AH.ptr(new $Uint64(2854495385,1769181907),-183,false),new AH.ptr(new $Uint64(4253529586,2197867022),-157,false),new AH.ptr(new $Uint64(3169126500,2450594539),-130,false),new AH.ptr(new $Uint64(2361183241,1867548876),-103,false),new AH.ptr(new $Uint64(3518437208,3793315116),-77,false),new AH.ptr(new $Uint64(2621440000,0),-50,false),new AH.ptr(new $Uint64(3906250000,0),-24,false),new AH.ptr(new $Uint64(2910383045,2892103680),3,false),new AH.ptr(new $Uint64(2168404344,4170451332),30,false),new AH.ptr(new $Uint64(3231174267,3372684723),56,false),new AH.ptr(new $Uint64(2407412430,2078956656),83,false),new AH.ptr(new $Uint64(3587324068,2884206696),109,false),new AH.ptr(new $Uint64(2672764710,395977285),136,false),new AH.ptr(new $Uint64(3982729777,3569679143),162,false),new AH.ptr(new $Uint64(2967364920,2361961896),189,false),new AH.ptr(new $Uint64(2210859150,447440347),216,false),new AH.ptr(new $Uint64(3294436857,1114709402),242,false),new AH.ptr(new $Uint64(2454546732,2786846552),269,false),new AH.ptr(new $Uint64(3657559652,443583978),295,false),new AH.ptr(new $Uint64(2725094297,2599384906),322,false),new AH.ptr(new $Uint64(4060706939,3028118405),348,false),new AH.ptr(new $Uint64(3025462433,2044532855),375,false),new AH.ptr(new $Uint64(2254145170,1536935362),402,false),new AH.ptr(new $Uint64(3358938053,3365297469),428,false),new AH.ptr(new $Uint64(2502603868,4204241075),455,false),new AH.ptr(new $Uint64(3729170365,2577424355),481,false),new AH.ptr(new $Uint64(2778448436,3677981733),508,false),new AH.ptr(new $Uint64(4140210802,2744688476),534,false),new AH.ptr(new $Uint64(3084697427,1424604878),561,false),new AH.ptr(new $Uint64(2298278679,4062331362),588,false),new AH.ptr(new $Uint64(3424702107,3546052773),614,false),new AH.ptr(new $Uint64(2551601907,2065781727),641,false),new AH.ptr(new $Uint64(3802183132,2535403578),667,false),new AH.ptr(new $Uint64(2832847187,1558426518),694,false),new AH.ptr(new $Uint64(4221271257,2762425404),720,false),new AH.ptr(new $Uint64(3145092172,2812560400),747,false),new AH.ptr(new $Uint64(2343276271,3057687578),774,false),new AH.ptr(new $Uint64(3491753744,2790753324),800,false),new AH.ptr(new $Uint64(2601559269,3918606633),827,false),new AH.ptr(new $Uint64(3876625403,2711358621),853,false),new AH.ptr(new $Uint64(2888311001,1648096297),880,false),new AH.ptr(new $Uint64(2151959390,2057817989),907,false),new AH.ptr(new $Uint64(3206669376,61660461),933,false),new AH.ptr(new $Uint64(2389154863,1581580175),960,false),new AH.ptr(new $Uint64(3560118173,2626467905),986,false),new AH.ptr(new $Uint64(2652494738,3034782633),1013,false),new AH.ptr(new $Uint64(3952525166,3135207385),1039,false),new AH.ptr(new $Uint64(2944860731,2616258155),1066,false)]);AK=$toNativeArray($kindUint64,[new $Uint64(0,1),new $Uint64(0,10),new $Uint64(0,100),new $Uint64(0,1000),new $Uint64(0,10000),new $Uint64(0,100000),new $Uint64(0,1000000),new $Uint64(0,10000000),new $Uint64(0,100000000),new $Uint64(0,1000000000),new $Uint64(2,1410065408),new $Uint64(23,1215752192),new $Uint64(232,3567587328),new $Uint64(2328,1316134912),new $Uint64(23283,276447232),new $Uint64(232830,2764472320),new $Uint64(2328306,1874919424),new $Uint64(23283064,1569325056),new $Uint64(232830643,2808348672),new $Uint64(2328306436,2313682944)]);AP=new AO.ptr(23,8,-127);AQ=new AO.ptr(52,11,-1023);BD=new CW([32,126,161,887,890,895,900,1366,1369,1418,1421,1479,1488,1514,1520,1524,1542,1563,1566,1805,1808,1866,1869,1969,1984,2042,2048,2093,2096,2139,2142,2142,2208,2237,2260,2444,2447,2448,2451,2482,2486,2489,2492,2500,2503,2504,2507,2510,2519,2519,2524,2531,2534,2555,2561,2570,2575,2576,2579,2617,2620,2626,2631,2632,2635,2637,2641,2641,2649,2654,2662,2677,2689,2745,2748,2765,2768,2768,2784,2787,2790,2801,2809,2809,2817,2828,2831,2832,2835,2873,2876,2884,2887,2888,2891,2893,2902,2903,2908,2915,2918,2935,2946,2954,2958,2965,2969,2975,2979,2980,2984,2986,2990,3001,3006,3010,3014,3021,3024,3024,3031,3031,3046,3066,3072,3129,3133,3149,3157,3162,3168,3171,3174,3183,3192,3257,3260,3277,3285,3286,3294,3299,3302,3314,3329,3386,3389,3407,3412,3427,3430,3455,3458,3478,3482,3517,3520,3526,3530,3530,3535,3551,3558,3567,3570,3572,3585,3642,3647,3675,3713,3716,3719,3722,3725,3725,3732,3751,3754,3773,3776,3789,3792,3801,3804,3807,3840,3948,3953,4058,4096,4295,4301,4301,4304,4685,4688,4701,4704,4749,4752,4789,4792,4805,4808,4885,4888,4954,4957,4988,4992,5017,5024,5109,5112,5117,5120,5788,5792,5880,5888,5908,5920,5942,5952,5971,5984,6003,6016,6109,6112,6121,6128,6137,6144,6157,6160,6169,6176,6263,6272,6314,6320,6389,6400,6443,6448,6459,6464,6464,6468,6509,6512,6516,6528,6571,6576,6601,6608,6618,6622,6683,6686,6780,6783,6793,6800,6809,6816,6829,6832,6846,6912,6987,6992,7036,7040,7155,7164,7223,7227,7241,7245,7304,7360,7367,7376,7417,7424,7669,7675,7957,7960,7965,7968,8005,8008,8013,8016,8061,8064,8147,8150,8175,8178,8190,8208,8231,8240,8286,8304,8305,8308,8348,8352,8382,8400,8432,8448,8587,8592,9254,9280,9290,9312,11123,11126,11157,11160,11193,11197,11217,11244,11247,11264,11507,11513,11559,11565,11565,11568,11623,11631,11632,11647,11670,11680,11844,11904,12019,12032,12245,12272,12283,12289,12438,12441,12543,12549,12589,12593,12730,12736,12771,12784,19893,19904,40917,40960,42124,42128,42182,42192,42539,42560,42743,42752,42935,42999,43051,43056,43065,43072,43127,43136,43205,43214,43225,43232,43261,43264,43347,43359,43388,43392,43481,43486,43574,43584,43597,43600,43609,43612,43714,43739,43766,43777,43782,43785,43790,43793,43798,43808,43877,43888,44013,44016,44025,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64449,64467,64831,64848,64911,64914,64967,65008,65021,65024,65049,65056,65131,65136,65276,65281,65470,65474,65479,65482,65487,65490,65495,65498,65500,65504,65518,65532,65533]);BE=new CW([173,907,909,930,1328,1376,1416,1424,1757,2111,2229,2274,2436,2473,2481,2526,2564,2601,2609,2612,2615,2621,2653,2692,2702,2706,2729,2737,2740,2758,2762,2820,2857,2865,2868,2910,2948,2961,2971,2973,3017,3076,3085,3089,3113,3141,3145,3159,3204,3213,3217,3241,3252,3269,3273,3295,3312,3332,3341,3345,3397,3401,3460,3506,3516,3541,3543,3715,3721,3736,3744,3748,3750,3756,3770,3781,3783,3912,3992,4029,4045,4294,4681,4695,4697,4745,4785,4799,4801,4823,4881,5760,5901,5997,6001,6431,6751,7415,8024,8026,8028,8030,8117,8133,8156,8181,8335,9215,11209,11311,11359,11558,11687,11695,11703,11711,11719,11727,11735,11743,11930,12352,12687,12831,13055,42927,43470,43519,43815,43823,64311,64317,64319,64322,64325,65107,65127,65141,65511]);BF=new CX([65536,65613,65616,65629,65664,65786,65792,65794,65799,65843,65847,65947,65952,65952,66000,66045,66176,66204,66208,66256,66272,66299,66304,66339,66352,66378,66384,66426,66432,66499,66504,66517,66560,66717,66720,66729,66736,66771,66776,66811,66816,66855,66864,66915,66927,66927,67072,67382,67392,67413,67424,67431,67584,67589,67592,67640,67644,67644,67647,67742,67751,67759,67808,67829,67835,67867,67871,67897,67903,67903,67968,68023,68028,68047,68050,68102,68108,68147,68152,68154,68159,68167,68176,68184,68192,68255,68288,68326,68331,68342,68352,68405,68409,68437,68440,68466,68472,68497,68505,68508,68521,68527,68608,68680,68736,68786,68800,68850,68858,68863,69216,69246,69632,69709,69714,69743,69759,69825,69840,69864,69872,69881,69888,69955,69968,70006,70016,70093,70096,70132,70144,70206,70272,70313,70320,70378,70384,70393,70400,70412,70415,70416,70419,70457,70460,70468,70471,70472,70475,70477,70480,70480,70487,70487,70493,70499,70502,70508,70512,70516,70656,70749,70784,70855,70864,70873,71040,71093,71096,71133,71168,71236,71248,71257,71264,71276,71296,71351,71360,71369,71424,71449,71453,71467,71472,71487,71840,71922,71935,71935,72384,72440,72704,72773,72784,72812,72816,72847,72850,72886,73728,74649,74752,74868,74880,75075,77824,78894,82944,83526,92160,92728,92736,92777,92782,92783,92880,92909,92912,92917,92928,92997,93008,93047,93053,93071,93952,94020,94032,94078,94095,94111,94176,94176,94208,100332,100352,101106,110592,110593,113664,113770,113776,113788,113792,113800,113808,113817,113820,113823,118784,119029,119040,119078,119081,119154,119163,119272,119296,119365,119552,119638,119648,119665,119808,119967,119970,119970,119973,119974,119977,120074,120077,120134,120138,120485,120488,120779,120782,121483,121499,121519,122880,122904,122907,122922,124928,125124,125127,125142,125184,125258,125264,125273,125278,125279,126464,126500,126503,126523,126530,126530,126535,126548,126551,126564,126567,126619,126625,126651,126704,126705,126976,127019,127024,127123,127136,127150,127153,127221,127232,127244,127248,127339,127344,127404,127462,127490,127504,127547,127552,127560,127568,127569,127744,128722,128736,128748,128752,128758,128768,128883,128896,128980,129024,129035,129040,129095,129104,129113,129120,129159,129168,129197,129296,129319,129328,129328,129331,129355,129360,129374,129408,129425,129472,129472,131072,173782,173824,177972,177984,178205,178208,183969,194560,195101,917760,917999]);BG=new CW([12,39,59,62,399,926,2057,2102,2134,2291,2564,2580,2584,4285,4405,4576,4626,4743,4745,4750,4766,4868,4905,4913,4916,5210,5212,7177,7223,7336,9327,27231,27482,27490,54357,54429,54445,54458,54460,54468,54534,54549,54557,54586,54591,54597,54609,55968,57351,57378,57381,60932,60960,60963,60968,60979,60984,60986,61000,61002,61004,61008,61011,61016,61018,61020,61022,61024,61027,61035,61043,61048,61053,61055,61066,61092,61098,61632,61648,61743,63775,63807]);BH=new CW([160,5760,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8239,8287,12288]);BN=$toNativeArray($kindUint,[0,0,1,0,2,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0]);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["reflect"]=(function(){var $pkg={},$init,A,C,F,D,B,E,L,N,O,P,AU,BY,BZ,CA,CB,CC,CD,CE,CF,CG,CH,CI,CJ,CK,CL,CM,CN,CP,CY,CZ,DA,DE,DF,DG,EZ,FA,FD,HM,HN,HO,HP,HQ,HR,IG,IH,II,IJ,IK,IL,IM,IN,IO,IP,IQ,IR,IS,IT,IU,IX,IY,IZ,JA,JB,JC,JN,JP,JQ,JS,JT,JU,KB,KC,G,M,Q,S,U,BG,BH,BL,CQ,DB,FM,H,I,J,K,R,T,V,W,X,Y,Z,AA,AB,AC,AF,AH,AI,AJ,AK,AM,AP,AQ,AR,AS,AT,AV,AW,AX,AY,AZ,BA,BB,BC,BD,BE,BF,BI,BJ,BK,BM,BN,DI,DK,DL,DM,DN,ER,EW,FN,FS,FU,FV,GD,GE,GF,GH,GI,GJ,GK,GL,GM,GN,GO,GP,GQ,GR,GS,GT,GU,GV,GW,GX,GY,GZ,HA,HB,HC;A=$packages["errors"];C=$packages["github.com/gopherjs/gopherjs/js"];F=$packages["math"];D=$packages["runtime"];B=$packages["strconv"];E=$packages["sync"];L=$pkg.uncommonType=$newType(0,$kindStruct,"reflect.uncommonType",true,"reflect",false,function(pkgPath_,mcount_,_$2_,moff_,_$4_,_methods_){this.$val=this;if(arguments.length===0){this.pkgPath=0;this.mcount=0;this._$2=0;this.moff=0;this._$4=0;this._methods=HP.nil;return;}this.pkgPath=pkgPath_;this.mcount=mcount_;this._$2=_$2_;this.moff=moff_;this._$4=_$4_;this._methods=_methods_;});N=$pkg.funcType=$newType(0,$kindStruct,"reflect.funcType",true,"reflect",false,function(rtype_,inCount_,outCount_,_in_,_out_){this.$val=this;if(arguments.length===0){this.rtype=new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0);this.inCount=0;this.outCount=0;this._in=HO.nil;this._out=HO.nil;return;}this.rtype=rtype_;this.inCount=inCount_;this.outCount=outCount_;this._in=_in_;this._out=_out_;});O=$pkg.name=$newType(0,$kindStruct,"reflect.name",true,"reflect",false,function(bytes_){this.$val=this;if(arguments.length===0){this.bytes=IL.nil;return;}this.bytes=bytes_;});P=$pkg.nameData=$newType(0,$kindStruct,"reflect.nameData",true,"reflect",false,function(name_,tag_,pkgPath_,exported_){this.$val=this;if(arguments.length===0){this.name="";this.tag="";this.pkgPath="";this.exported=false;return;}this.name=name_;this.tag=tag_;this.pkgPath=pkgPath_;this.exported=exported_;});AU=$pkg.mapIter=$newType(0,$kindStruct,"reflect.mapIter",true,"reflect",false,function(t_,m_,keys_,i_){this.$val=this;if(arguments.length===0){this.t=$ifaceNil;this.m=null;this.keys=null;this.i=0;return;}this.t=t_;this.m=m_;this.keys=keys_;this.i=i_;});BY=$pkg.Type=$newType(8,$kindInterface,"reflect.Type",true,"reflect",true,null);BZ=$pkg.Kind=$newType(4,$kindUint,"reflect.Kind",true,"reflect",true,null);CA=$pkg.tflag=$newType(1,$kindUint8,"reflect.tflag",true,"reflect",false,null);CB=$pkg.rtype=$newType(0,$kindStruct,"reflect.rtype",true,"reflect",false,function(size_,ptrdata_,hash_,tflag_,align_,fieldAlign_,kind_,alg_,gcdata_,str_,ptrToThis_){this.$val=this;if(arguments.length===0){this.size=0;this.ptrdata=0;this.hash=0;this.tflag=0;this.align=0;this.fieldAlign=0;this.kind=0;this.alg=IK.nil;this.gcdata=IL.nil;this.str=0;this.ptrToThis=0;return;}this.size=size_;this.ptrdata=ptrdata_;this.hash=hash_;this.tflag=tflag_;this.align=align_;this.fieldAlign=fieldAlign_;this.kind=kind_;this.alg=alg_;this.gcdata=gcdata_;this.str=str_;this.ptrToThis=ptrToThis_;});CC=$pkg.typeAlg=$newType(0,$kindStruct,"reflect.typeAlg",true,"reflect",false,function(hash_,equal_){this.$val=this;if(arguments.length===0){this.hash=$throwNilPointerError;this.equal=$throwNilPointerError;return;}this.hash=hash_;this.equal=equal_;});CD=$pkg.method=$newType(0,$kindStruct,"reflect.method",true,"reflect",false,function(name_,mtyp_,ifn_,tfn_){this.$val=this;if(arguments.length===0){this.name=0;this.mtyp=0;this.ifn=0;this.tfn=0;return;}this.name=name_;this.mtyp=mtyp_;this.ifn=ifn_;this.tfn=tfn_;});CE=$pkg.ChanDir=$newType(4,$kindInt,"reflect.ChanDir",true,"reflect",true,null);CF=$pkg.arrayType=$newType(0,$kindStruct,"reflect.arrayType",true,"reflect",false,function(rtype_,elem_,slice_,len_){this.$val=this;if(arguments.length===0){this.rtype=new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0);this.elem=HN.nil;this.slice=HN.nil;this.len=0;return;}this.rtype=rtype_;this.elem=elem_;this.slice=slice_;this.len=len_;});CG=$pkg.chanType=$newType(0,$kindStruct,"reflect.chanType",true,"reflect",false,function(rtype_,elem_,dir_){this.$val=this;if(arguments.length===0){this.rtype=new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0);this.elem=HN.nil;this.dir=0;return;}this.rtype=rtype_;this.elem=elem_;this.dir=dir_;});CH=$pkg.imethod=$newType(0,$kindStruct,"reflect.imethod",true,"reflect",false,function(name_,typ_){this.$val=this;if(arguments.length===0){this.name=0;this.typ=0;return;}this.name=name_;this.typ=typ_;});CI=$pkg.interfaceType=$newType(0,$kindStruct,"reflect.interfaceType",true,"reflect",false,function(rtype_,pkgPath_,methods_){this.$val=this;if(arguments.length===0){this.rtype=new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0);this.pkgPath=new O.ptr(IL.nil);this.methods=IM.nil;return;}this.rtype=rtype_;this.pkgPath=pkgPath_;this.methods=methods_;});CJ=$pkg.mapType=$newType(0,$kindStruct,"reflect.mapType",true,"reflect",false,function(rtype_,key_,elem_,bucket_,hmap_,keysize_,indirectkey_,valuesize_,indirectvalue_,bucketsize_,reflexivekey_,needkeyupdate_){this.$val=this;if(arguments.length===0){this.rtype=new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0);this.key=HN.nil;this.elem=HN.nil;this.bucket=HN.nil;this.hmap=HN.nil;this.keysize=0;this.indirectkey=0;this.valuesize=0;this.indirectvalue=0;this.bucketsize=0;this.reflexivekey=false;this.needkeyupdate=false;return;}this.rtype=rtype_;this.key=key_;this.elem=elem_;this.bucket=bucket_;this.hmap=hmap_;this.keysize=keysize_;this.indirectkey=indirectkey_;this.valuesize=valuesize_;this.indirectvalue=indirectvalue_;this.bucketsize=bucketsize_;this.reflexivekey=reflexivekey_;this.needkeyupdate=needkeyupdate_;});CK=$pkg.ptrType=$newType(0,$kindStruct,"reflect.ptrType",true,"reflect",false,function(rtype_,elem_){this.$val=this;if(arguments.length===0){this.rtype=new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0);this.elem=HN.nil;return;}this.rtype=rtype_;this.elem=elem_;});CL=$pkg.sliceType=$newType(0,$kindStruct,"reflect.sliceType",true,"reflect",false,function(rtype_,elem_){this.$val=this;if(arguments.length===0){this.rtype=new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0);this.elem=HN.nil;return;}this.rtype=rtype_;this.elem=elem_;});CM=$pkg.structField=$newType(0,$kindStruct,"reflect.structField",true,"reflect",false,function(name_,typ_,offset_){this.$val=this;if(arguments.length===0){this.name=new O.ptr(IL.nil);this.typ=HN.nil;this.offset=0;return;}this.name=name_;this.typ=typ_;this.offset=offset_;});CN=$pkg.structType=$newType(0,$kindStruct,"reflect.structType",true,"reflect",false,function(rtype_,pkgPath_,fields_){this.$val=this;if(arguments.length===0){this.rtype=new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0);this.pkgPath=new O.ptr(IL.nil);this.fields=IN.nil;return;}this.rtype=rtype_;this.pkgPath=pkgPath_;this.fields=fields_;});CP=$pkg.Method=$newType(0,$kindStruct,"reflect.Method",true,"reflect",true,function(Name_,PkgPath_,Type_,Func_,Index_){this.$val=this;if(arguments.length===0){this.Name="";this.PkgPath="";this.Type=$ifaceNil;this.Func=new EZ.ptr(HN.nil,0,0);this.Index=0;return;}this.Name=Name_;this.PkgPath=PkgPath_;this.Type=Type_;this.Func=Func_;this.Index=Index_;});CY=$pkg.nameOff=$newType(4,$kindInt32,"reflect.nameOff",true,"reflect",false,null);CZ=$pkg.typeOff=$newType(4,$kindInt32,"reflect.typeOff",true,"reflect",false,null);DA=$pkg.textOff=$newType(4,$kindInt32,"reflect.textOff",true,"reflect",false,null);DE=$pkg.StructField=$newType(0,$kindStruct,"reflect.StructField",true,"reflect",true,function(Name_,PkgPath_,Type_,Tag_,Offset_,Index_,Anonymous_){this.$val=this;if(arguments.length===0){this.Name="";this.PkgPath="";this.Type=$ifaceNil;this.Tag="";this.Offset=0;this.Index=IZ.nil;this.Anonymous=false;return;}this.Name=Name_;this.PkgPath=PkgPath_;this.Type=Type_;this.Tag=Tag_;this.Offset=Offset_;this.Index=Index_;this.Anonymous=Anonymous_;});DF=$pkg.StructTag=$newType(8,$kindString,"reflect.StructTag",true,"reflect",true,null);DG=$pkg.fieldScan=$newType(0,$kindStruct,"reflect.fieldScan",true,"reflect",false,function(typ_,index_){this.$val=this;if(arguments.length===0){this.typ=JB.nil;this.index=IZ.nil;return;}this.typ=typ_;this.index=index_;});EZ=$pkg.Value=$newType(0,$kindStruct,"reflect.Value",true,"reflect",true,function(typ_,ptr_,flag_){this.$val=this;if(arguments.length===0){this.typ=HN.nil;this.ptr=0;this.flag=0;return;}this.typ=typ_;this.ptr=ptr_;this.flag=flag_;});FA=$pkg.flag=$newType(4,$kindUintptr,"reflect.flag",true,"reflect",false,null);FD=$pkg.ValueError=$newType(0,$kindStruct,"reflect.ValueError",true,"reflect",true,function(Method_,Kind_){this.$val=this;if(arguments.length===0){this.Method="";this.Kind=0;return;}this.Method=Method_;this.Kind=Kind_;});HM=$sliceType(O);HN=$ptrType(CB);HO=$sliceType(HN);HP=$sliceType(CD);HQ=$mapType(HN,HP);HR=$structType("reflect",[{prop:"RWMutex",name:"",exported:true,typ:E.RWMutex,tag:""},{prop:"m",name:"m",exported:false,typ:HQ,tag:""}]);IG=$sliceType($emptyInterface);IH=$ptrType(C.Object);II=$funcType([IG],[IH],true);IJ=$sliceType($String);IK=$ptrType(CC);IL=$ptrType($Uint8);IM=$sliceType(CH);IN=$sliceType(CM);IO=$ptrType(L);IP=$ptrType(P);IQ=$structType("reflect",[{prop:"str",name:"str",exported:false,typ:$String,tag:""}]);IR=$sliceType(IH);IS=$sliceType(EZ);IT=$sliceType(BY);IU=$sliceType(IR);IX=$ptrType(CI);IY=$ptrType(CH);IZ=$sliceType($Int);JA=$sliceType(DG);JB=$ptrType(CN);JC=$sliceType($Uint8);JN=$ptrType($UnsafePointer);JP=$sliceType($Int32);JQ=$ptrType(N);JS=$funcType([$String],[$Bool],false);JT=$funcType([$UnsafePointer,$Uintptr],[$Uintptr],false);JU=$funcType([$UnsafePointer,$UnsafePointer],[$Bool],false);KB=$arrayType($Uintptr,2);KC=$ptrType(FD);H=function(){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=(function(am){var $ptr,am;});$r=am((an=new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),new an.constructor.elem(an)));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=am((ao=new L.ptr(0,0,0,0,0,HP.nil),new ao.constructor.elem(ao)));$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=am((ap=new CD.ptr(0,0,0,0),new ap.constructor.elem(ap)));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=am((aq=new CF.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),HN.nil,HN.nil,0),new aq.constructor.elem(aq)));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=am((ar=new CG.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),HN.nil,0),new ar.constructor.elem(ar)));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=am((as=new N.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),0,0,HO.nil,HO.nil),new as.constructor.elem(as)));$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=am((at=new CI.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),new O.ptr(IL.nil),IM.nil),new at.constructor.elem(at)));$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=am((au=new CJ.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),HN.nil,HN.nil,HN.nil,HN.nil,0,0,0,0,0,false,false),new au.constructor.elem(au)));$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=am((av=new CK.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),HN.nil),new av.constructor.elem(av)));$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=am((aw=new CL.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),HN.nil),new aw.constructor.elem(aw)));$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=am((ax=new CN.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),new O.ptr(IL.nil),IN.nil),new ax.constructor.elem(ax)));$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=am((ay=new CH.ptr(0,0),new ay.constructor.elem(ay)));$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=am((az=new CM.ptr(new O.ptr(IL.nil),HN.nil,0),new az.constructor.elem(az)));$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}G=true;FM=$assertType(AB(new $Uint8(0)),HN);$s=-1;return;}return;}if($f===undefined){$f={$blk:H};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.$s=$s;$f.$r=$r;return $f;};I=function(am){var $ptr,am;return am.jsType;};J=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu;if(am.reflectType===undefined){an=new CB.ptr((($parseInt(am.size)>>0)>>>0),0,0,0,0,0,(($parseInt(am.kind)>>0)<<24>>>24),IK.nil,IL.nil,T($clone(R(W(am.string),"","",!!(am.exported)),O)),0);an.jsType=am;am.reflectType=an;ao=$methodSet(am);if(!(($parseInt(ao.length)===0))||!!(am.named)){an.tflag=(an.tflag|(1))>>>0;if(!!(am.named)){an.tflag=(an.tflag|(4))>>>0;}ap=$makeSlice(HP,$parseInt(ao.length));aq=ap;ar=0;while(true){if(!(ar<aq.$length)){break;}as=ar;at=ao[as];CD.copy(((as<0||as>=ap.$length)?($throwRuntimeError("index out of range"),undefined):ap.$array[ap.$offset+as]),new CD.ptr(T($clone(R(W(at.name),"","",W(at.pkg)===""),O)),V(J(at.typ)),0,0));ar++;}au=new L.ptr(T($clone(R(W(am.pkg),"","",false),O)),($parseInt(ao.length)<<16>>>16),0,0,0,ap);av=an;(M||$throwRuntimeError("assignment to entry in nil map"))[HN.keyFor(av)]={k:av,v:au};au.jsType=am;}aw=an.Kind();if(aw===(17)){K(an,new CF.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),J(am.elem),HN.nil,(($parseInt(am.len)>>0)>>>0)));}else if(aw===(18)){ax=3;if(!!(am.sendOnly)){ax=2;}if(!!(am.recvOnly)){ax=1;}K(an,new CG.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),J(am.elem),(ax>>>0)));}else if(aw===(19)){ay=am.params;az=$makeSlice(HO,$parseInt(ay.length));ba=az;bb=0;while(true){if(!(bb<ba.$length)){break;}bc=bb;((bc<0||bc>=az.$length)?($throwRuntimeError("index out of range"),undefined):az.$array[az.$offset+bc]=J(ay[bc]));bb++;}bd=am.results;be=$makeSlice(HO,$parseInt(bd.length));bf=be;bg=0;while(true){if(!(bg<bf.$length)){break;}bh=bg;((bh<0||bh>=be.$length)?($throwRuntimeError("index out of range"),undefined):be.$array[be.$offset+bh]=J(bd[bh]));bg++;}bi=($parseInt(bd.length)<<16>>>16);if(!!(am.variadic)){bi=(bi|(32768))>>>0;}K(an,new N.ptr($clone(an,CB),($parseInt(ay.length)<<16>>>16),bi,az,be));}else if(aw===(20)){bj=am.methods;bk=$makeSlice(IM,$parseInt(bj.length));bl=bk;bm=0;while(true){if(!(bm<bl.$length)){break;}bn=bm;bo=bj[bn];CH.copy(((bn<0||bn>=bk.$length)?($throwRuntimeError("index out of range"),undefined):bk.$array[bk.$offset+bn]),new CH.ptr(T($clone(R(W(bo.name),"","",W(bo.pkg)===""),O)),V(J(bo.typ))));bm++;}K(an,new CI.ptr($clone(an,CB),new O.ptr(IL.nil),bk));}else if(aw===(21)){K(an,new CJ.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),J(am.key),J(am.elem),HN.nil,HN.nil,0,0,0,0,0,false,false));}else if(aw===(22)){K(an,new CK.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),J(am.elem)));}else if(aw===(23)){K(an,new CL.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),J(am.elem)));}else if(aw===(25)){bp=am.fields;bq=$makeSlice(IN,$parseInt(bp.length));br=bq;bs=0;while(true){if(!(bs<br.$length)){break;}bt=bs;bu=bp[bt];CM.copy(((bt<0||bt>=bq.$length)?($throwRuntimeError("index out of range"),undefined):bq.$array[bq.$offset+bt]),new CM.ptr($clone(R(W(bu.name),W(bu.tag),"",!!(bu.exported)),O),J(bu.typ),(bt>>>0)));bs++;}K(an,new CN.ptr($clone(an,CB),$clone(R(W(am.pkgPath),"","",false),O),bq));}}return am.reflectType;};K=function(am,an){var $ptr,am,an;am.kindType=an;an.rtype=am;};L.ptr.prototype.methods=function(){var $ptr,am;am=this;return am._methods;};L.prototype.methods=function(){return this.$val.methods();};CB.ptr.prototype.uncommon=function(){var $ptr,am,an;am=this;return(an=M[HN.keyFor(am)],an!==undefined?an.v:IO.nil);};CB.prototype.uncommon=function(){return this.$val.uncommon();};N.ptr.prototype.in$=function(){var $ptr,am;am=this;return am._in;};N.prototype.in$=function(){return this.$val.in$();};N.ptr.prototype.out=function(){var $ptr,am;am=this;return am._out;};N.prototype.out=function(){return this.$val.out();};O.ptr.prototype.name=function(){var $ptr,am,an,ao;am="";an=this;am=(ao=Q[IL.keyFor(an.bytes)],ao!==undefined?ao.v:IP.nil).name;return am;};O.prototype.name=function(){return this.$val.name();};O.ptr.prototype.tag=function(){var $ptr,am,an,ao;am="";an=this;am=(ao=Q[IL.keyFor(an.bytes)],ao!==undefined?ao.v:IP.nil).tag;return am;};O.prototype.tag=function(){return this.$val.tag();};O.ptr.prototype.pkgPath=function(){var $ptr,am,an;am=this;return(an=Q[IL.keyFor(am.bytes)],an!==undefined?an.v:IP.nil).pkgPath;};O.prototype.pkgPath=function(){return this.$val.pkgPath();};O.ptr.prototype.isExported=function(){var $ptr,am,an;am=this;return(an=Q[IL.keyFor(am.bytes)],an!==undefined?an.v:IP.nil).exported;};O.prototype.isExported=function(){return this.$val.isExported();};R=function(am,an,ao,ap){var $ptr,am,an,ao,ap,aq,ar;aq=$newDataPointer(0,IL);ar=aq;(Q||$throwRuntimeError("assignment to entry in nil map"))[IL.keyFor(ar)]={k:ar,v:new P.ptr(am,an,ao,ap)};return new O.ptr(aq);};CB.ptr.prototype.nameOff=function(am){var $ptr,am,an,ao;an=this;return(ao=(am>>0),((ao<0||ao>=S.$length)?($throwRuntimeError("index out of range"),undefined):S.$array[S.$offset+ao]));};CB.prototype.nameOff=function(am){return this.$val.nameOff(am);};T=function(am){var $ptr,am,an;an=S.$length;S=$append(S,am);return(an>>0);};CB.ptr.prototype.typeOff=function(am){var $ptr,am,an,ao;an=this;return(ao=(am>>0),((ao<0||ao>=U.$length)?($throwRuntimeError("index out of range"),undefined):U.$array[U.$offset+ao]));};CB.prototype.typeOff=function(am){return this.$val.typeOff(am);};V=function(am){var $ptr,am,an;an=U.$length;U=$append(U,am);return(an>>0);};W=function(am){var $ptr,am,an;an=new IQ.ptr("");an.str=am;return an.str;};X=function(am){var $ptr,am;return!!(I(am).wrapped);};Y=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar;ap=I(ao).fields;aq=0;while(true){if(!(aq<$parseInt(ap.length))){break;}ar=$internalize(ap[aq].prop,$String);am[$externalize(ar,$String)]=an[$externalize(ar,$String)];aq=aq+(1)>>0;}};Z=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ap=am.common();$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=ap;at=am.Kind();$s=6;case 6:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}if(at===17){as=true;$s=5;continue s;}au=am.Kind();$s=7;case 7:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}as=au===25;case 5:if(as){ar=true;$s=4;continue s;}av=am.Kind();$s=8;case 8:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}ar=av===22;case 4:if(ar){$s=2;continue;}$s=3;continue;case 2:aw=am.Kind();$s=9;case 9:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}$s=-1;return new EZ.ptr(aq,an,(ao|(aw>>>0))>>>0);case 3:ax=am.Kind();$s=10;case 10:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}$s=-1;return new EZ.ptr(aq,$newDataPointer(an,I(aq.ptrTo())),(((ao|(ax>>>0))>>>0)|128)>>>0);}return;}if($f===undefined){$f={$blk:Z};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.$s=$s;$f.$r=$r;return $f;};AA=function(am,an,ao){var $ptr,am,an,ao,ap,aq,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=[am];ap=am[0].Kind();$s=3;case 3:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}if(!((ap===23))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.MakeSlice of non-slice type"));case 2:if(an<0){$panic(new $String("reflect.MakeSlice: negative len"));}if(ao<0){$panic(new $String("reflect.MakeSlice: negative cap"));}if(an>ao){$panic(new $String("reflect.MakeSlice: len > cap"));}aq=Z(am[0],$makeSlice(I(am[0]),an,ao,(function(am){return function $b(){var $ptr,aq,ar,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aq=$f.aq;ar=$f.ar;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aq=am[0].Elem();$s=1;case 1:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=I(aq);$s=2;case 2:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}$s=-1;return ar.zero();}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.aq=aq;$f.ar=ar;$f.$s=$s;$f.$r=$r;return $f;};})(am)),0);$s=4;case 4:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}$s=-1;return aq;}return;}if($f===undefined){$f={$blk:AA};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.$s=$s;$f.$r=$r;return $f;};$pkg.MakeSlice=AA;AB=function(am){var $ptr,am;if(!G){return new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0);}if($interfaceIsEqual(am,$ifaceNil)){return $ifaceNil;}return J(am.constructor);};$pkg.TypeOf=AB;AC=function(am){var $ptr,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if($interfaceIsEqual(am,$ifaceNil)){$s=-1;return new EZ.ptr(HN.nil,0,0);}an=Z(J(am.constructor),am.$val,0);$s=1;case 1:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}$s=-1;return an;}return;}if($f===undefined){$f={$blk:AC};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.$s=$s;$f.$r=$r;return $f;};$pkg.ValueOf=AC;AF=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if(!(ao)){ap=false;$s=3;continue s;}if(am.$length===0){aq=true;$s=4;continue s;}as=(ar=am.$length-1>>0,((ar<0||ar>=am.$length)?($throwRuntimeError("index out of range"),undefined):am.$array[am.$offset+ar])).Kind();$s=5;case 5:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}aq=!((as===23));case 4:ap=aq;case 3:if(ap){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.FuncOf: last arg of variadic func must be slice"));case 2:at=$makeSlice(IR,am.$length);au=am;av=0;while(true){if(!(av<au.$length)){break;}aw=av;ax=((av<0||av>=au.$length)?($throwRuntimeError("index out of range"),undefined):au.$array[au.$offset+av]);((aw<0||aw>=at.$length)?($throwRuntimeError("index out of range"),undefined):at.$array[at.$offset+aw]=I(ax));av++;}ay=$makeSlice(IR,an.$length);az=an;ba=0;while(true){if(!(ba<az.$length)){break;}bb=ba;bc=((ba<0||ba>=az.$length)?($throwRuntimeError("index out of range"),undefined):az.$array[az.$offset+ba]);((bb<0||bb>=ay.$length)?($throwRuntimeError("index out of range"),undefined):ay.$array[ay.$offset+bb]=I(bc));ba++;}$s=-1;return J($funcType($externalize(at,IR),$externalize(ay,IR),$externalize(ao,$Bool)));}return;}if($f===undefined){$f={$blk:AF};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.$s=$s;$f.$r=$r;return $f;};$pkg.FuncOf=AF;CB.ptr.prototype.ptrTo=function(){var $ptr,am;am=this;return J($ptrType(I(am)));};CB.prototype.ptrTo=function(){return this.$val.ptrTo();};AH=function(am){var $ptr,am;return J($sliceType(I(am)));};$pkg.SliceOf=AH;AI=function(am){var $ptr,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=Z(am,I(am).zero(),0);$s=1;case 1:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}$s=-1;return an;}return;}if($f===undefined){$f={$blk:AI};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Zero=AI;AJ=function(am){var $ptr,am,an;an=am.Kind();if(an===(25)){return new(I(am).ptr)();}else if(an===(17)){return I(am).zero();}else{return $newDataPointer(I(am).zero(),I(am.ptrTo()));}};AK=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ap=ao.common();$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=ap;ar=AJ(aq);as=aq.Kind();if(as===(3)){ar.$set((an.$low<<24>>24));}else if(as===(4)){ar.$set((an.$low<<16>>16));}else if((as===(2))||(as===(5))){ar.$set((an.$low>>0));}else if(as===(6)){ar.$set(new $Int64(an.$high,an.$low));}else if(as===(8)){ar.$set((an.$low<<24>>>24));}else if(as===(9)){ar.$set((an.$low<<16>>>16));}else if((as===(7))||(as===(10))||(as===(12))){ar.$set((an.$low>>>0));}else if(as===(11)){ar.$set(an);}$s=-1;return new EZ.ptr(aq,ar,(((am|128)>>>0)|(aq.Kind()>>>0))>>>0);}return;}if($f===undefined){$f={$blk:AK};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};AM=function(am,an,ao){var $ptr,am,an,ao;an.$set(ao.$get());};AP=function(am){var $ptr,am,an;an=0;an=new($global.Object)();return an;};AQ=function(am,an){var $ptr,am,an,ao,ap;ao=an;if(!(ao.$get===undefined)){ao=ao.$get();}ap=$internalize(I(am.Key()).keyFor(ao),$String);return[ao,ap];};AR=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar;ap=AQ(am,ao);aq=ap[1];ar=an[$externalize(aq,$String)];if(ar===undefined){return 0;}return $newDataPointer(ar.v,I(DI(am.Elem())));};AS=function(am,an,ao,ap){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aq=AQ(am,ao);ar=aq[0];as=aq[1];at=ap.$get();au=am.Elem();av=au.Kind();$s=3;case 3:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}if(av===25){$s=1;continue;}$s=2;continue;case 1:aw=I(au).zero();Y(aw,at,au);at=aw;case 2:ax=new($global.Object)();ax.k=ar;ax.v=at;an[$externalize(as,$String)]=ax;$s=-1;return;}return;}if($f===undefined){$f={$blk:AS};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.$s=$s;$f.$r=$r;return $f;};AT=function(am,an,ao){var $ptr,am,an,ao,ap,aq;ap=AQ(am,ao);aq=ap[1];delete an[$externalize(aq,$String)];};AV=function(am,an){var $ptr,am,an;return new AU.ptr(am,an,$keys(an),0);};AW=function(am){var $ptr,am,an,ao,ap,aq,ar,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=am;ao=an.keys[an.i];ap=an.t.Key();$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=DI(ap);$s=2;case 2:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=I(aq);$s=3;case 3:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}$s=-1;return $newDataPointer(an.m[$externalize($internalize(ao,$String),$String)].k,ar);}return;}if($f===undefined){$f={$blk:AW};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.$s=$s;$f.$r=$r;return $f;};AX=function(am){var $ptr,am,an;an=am;an.i=an.i+(1)>>0;};AY=function(am){var $ptr,am;return $parseInt($keys(am).length);};AZ=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=$clone(am,EZ).object();if(ao===I(am.typ).nil){$s=1;continue;}$s=2;continue;case 1:ap=Z(an,I(an).nil,am.flag);$s=3;case 3:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}$s=-1;return ap;case 2:aq=null;ar=an.Kind();$s=5;case 5:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}as=ar;at=as;if(at===(23)){$s=6;continue;}if(at===(22)){$s=7;continue;}if(at===(25)){$s=8;continue;}if((at===(17))||(at===(1))||(at===(18))||(at===(19))||(at===(20))||(at===(21))||(at===(24))){$s=9;continue;}$s=10;continue;case 6:au=new(I(an))(ao.$array);au.$offset=ao.$offset;au.$length=ao.$length;au.$capacity=ao.$capacity;aq=$newDataPointer(au,I(DI(an)));$s=11;continue;case 7:av=an.Elem();$s=14;case 14:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}aw=av.Kind();$s=15;case 15:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}if(aw===25){$s=12;continue;}$s=13;continue;case 12:ax=an.Elem();$s=18;case 18:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}if($interfaceIsEqual(ax,am.typ.Elem())){$s=16;continue;}$s=17;continue;case 16:aq=ao;$s=4;continue;case 17:aq=new(I(an))();ay=aq;az=ao;ba=an.Elem();$s=19;case 19:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}bb=ba;$r=Y(ay,az,bb);$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=4;continue;case 13:aq=new(I(an))(ao.$get,ao.$set);$s=11;continue;case 8:aq=new(I(an).ptr)();Y(aq,ao,an);$s=11;continue;case 9:aq=am.ptr;$s=11;continue;case 10:$panic(new FD.ptr("reflect.Convert",as));case 11:case 4:bc=an.common();$s=21;case 21:if($c){$c=false;bc=bc.$blk();}if(bc&&bc.$blk!==undefined){break s;}bd=an.Kind();$s=22;case 22:if($c){$c=false;bd=bd.$blk();}if(bd&&bd.$blk!==undefined){break s;}$s=-1;return new EZ.ptr(bc,aq,(((am.flag&224)>>>0)|(bd>>>0))>>>0);}return;}if($f===undefined){$f={$blk:AZ};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.$s=$s;$f.$r=$r;return $f;};BA=function(am,an){var $ptr,am,an,ao,ap,aq,ar,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=new FA(am.flag).kind();if(!((ao===17))&&!((ao===23))){$panic(new FD.ptr("reflect.Copy",ao));}if(ao===17){new FA(am.flag).mustBeAssignable();}new FA(am.flag).mustBeExported();ap=new FA(an.flag).kind();if(!((ap===17))&&!((ap===23))){$panic(new FD.ptr("reflect.Copy",ap));}new FA(an.flag).mustBeExported();$r=FS("reflect.Copy",am.typ.Elem(),an.typ.Elem());$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}aq=$clone(am,EZ).object();if(ao===17){aq=new(I(AH(am.typ.Elem())))(aq);}ar=$clone(an,EZ).object();if(ap===17){ar=new(I(AH(an.typ.Elem())))(ar);}$s=-1;return $parseInt($copySlice(aq,ar))>>0;}return;}if($f===undefined){$f={$blk:BA};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Copy=BA;BB=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az;ap=HN.nil;aq=HN.nil;ar=0;as="";if(an.typ.Kind()===20){at=an.typ.kindType;if(ao<0||ao>=at.methods.$length){$panic(new $String("reflect: internal error: invalid method index"));}av=(au=at.methods,((ao<0||ao>=au.$length)?($throwRuntimeError("index out of range"),undefined):au.$array[au.$offset+ao]));if(!$clone(at.rtype.nameOff(av.name),O).isExported()){$panic(new $String("reflect: "+am+" of unexported method"));}aq=at.rtype.typeOff(av.typ);as=$clone(at.rtype.nameOff(av.name),O).name();}else{aw=an.typ.uncommon();if(aw===IO.nil||(ao>>>0)>=(aw.mcount>>>0)){$panic(new $String("reflect: internal error: invalid method index"));}ay=$clone((ax=aw.methods(),((ao<0||ao>=ax.$length)?($throwRuntimeError("index out of range"),undefined):ax.$array[ax.$offset+ao])),CD);if(!$clone(an.typ.nameOff(ay.name),O).isExported()){$panic(new $String("reflect: "+am+" of unexported method"));}aq=an.typ.typeOff(ay.mtyp);as=$internalize($methodSet(I(an.typ))[ao].prop,$String);}az=$clone(an,EZ).object();if(X(an.typ)){az=new(I(an.typ))(az);}ar=az[$externalize(as,$String)];return[ap,aq,ar];};BC=function(am,an){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if(am.flag===0){$panic(new FD.ptr("reflect.Value.Interface",0));}if(an&&!((((am.flag&96)>>>0)===0))){$panic(new $String("reflect.Value.Interface: cannot return value obtained from unexported field or method"));}if(!((((am.flag&512)>>>0)===0))){$s=1;continue;}$s=2;continue;case 1:ao=BF("Interface",$clone(am,EZ));$s=3;case 3:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}am=ao;case 2:if(X(am.typ)){$s=-1;return new(I(am.typ))($clone(am,EZ).object());}$s=-1;return $clone(am,EZ).object();}return;}if($f===undefined){$f={$blk:BC};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};BD=function(am,an,ao){var $ptr,am,an,ao;ao.$set(an);};BE=function(){var $ptr;return"?FIXME?";};BF=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=[ao];ap=[ap];if(((an.flag&512)>>>0)===0){$panic(new $String("reflect: internal error: invalid use of makePartialFunc"));}aq=BB(am,$clone(an,EZ),(an.flag>>0)>>10>>0);ao[0]=aq[2];ap[0]=$clone(an,EZ).object();if(X(an.typ)){ap[0]=new(I(an.typ))(ap[0]);}ar=C.MakeFunc((function(ao,ap){return function(ar,as){var $ptr,ar,as;return new $jsObjectPtr(ao[0].apply(ap[0],$externalize(as,IR)));};})(ao,ap));as=$clone(an,EZ).Type().common();$s=1;case 1:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}$s=-1;return new EZ.ptr(as,ar,(((an.flag&96)>>>0)|19)>>>0);}return;}if($f===undefined){$f={$blk:BF};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};CB.ptr.prototype.pointers=function(){var $ptr,am,an;am=this;an=am.Kind();if((an===(22))||(an===(21))||(an===(18))||(an===(19))||(an===(25))||(an===(17))){return true;}else{return false;}};CB.prototype.pointers=function(){return this.$val.pointers();};CB.ptr.prototype.Comparable=function(){var $ptr,am,an,ao,ap,aq,ar,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=this;an=am.Kind();if((an===(19))||(an===(23))||(an===(21))){$s=2;continue;}if(an===(17)){$s=3;continue;}if(an===(25)){$s=4;continue;}$s=5;continue;case 2:$s=-1;return false;case 3:ao=am.Elem().Comparable();$s=6;case 6:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;case 4:ap=0;case 7:if(!(ap<am.NumField())){$s=8;continue;}aq=am.Field(ap);$s=11;case 11:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=aq.Type.Comparable();$s=12;case 12:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}if(!ar){$s=9;continue;}$s=10;continue;case 9:$s=-1;return false;case 10:ap=ap+(1)>>0;$s=7;continue;case 8:case 5:case 1:$s=-1;return true;}return;}if($f===undefined){$f={$blk:CB.ptr.prototype.Comparable};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.$s=$s;$f.$r=$r;return $f;};CB.prototype.Comparable=function(){return this.$val.Comparable();};CB.ptr.prototype.Method=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;bf=$f.bf;bg=$f.bg;bh=$f.bh;bi=$f.bi;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=[an];ao=new CP.ptr("","",$ifaceNil,new EZ.ptr(HN.nil,0,0),0);ap=this;if(ap.Kind()===20){aq=ap.kindType;CP.copy(ao,aq.Method(am));$s=-1;return ao;}ar=ap.exportedMethods();$s=1;case 1:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}as=ar;if(am<0||am>=as.$length){$panic(new $String("reflect: Method index out of range"));}at=$clone(((am<0||am>=as.$length)?($throwRuntimeError("index out of range"),undefined):as.$array[as.$offset+am]),CD);au=$clone(ap.nameOff(at.name),O);ao.Name=$clone(au,O).name();av=19;aw=ap.typeOff(at.mtyp);ax=aw.kindType;ay=$makeSlice(IT,0,(1+ax.in$().$length>>0));ay=$append(ay,ap);az=ax.in$();ba=0;while(true){if(!(ba<az.$length)){break;}bb=((ba<0||ba>=az.$length)?($throwRuntimeError("index out of range"),undefined):az.$array[az.$offset+ba]);ay=$append(ay,bb);ba++;}bc=$makeSlice(IT,0,ax.out().$length);bd=ax.out();be=0;while(true){if(!(be<bd.$length)){break;}bf=((be<0||be>=bd.$length)?($throwRuntimeError("index out of range"),undefined):bd.$array[bd.$offset+be]);bc=$append(bc,bf);be++;}bg=AF(ay,bc,ax.rtype.IsVariadic());$s=2;case 2:if($c){$c=false;bg=bg.$blk();}if(bg&&bg.$blk!==undefined){break s;}bh=bg;ao.Type=bh;an[0]=$internalize($methodSet(ap.jsType)[am].prop,$String);bi=C.MakeFunc((function(an){return function(bi,bj){var $ptr,bi,bj,bk;bk=(0>=bj.$length?($throwRuntimeError("index out of range"),undefined):bj.$array[bj.$offset+0]);return new $jsObjectPtr(bk[$externalize(an[0],$String)].apply(bk,$externalize($subslice(bj,1),IR)));};})(an));ao.Func=new EZ.ptr($assertType(bh,HN),bi,av);ao.Index=am;CP.copy(ao,ao);$s=-1;return ao;}return;}if($f===undefined){$f={$blk:CB.ptr.prototype.Method};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$f.bf=bf;$f.bg=bg;$f.bh=bh;$f.bi=bi;$f.$s=$s;$f.$r=$r;return $f;};CB.prototype.Method=function(am){return this.$val.Method(am);};EZ.ptr.prototype.object=function(){var $ptr,am,an,ao,ap;am=this;if((am.typ.Kind()===17)||(am.typ.Kind()===25)){return am.ptr;}if(!((((am.flag&128)>>>0)===0))){an=am.ptr.$get();if(!(an===$ifaceNil)&&!(an.constructor===I(am.typ))){switch(0){default:ao=am.typ.Kind();if((ao===(11))||(ao===(6))){an=new(I(am.typ))(an.$high,an.$low);}else if((ao===(15))||(ao===(16))){an=new(I(am.typ))(an.$real,an.$imag);}else if(ao===(23)){if(an===an.constructor.nil){an=I(am.typ).nil;break;}ap=new(I(am.typ))(an.$array);ap.$offset=an.$offset;ap.$length=an.$length;ap.$capacity=an.$capacity;an=ap;}}}return an;}return am.ptr;};EZ.prototype.object=function(){return this.$val.object();};EZ.ptr.prototype.call=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;bf=$f.bf;bg=$f.bg;bh=$f.bh;bi=$f.bi;bj=$f.bj;bk=$f.bk;bl=$f.bl;bm=$f.bm;bn=$f.bn;bo=$f.bo;bp=$f.bp;bq=$f.bq;br=$f.br;bs=$f.bs;bt=$f.bt;bu=$f.bu;bv=$f.bv;bw=$f.bw;bx=$f.bx;by=$f.by;bz=$f.bz;ca=$f.ca;cb=$f.cb;cc=$f.cc;cd=$f.cd;ce=$f.ce;cf=$f.cf;cg=$f.cg;ch=$f.ch;ci=$f.ci;cj=$f.cj;ck=$f.ck;cl=$f.cl;cm=$f.cm;cn=$f.cn;co=$f.co;cp=$f.cp;cq=$f.cq;cr=$f.cr;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=this;ap=HN.nil;aq=0;ar=null;if(!((((ao.flag&512)>>>0)===0))){as=BB(am,$clone(ao,EZ),(ao.flag>>0)>>10>>0);ap=as[1];aq=as[2];ar=$clone(ao,EZ).object();if(X(ao.typ)){ar=new(I(ao.typ))(ar);}}else{ap=ao.typ;aq=$clone(ao,EZ).object();ar=undefined;}if(aq===0){$panic(new $String("reflect.Value.Call: call of nil function"));}at=am==="CallSlice";au=ap.NumIn();if(at){if(!ap.IsVariadic()){$panic(new $String("reflect: CallSlice of non-variadic function"));}if(an.$length<au){$panic(new $String("reflect: CallSlice with too few input arguments"));}if(an.$length>au){$panic(new $String("reflect: CallSlice with too many input arguments"));}}else{if(ap.IsVariadic()){au=au-(1)>>0;}if(an.$length<au){$panic(new $String("reflect: Call with too few input arguments"));}if(!ap.IsVariadic()&&an.$length>au){$panic(new $String("reflect: Call with too many input arguments"));}}av=an;aw=0;while(true){if(!(aw<av.$length)){break;}ax=((aw<0||aw>=av.$length)?($throwRuntimeError("index out of range"),undefined):av.$array[av.$offset+aw]);if($clone(ax,EZ).Kind()===0){$panic(new $String("reflect: "+am+" using zero Value argument"));}aw++;}ay=0;case 1:if(!(ay<au)){$s=2;continue;}az=$clone(((ay<0||ay>=an.$length)?($throwRuntimeError("index out of range"),undefined):an.$array[an.$offset+ay]),EZ).Type();ba=ap.In(ay);bb=az;bc=ba;bd=bb.AssignableTo(bc);$s=5;case 5:if($c){$c=false;bd=bd.$blk();}if(bd&&bd.$blk!==undefined){break s;}if(!bd){$s=3;continue;}$s=4;continue;case 3:be=bb.String();$s=6;case 6:if($c){$c=false;be=be.$blk();}if(be&&be.$blk!==undefined){break s;}bf=bc.String();$s=7;case 7:if($c){$c=false;bf=bf.$blk();}if(bf&&bf.$blk!==undefined){break s;}$panic(new $String("reflect: "+am+" using "+be+" as type "+bf));case 4:ay=ay+(1)>>0;$s=1;continue;case 2:if(!at&&ap.IsVariadic()){$s=8;continue;}$s=9;continue;case 8:bg=an.$length-au>>0;bh=AA(ap.In(au),bg,bg);$s=10;case 10:if($c){$c=false;bh=bh.$blk();}if(bh&&bh.$blk!==undefined){break s;}bi=bh;bj=ap.In(au).Elem();$s=11;case 11:if($c){$c=false;bj=bj.$blk();}if(bj&&bj.$blk!==undefined){break s;}bk=bj;bl=0;case 12:if(!(bl<bg)){$s=13;continue;}bn=(bm=au+bl>>0,((bm<0||bm>=an.$length)?($throwRuntimeError("index out of range"),undefined):an.$array[an.$offset+bm]));bo=$clone(bn,EZ).Type();bp=bo.AssignableTo(bk);$s=16;case 16:if($c){$c=false;bp=bp.$blk();}if(bp&&bp.$blk!==undefined){break s;}if(!bp){$s=14;continue;}$s=15;continue;case 14:bq=bo.String();$s=17;case 17:if($c){$c=false;bq=bq.$blk();}if(bq&&bq.$blk!==undefined){break s;}br=bk.String();$s=18;case 18:if($c){$c=false;br=br.$blk();}if(br&&br.$blk!==undefined){break s;}$panic(new $String("reflect: cannot use "+bq+" as type "+br+" in "+am));case 15:bs=$clone(bi,EZ).Index(bl);$s=19;case 19:if($c){$c=false;bs=bs.$blk();}if(bs&&bs.$blk!==undefined){break s;}$r=$clone(bs,EZ).Set($clone(bn,EZ));$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}bl=bl+(1)>>0;$s=12;continue;case 13:bt=an;an=$makeSlice(IS,(au+1>>0));$copySlice($subslice(an,0,au),bt);((au<0||au>=an.$length)?($throwRuntimeError("index out of range"),undefined):an.$array[an.$offset+au]=bi);case 9:bu=an.$length;if(!((bu===ap.NumIn()))){$panic(new $String("reflect.Value.Call: wrong argument count"));}bv=ap.NumOut();bw=new($global.Array)(ap.NumIn());bx=an;by=0;case 21:if(!(by<bx.$length)){$s=22;continue;}bz=by;ca=((by<0||by>=bx.$length)?($throwRuntimeError("index out of range"),undefined):bx.$array[bx.$offset+by]);cb=ap.In(bz);cc=ap.In(bz).common();$s=23;case 23:if($c){$c=false;cc=cc.$blk();}if(cc&&cc.$blk!==undefined){break s;}cd=cc;ce=0;cf=$clone(ca,EZ).assignTo("reflect.Value.Call",cd,ce);$s=24;case 24:if($c){$c=false;cf=cf.$blk();}if(cf&&cf.$blk!==undefined){break s;}cg=$clone(cf,EZ).object();$s=25;case 25:if($c){$c=false;cg=cg.$blk();}if(cg&&cg.$blk!==undefined){break s;}ch=cg;ci=BJ(cb,ch);$s=26;case 26:if($c){$c=false;ci=ci.$blk();}if(ci&&ci.$blk!==undefined){break s;}bw[bz]=ci;by++;$s=21;continue;case 22:cj=BG(new IG([new $jsObjectPtr(aq),new $jsObjectPtr(ar),new $jsObjectPtr(bw)]));$s=27;case 27:if($c){$c=false;cj=cj.$blk();}if(cj&&cj.$blk!==undefined){break s;}ck=cj;cl=bv;if(cl===(0)){$s=29;continue;}if(cl===(1)){$s=30;continue;}$s=31;continue;case 29:$s=-1;return IS.nil;case 30:cm=Z(ap.Out(0),BI(ap.Out(0),ck),0);$s=33;case 33:if($c){$c=false;cm=cm.$blk();}if(cm&&cm.$blk!==undefined){break s;}$s=-1;return new IS([$clone(cm,EZ)]);case 31:cn=$makeSlice(IS,bv);co=cn;cp=0;case 34:if(!(cp<co.$length)){$s=35;continue;}cq=cp;cr=Z(ap.Out(cq),BI(ap.Out(cq),ck[cq]),0);$s=36;case 36:if($c){$c=false;cr=cr.$blk();}if(cr&&cr.$blk!==undefined){break s;}((cq<0||cq>=cn.$length)?($throwRuntimeError("index out of range"),undefined):cn.$array[cn.$offset+cq]=cr);cp++;$s=34;continue;case 35:$s=-1;return cn;case 32:case 28:$s=-1;return IS.nil;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.call};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$f.bf=bf;$f.bg=bg;$f.bh=bh;$f.bi=bi;$f.bj=bj;$f.bk=bk;$f.bl=bl;$f.bm=bm;$f.bn=bn;$f.bo=bo;$f.bp=bp;$f.bq=bq;$f.br=br;$f.bs=bs;$f.bt=bt;$f.bu=bu;$f.bv=bv;$f.bw=bw;$f.bx=bx;$f.by=by;$f.bz=bz;$f.ca=ca;$f.cb=cb;$f.cc=cc;$f.cd=cd;$f.ce=ce;$f.cf=cf;$f.cg=cg;$f.ch=ch;$f.ci=ci;$f.cj=cj;$f.ck=ck;$f.cl=cl;$f.cm=cm;$f.cn=cn;$f.co=co;$f.cp=cp;$f.cq=cq;$f.cr=cr;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.call=function(am,an){return this.$val.call(am,an);};EZ.ptr.prototype.Cap=function(){var $ptr,am,an,ao;am=this;an=new FA(am.flag).kind();ao=an;if(ao===(17)){return am.typ.Len();}else if((ao===(18))||(ao===(23))){return $parseInt($clone(am,EZ).object().$capacity)>>0;}$panic(new FD.ptr("reflect.Value.Cap",an));};EZ.prototype.Cap=function(){return this.$val.Cap();};BI=function(am,an){var $ptr,am,an;if($interfaceIsEqual(am,BH)){return new(I(BH))(an);}return an;};BJ=function(am,an){var $ptr,am,an;if($interfaceIsEqual(am,BH)){return an.object;}return an;};EZ.ptr.prototype.Elem=function(){var $ptr,am,an,ao,ap,aq,ar,as,at,au,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=this;an=new FA(am.flag).kind();ao=an;if(ao===(20)){$s=2;continue;}if(ao===(22)){$s=3;continue;}$s=4;continue;case 2:ap=$clone(am,EZ).object();if(ap===$ifaceNil){$s=-1;return new EZ.ptr(HN.nil,0,0);}aq=J(ap.constructor);ar=Z(aq,ap.$val,(am.flag&96)>>>0);$s=6;case 6:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}$s=-1;return ar;case 3:if($clone(am,EZ).IsNil()){$s=-1;return new EZ.ptr(HN.nil,0,0);}as=$clone(am,EZ).object();at=am.typ.kindType;au=(((((am.flag&96)>>>0)|128)>>>0)|256)>>>0;au=(au|((at.elem.Kind()>>>0)))>>>0;$s=-1;return new EZ.ptr(at.elem,BI(at.elem,as),au);case 4:$panic(new FD.ptr("reflect.Value.Elem",an));case 5:case 1:$s=-1;return new EZ.ptr(HN.nil,0,0);}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Elem};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Elem=function(){return this.$val.Elem();};EZ.ptr.prototype.Field=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=[an];ao=[ao];ap=[ap];aq=[aq];ar=this;if(!((new FA(ar.flag).kind()===25))){$panic(new FD.ptr("reflect.Value.Field",new FA(ar.flag).kind()));}as=ar.typ.kindType;if((am>>>0)>=(as.fields.$length>>>0)){$panic(new $String("reflect: Field index out of range"));}ao[0]=$internalize(I(ar.typ).fields[am].prop,$String);au=(at=as.fields,((am<0||am>=at.$length)?($throwRuntimeError("index out of range"),undefined):at.$array[at.$offset+am]));aq[0]=au.typ;av=(((ar.flag&416)>>>0)|(aq[0].Kind()>>>0))>>>0;if(!$clone(au.name,O).isExported()){if($clone(au.name,O).name()===""){av=(av|(64))>>>0;}else{av=(av|(32))>>>0;}}ax=$clone((aw=as.fields,((am<0||am>=aw.$length)?($throwRuntimeError("index out of range"),undefined):aw.$array[aw.$offset+am])).name,O).tag();if(!(ax==="")&&!((am===0))){$s=1;continue;}$s=2;continue;case 1:an[0]=BK(ax);if(!(an[0]==="")){$s=3;continue;}$s=4;continue;case 3:case 5:ay=[ay];az=$clone(ar,EZ).Field(0);$s=7;case 7:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}ar=az;if(ar.typ===BH){$s=8;continue;}$s=9;continue;case 8:ay[0]=$clone(ar,EZ).object().object;$s=-1;return new EZ.ptr(aq[0],new(I(DI(aq[0])))((function(an,ao,ap,aq,ay){return function(){var $ptr;return $internalize(ay[0][$externalize(an[0],$String)],I(aq[0]));};})(an,ao,ap,aq,ay),(function(an,ao,ap,aq,ay){return function(ba){var $ptr,ba;ay[0][$externalize(an[0],$String)]=$externalize(ba,I(aq[0]));};})(an,ao,ap,aq,ay)),av);case 9:if(ar.typ.Kind()===22){$s=10;continue;}$s=11;continue;case 10:ba=$clone(ar,EZ).Elem();$s=12;case 12:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}ar=ba;case 11:$s=5;continue;case 6:case 4:case 2:ap[0]=ar.ptr;if(!((((av&128)>>>0)===0))&&!((aq[0].Kind()===17))&&!((aq[0].Kind()===25))){$s=13;continue;}$s=14;continue;case 13:$s=-1;return new EZ.ptr(aq[0],new(I(DI(aq[0])))((function(an,ao,ap,aq){return function(){var $ptr;return BI(aq[0],ap[0][$externalize(ao[0],$String)]);};})(an,ao,ap,aq),(function(an,ao,ap,aq){return function(bb){var $ptr,bb;ap[0][$externalize(ao[0],$String)]=BJ(aq[0],bb);};})(an,ao,ap,aq)),av);case 14:bb=Z(aq[0],BI(aq[0],ap[0][$externalize(ao[0],$String)]),av);$s=15;case 15:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}$s=-1;return bb;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Field};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Field=function(am){return this.$val.Field(am);};BK=function(am){var $ptr,am,an,ao,ap,aq,ar;while(true){if(!(!(am===""))){break;}an=0;while(true){if(!(an<am.length&&(am.charCodeAt(an)===32))){break;}an=an+(1)>>0;}am=$substring(am,an);if(am===""){break;}an=0;while(true){if(!(an<am.length&&!((am.charCodeAt(an)===32))&&!((am.charCodeAt(an)===58))&&!((am.charCodeAt(an)===34)))){break;}an=an+(1)>>0;}if((an+1>>0)>=am.length||!((am.charCodeAt(an)===58))||!((am.charCodeAt((an+1>>0))===34))){break;}ao=$substring(am,0,an);am=$substring(am,(an+1>>0));an=1;while(true){if(!(an<am.length&&!((am.charCodeAt(an)===34)))){break;}if(am.charCodeAt(an)===92){an=an+(1)>>0;}an=an+(1)>>0;}if(an>=am.length){break;}ap=$substring(am,0,(an+1>>0));am=$substring(am,(an+1>>0));if(ao==="js"){aq=B.Unquote(ap);ar=aq[0];return ar;}}return"";};EZ.ptr.prototype.Index=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=[am];an=[an];ao=[ao];ap=[ap];aq=[aq];ar=[ar];as=this;at=new FA(as.flag).kind();au=at;if(au===(17)){$s=2;continue;}if(au===(23)){$s=3;continue;}if(au===(24)){$s=4;continue;}$s=5;continue;case 2:av=as.typ.kindType;if(am[0]<0||am[0]>(av.len>>0)){$panic(new $String("reflect: array index out of range"));}aq[0]=av.elem;aw=(as.flag&480)>>>0;aw=(aw|((aq[0].Kind()>>>0)))>>>0;ao[0]=as.ptr;if(!((((aw&128)>>>0)===0))&&!((aq[0].Kind()===17))&&!((aq[0].Kind()===25))){$s=7;continue;}$s=8;continue;case 7:$s=-1;return new EZ.ptr(aq[0],new(I(DI(aq[0])))((function(am,an,ao,ap,aq,ar){return function(){var $ptr;return BI(aq[0],ao[0][am[0]]);};})(am,an,ao,ap,aq,ar),(function(am,an,ao,ap,aq,ar){return function(ax){var $ptr,ax;ao[0][am[0]]=BJ(aq[0],ax);};})(am,an,ao,ap,aq,ar)),aw);case 8:ax=Z(aq[0],BI(aq[0],ao[0][am[0]]),aw);$s=9;case 9:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}$s=-1;return ax;case 3:ay=$clone(as,EZ).object();if(am[0]<0||am[0]>=($parseInt(ay.$length)>>0)){$panic(new $String("reflect: slice index out of range"));}az=as.typ.kindType;ar[0]=az.elem;ba=(384|((as.flag&96)>>>0))>>>0;ba=(ba|((ar[0].Kind()>>>0)))>>>0;am[0]=am[0]+(($parseInt(ay.$offset)>>0))>>0;an[0]=ay.$array;if(!((((ba&128)>>>0)===0))&&!((ar[0].Kind()===17))&&!((ar[0].Kind()===25))){$s=10;continue;}$s=11;continue;case 10:$s=-1;return new EZ.ptr(ar[0],new(I(DI(ar[0])))((function(am,an,ao,ap,aq,ar){return function(){var $ptr;return BI(ar[0],an[0][am[0]]);};})(am,an,ao,ap,aq,ar),(function(am,an,ao,ap,aq,ar){return function(bb){var $ptr,bb;an[0][am[0]]=BJ(ar[0],bb);};})(am,an,ao,ap,aq,ar)),ba);case 11:bb=Z(ar[0],BI(ar[0],an[0][am[0]]),ba);$s=12;case 12:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}$s=-1;return bb;case 4:bc=as.ptr.$get();if(am[0]<0||am[0]>=bc.length){$panic(new $String("reflect: string index out of range"));}bd=(((as.flag&96)>>>0)|8)>>>0;ap[0]=bc.charCodeAt(am[0]);$s=-1;return new EZ.ptr(FM,(ap.$ptr||(ap.$ptr=new IL(function(){return this.$target[0];},function($v){this.$target[0]=$v;},ap))),(bd|128)>>>0);case 5:$panic(new FD.ptr("reflect.Value.Index",at));case 6:case 1:$s=-1;return new EZ.ptr(HN.nil,0,0);}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Index};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Index=function(am){return this.$val.Index(am);};EZ.ptr.prototype.InterfaceData=function(){var $ptr,am;am=this;$panic(A.New("InterfaceData is not supported by GopherJS"));};EZ.prototype.InterfaceData=function(){return this.$val.InterfaceData();};EZ.ptr.prototype.IsNil=function(){var $ptr,am,an,ao;am=this;an=new FA(am.flag).kind();ao=an;if((ao===(22))||(ao===(23))){return $clone(am,EZ).object()===I(am.typ).nil;}else if(ao===(18)){return $clone(am,EZ).object()===$chanNil;}else if(ao===(19)){return $clone(am,EZ).object()===$throwNilPointerError;}else if(ao===(21)){return $clone(am,EZ).object()===false;}else if(ao===(20)){return $clone(am,EZ).object()===$ifaceNil;}else{$panic(new FD.ptr("reflect.Value.IsNil",an));}};EZ.prototype.IsNil=function(){return this.$val.IsNil();};EZ.ptr.prototype.Len=function(){var $ptr,am,an,ao;am=this;an=new FA(am.flag).kind();ao=an;if((ao===(17))||(ao===(24))){return $parseInt($clone(am,EZ).object().length);}else if(ao===(23)){return $parseInt($clone(am,EZ).object().$length)>>0;}else if(ao===(18)){return $parseInt($clone(am,EZ).object().$buffer.length)>>0;}else if(ao===(21)){return $parseInt($keys($clone(am,EZ).object()).length);}else{$panic(new FD.ptr("reflect.Value.Len",an));}};EZ.prototype.Len=function(){return this.$val.Len();};EZ.ptr.prototype.Pointer=function(){var $ptr,am,an,ao;am=this;an=new FA(am.flag).kind();ao=an;if((ao===(18))||(ao===(21))||(ao===(22))||(ao===(26))){if($clone(am,EZ).IsNil()){return 0;}return $clone(am,EZ).object();}else if(ao===(19)){if($clone(am,EZ).IsNil()){return 0;}return 1;}else if(ao===(23)){if($clone(am,EZ).IsNil()){return 0;}return $clone(am,EZ).object().$array;}else{$panic(new FD.ptr("reflect.Value.Pointer",an));}};EZ.prototype.Pointer=function(){return this.$val.Pointer();};EZ.ptr.prototype.Set=function(am){var $ptr,am,an,ao,ap,aq,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;new FA(an.flag).mustBeAssignable();new FA(am.flag).mustBeExported();ao=$clone(am,EZ).assignTo("reflect.Set",an.typ,0);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}am=ao;if(!((((an.flag&128)>>>0)===0))){$s=2;continue;}$s=3;continue;case 2:ap=an.typ.Kind();if(ap===(17)){$s=5;continue;}if(ap===(20)){$s=6;continue;}if(ap===(25)){$s=7;continue;}$s=8;continue;case 5:I(an.typ).copy(an.ptr,am.ptr);$s=9;continue;case 6:aq=BC($clone(am,EZ),false);$s=10;case 10:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}an.ptr.$set(aq);$s=9;continue;case 7:Y(an.ptr,am.ptr,an.typ);$s=9;continue;case 8:an.ptr.$set($clone(am,EZ).object());case 9:case 4:$s=-1;return;case 3:an.ptr=am.ptr;$s=-1;return;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Set};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Set=function(am){return this.$val.Set(am);};EZ.ptr.prototype.SetBytes=function(am){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;new FA(an.flag).mustBeAssignable();new FA(an.flag).mustBe(23);ao=an.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}if(!((ao===8))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.SetBytes of non-byte slice"));case 2:ap=am;if(!(an.typ.Name()==="")){aq=true;$s=6;continue s;}ar=an.typ.Elem().Name();$s=7;case 7:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}aq=!(ar==="");case 6:if(aq){$s=4;continue;}$s=5;continue;case 4:as=new(I(an.typ))(ap.$array);as.$offset=ap.$offset;as.$length=ap.$length;as.$capacity=ap.$capacity;ap=as;case 5:an.ptr.$set(ap);$s=-1;return;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.SetBytes};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.SetBytes=function(am){return this.$val.SetBytes(am);};EZ.ptr.prototype.SetCap=function(am){var $ptr,am,an,ao,ap;an=this;new FA(an.flag).mustBeAssignable();new FA(an.flag).mustBe(23);ao=an.ptr.$get();if(am<($parseInt(ao.$length)>>0)||am>($parseInt(ao.$capacity)>>0)){$panic(new $String("reflect: slice capacity out of range in SetCap"));}ap=new(I(an.typ))(ao.$array);ap.$offset=ao.$offset;ap.$length=ao.$length;ap.$capacity=am;an.ptr.$set(ap);};EZ.prototype.SetCap=function(am){return this.$val.SetCap(am);};EZ.ptr.prototype.SetLen=function(am){var $ptr,am,an,ao,ap;an=this;new FA(an.flag).mustBeAssignable();new FA(an.flag).mustBe(23);ao=an.ptr.$get();if(am<0||am>($parseInt(ao.$capacity)>>0)){$panic(new $String("reflect: slice length out of range in SetLen"));}ap=new(I(an.typ))(ao.$array);ap.$offset=ao.$offset;ap.$length=am;ap.$capacity=ao.$capacity;an.ptr.$set(ap);};EZ.prototype.SetLen=function(am){return this.$val.SetLen(am);};EZ.ptr.prototype.Slice=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=this;ap=0;aq=$ifaceNil;ar=null;as=new FA(ao.flag).kind();at=as;if(at===(17)){$s=2;continue;}if(at===(23)){$s=3;continue;}if(at===(24)){$s=4;continue;}$s=5;continue;case 2:if(((ao.flag&256)>>>0)===0){$panic(new $String("reflect.Value.Slice: slice of unaddressable array"));}au=ao.typ.kindType;ap=(au.len>>0);aq=AH(au.elem);ar=new(I(aq))($clone(ao,EZ).object());$s=6;continue;case 3:aq=ao.typ;ar=$clone(ao,EZ).object();ap=$parseInt(ar.$capacity)>>0;$s=6;continue;case 4:av=ao.ptr.$get();if(am<0||an<am||an>av.length){$panic(new $String("reflect.Value.Slice: string slice index out of bounds"));}aw=AC(new $String($substring(av,am,an)));$s=7;case 7:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}$s=-1;return aw;case 5:$panic(new FD.ptr("reflect.Value.Slice",as));case 6:case 1:if(am<0||an<am||an>ap){$panic(new $String("reflect.Value.Slice: slice index out of bounds"));}ax=Z(aq,$subslice(ar,am,an),(ao.flag&96)>>>0);$s=8;case 8:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}$s=-1;return ax;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Slice};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Slice=function(am,an){return this.$val.Slice(am,an);};EZ.ptr.prototype.Slice3=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ap=this;aq=0;ar=$ifaceNil;as=null;at=new FA(ap.flag).kind();au=at;if(au===(17)){if(((ap.flag&256)>>>0)===0){$panic(new $String("reflect.Value.Slice: slice of unaddressable array"));}av=ap.typ.kindType;aq=(av.len>>0);ar=AH(av.elem);as=new(I(ar))($clone(ap,EZ).object());}else if(au===(23)){ar=ap.typ;as=$clone(ap,EZ).object();aq=$parseInt(as.$capacity)>>0;}else{$panic(new FD.ptr("reflect.Value.Slice3",at));}if(am<0||an<am||ao<an||ao>aq){$panic(new $String("reflect.Value.Slice3: slice index out of bounds"));}aw=Z(ar,$subslice(as,am,an,ao),(ap.flag&96)>>>0);$s=1;case 1:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}$s=-1;return aw;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Slice3};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Slice3=function(am,an,ao){return this.$val.Slice3(am,an,ao);};EZ.ptr.prototype.Close=function(){var $ptr,am;am=this;new FA(am.flag).mustBe(18);new FA(am.flag).mustBeExported();$close($clone(am,EZ).object());};EZ.prototype.Close=function(){return this.$val.Close();};BM=function(am,an,ao,ap){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aq=false;ar=false;as=new IU([new IR([an])]);if(ao){as=$append(as,new IR([]));}at=BL(new IG([as]));$s=1;case 1:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}au=at;if(ao&&(($parseInt(au[0])>>0)===1)){av=false;aw=false;aq=av;ar=aw;$s=-1;return[aq,ar];}ax=au[1];ap.$set(ax[0]);ay=true;az=!!(ax[1]);aq=ay;ar=az;$s=-1;return[aq,ar];}return;}if($f===undefined){$f={$blk:BM};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.$s=$s;$f.$r=$r;return $f;};BN=function(am,an,ao,ap){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aq=new IU([new IR([an,ao.$get()])]);if(ap){aq=$append(aq,new IR([]));}ar=BL(new IG([aq]));$s=1;case 1:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}as=ar;if(ap&&(($parseInt(as[0])>>0)===1)){$s=-1;return false;}$s=-1;return true;}return;}if($f===undefined){$f={$blk:BN};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};BZ.prototype.String=function(){var $ptr,am;am=this.$val;if((am>>0)<CQ.$length){return((am<0||am>=CQ.$length)?($throwRuntimeError("index out of range"),undefined):CQ.$array[CQ.$offset+am]);}return"kind"+B.Itoa((am>>0));};$ptrType(BZ).prototype.String=function(){return new BZ(this.$get()).String();};CB.ptr.prototype.String=function(){var $ptr,am,an;am=this;an=$clone(am.nameOff(am.str),O).name();if(!((((am.tflag&2)>>>0)===0))){return $substring(an,1);}return an;};CB.prototype.String=function(){return this.$val.String();};CB.ptr.prototype.Size=function(){var $ptr,am;am=this;return am.size;};CB.prototype.Size=function(){return this.$val.Size();};CB.ptr.prototype.Bits=function(){var $ptr,am,an;am=this;if(am===HN.nil){$panic(new $String("reflect: Bits of nil Type"));}an=am.Kind();if(an<2||an>16){$panic(new $String("reflect: Bits of non-arithmetic Type "+am.String()));}return $imul((am.size>>0),8);};CB.prototype.Bits=function(){return this.$val.Bits();};CB.ptr.prototype.Align=function(){var $ptr,am;am=this;return(am.align>>0);};CB.prototype.Align=function(){return this.$val.Align();};CB.ptr.prototype.FieldAlign=function(){var $ptr,am;am=this;return(am.fieldAlign>>0);};CB.prototype.FieldAlign=function(){return this.$val.FieldAlign();};CB.ptr.prototype.Kind=function(){var $ptr,am;am=this;return(((am.kind&31)>>>0)>>>0);};CB.prototype.Kind=function(){return this.$val.Kind();};CB.ptr.prototype.common=function(){var $ptr,am;am=this;return am;};CB.prototype.common=function(){return this.$val.common();};CB.ptr.prototype.exportedMethods=function(){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=this;$r=DB.RWMutex.RLock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}an=(ao=DB.m[HN.keyFor(am)],ao!==undefined?[ao.v,true]:[HP.nil,false]);ap=an[0];aq=an[1];$r=DB.RWMutex.RUnlock();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(aq){$s=-1;return ap;}ar=am.uncommon();if(ar===IO.nil){$s=-1;return HP.nil;}as=ar.methods();at=true;au=as;av=0;while(true){if(!(av<au.$length)){break;}aw=$clone(((av<0||av>=au.$length)?($throwRuntimeError("index out of range"),undefined):au.$array[au.$offset+av]),CD);ax=$clone(am.nameOff(aw.name),O);if(!$clone(ax,O).isExported()){at=false;break;}av++;}if(at){ap=as;}else{ap=$makeSlice(HP,0,as.$length);ay=as;az=0;while(true){if(!(az<ay.$length)){break;}ba=$clone(((az<0||az>=ay.$length)?($throwRuntimeError("index out of range"),undefined):ay.$array[ay.$offset+az]),CD);bb=$clone(am.nameOff(ba.name),O);if($clone(bb,O).isExported()){ap=$append(ap,ba);}az++;}ap=$subslice(ap,0,ap.$length,ap.$length);}$r=DB.RWMutex.Lock();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(DB.m===false){DB.m={};}bc=am;(DB.m||$throwRuntimeError("assignment to entry in nil map"))[HN.keyFor(bc)]={k:bc,v:ap};$r=DB.RWMutex.Unlock();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return ap;}return;}if($f===undefined){$f={$blk:CB.ptr.prototype.exportedMethods};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.$s=$s;$f.$r=$r;return $f;};CB.prototype.exportedMethods=function(){return this.$val.exportedMethods();};CB.ptr.prototype.NumMethod=function(){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=this;if(am.Kind()===20){an=am.kindType;$s=-1;return an.NumMethod();}if(((am.tflag&1)>>>0)===0){$s=-1;return 0;}ao=am.exportedMethods();$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao.$length;}return;}if($f===undefined){$f={$blk:CB.ptr.prototype.NumMethod};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};CB.prototype.NumMethod=function(){return this.$val.NumMethod();};CB.ptr.prototype.MethodByName=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=new CP.ptr("","",$ifaceNil,new EZ.ptr(HN.nil,0,0),0);ao=false;ap=this;if(ap.Kind()===20){aq=ap.kindType;ar=aq.MethodByName(am);CP.copy(an,ar[0]);ao=ar[1];$s=-1;return[an,ao];}as=ap.uncommon();if(as===IO.nil){at=new CP.ptr("","",$ifaceNil,new EZ.ptr(HN.nil,0,0),0);au=false;CP.copy(an,at);ao=au;$s=-1;return[an,ao];}av=as.methods();aw=0;case 1:if(!(aw<(as.mcount>>0))){$s=2;continue;}ax=$clone(((aw<0||aw>=av.$length)?($throwRuntimeError("index out of range"),undefined):av.$array[av.$offset+aw]),CD);ay=$clone(ap.nameOff(ax.name),O);if($clone(ay,O).isExported()&&$clone(ay,O).name()===am){$s=3;continue;}$s=4;continue;case 3:ba=ap.Method(aw);$s=5;case 5:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}az=$clone(ba,CP);bb=true;CP.copy(an,az);ao=bb;$s=-1;return[an,ao];case 4:aw=aw+(1)>>0;$s=1;continue;case 2:bc=new CP.ptr("","",$ifaceNil,new EZ.ptr(HN.nil,0,0),0);bd=false;CP.copy(an,bc);ao=bd;$s=-1;return[an,ao];}return;}if($f===undefined){$f={$blk:CB.ptr.prototype.MethodByName};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.$s=$s;$f.$r=$r;return $f;};CB.prototype.MethodByName=function(am){return this.$val.MethodByName(am);};CB.ptr.prototype.PkgPath=function(){var $ptr,am,an;am=this;if(((am.tflag&4)>>>0)===0){return"";}an=am.uncommon();if(an===IO.nil){return"";}return $clone(am.nameOff(an.pkgPath),O).name();};CB.prototype.PkgPath=function(){return this.$val.PkgPath();};CB.ptr.prototype.Name=function(){var $ptr,am,an,ao;am=this;if(((am.tflag&4)>>>0)===0){return"";}an=am.String();ao=an.length-1>>0;while(true){if(!(ao>=0)){break;}if(an.charCodeAt(ao)===46){break;}ao=ao-(1)>>0;}return $substring(an,(ao+1>>0));};CB.prototype.Name=function(){return this.$val.Name();};CB.ptr.prototype.ChanDir=function(){var $ptr,am,an;am=this;if(!((am.Kind()===18))){$panic(new $String("reflect: ChanDir of non-chan type"));}an=am.kindType;return(an.dir>>0);};CB.prototype.ChanDir=function(){return this.$val.ChanDir();};CB.ptr.prototype.IsVariadic=function(){var $ptr,am,an;am=this;if(!((am.Kind()===19))){$panic(new $String("reflect: IsVariadic of non-func type"));}an=am.kindType;return!((((an.outCount&32768)>>>0)===0));};CB.prototype.IsVariadic=function(){return this.$val.IsVariadic();};CB.ptr.prototype.Elem=function(){var $ptr,am,an,ao,ap,aq,ar,as;am=this;an=am.Kind();if(an===(17)){ao=am.kindType;return ER(ao.elem);}else if(an===(18)){ap=am.kindType;return ER(ap.elem);}else if(an===(21)){aq=am.kindType;return ER(aq.elem);}else if(an===(22)){ar=am.kindType;return ER(ar.elem);}else if(an===(23)){as=am.kindType;return ER(as.elem);}$panic(new $String("reflect: Elem of invalid type"));};CB.prototype.Elem=function(){return this.$val.Elem();};CB.ptr.prototype.Field=function(am){var $ptr,am,an,ao,ap,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;if(!((an.Kind()===25))){$panic(new $String("reflect: Field of non-struct type"));}ao=an.kindType;ap=ao.Field(am);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}$s=-1;return ap;}return;}if($f===undefined){$f={$blk:CB.ptr.prototype.Field};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.$s=$s;$f.$r=$r;return $f;};CB.prototype.Field=function(am){return this.$val.Field(am);};CB.ptr.prototype.FieldByIndex=function(am){var $ptr,am,an,ao,ap,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;if(!((an.Kind()===25))){$panic(new $String("reflect: FieldByIndex of non-struct type"));}ao=an.kindType;ap=ao.FieldByIndex(am);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}$s=-1;return ap;}return;}if($f===undefined){$f={$blk:CB.ptr.prototype.FieldByIndex};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.$s=$s;$f.$r=$r;return $f;};CB.prototype.FieldByIndex=function(am){return this.$val.FieldByIndex(am);};CB.ptr.prototype.FieldByName=function(am){var $ptr,am,an,ao,ap,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;if(!((an.Kind()===25))){$panic(new $String("reflect: FieldByName of non-struct type"));}ao=an.kindType;ap=ao.FieldByName(am);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}$s=-1;return ap;}return;}if($f===undefined){$f={$blk:CB.ptr.prototype.FieldByName};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.$s=$s;$f.$r=$r;return $f;};CB.prototype.FieldByName=function(am){return this.$val.FieldByName(am);};CB.ptr.prototype.FieldByNameFunc=function(am){var $ptr,am,an,ao,ap,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;if(!((an.Kind()===25))){$panic(new $String("reflect: FieldByNameFunc of non-struct type"));}ao=an.kindType;ap=ao.FieldByNameFunc(am);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}$s=-1;return ap;}return;}if($f===undefined){$f={$blk:CB.ptr.prototype.FieldByNameFunc};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.$s=$s;$f.$r=$r;return $f;};CB.prototype.FieldByNameFunc=function(am){return this.$val.FieldByNameFunc(am);};CB.ptr.prototype.In=function(am){var $ptr,am,an,ao,ap;an=this;if(!((an.Kind()===19))){$panic(new $String("reflect: In of non-func type"));}ao=an.kindType;return ER((ap=ao.in$(),((am<0||am>=ap.$length)?($throwRuntimeError("index out of range"),undefined):ap.$array[ap.$offset+am])));};CB.prototype.In=function(am){return this.$val.In(am);};CB.ptr.prototype.Key=function(){var $ptr,am,an;am=this;if(!((am.Kind()===21))){$panic(new $String("reflect: Key of non-map type"));}an=am.kindType;return ER(an.key);};CB.prototype.Key=function(){return this.$val.Key();};CB.ptr.prototype.Len=function(){var $ptr,am,an;am=this;if(!((am.Kind()===17))){$panic(new $String("reflect: Len of non-array type"));}an=am.kindType;return(an.len>>0);};CB.prototype.Len=function(){return this.$val.Len();};CB.ptr.prototype.NumField=function(){var $ptr,am,an;am=this;if(!((am.Kind()===25))){$panic(new $String("reflect: NumField of non-struct type"));}an=am.kindType;return an.fields.$length;};CB.prototype.NumField=function(){return this.$val.NumField();};CB.ptr.prototype.NumIn=function(){var $ptr,am,an;am=this;if(!((am.Kind()===19))){$panic(new $String("reflect: NumIn of non-func type"));}an=am.kindType;return(an.inCount>>0);};CB.prototype.NumIn=function(){return this.$val.NumIn();};CB.ptr.prototype.NumOut=function(){var $ptr,am,an;am=this;if(!((am.Kind()===19))){$panic(new $String("reflect: NumOut of non-func type"));}an=am.kindType;return an.out().$length;};CB.prototype.NumOut=function(){return this.$val.NumOut();};CB.ptr.prototype.Out=function(am){var $ptr,am,an,ao,ap;an=this;if(!((an.Kind()===19))){$panic(new $String("reflect: Out of non-func type"));}ao=an.kindType;return ER((ap=ao.out(),((am<0||am>=ap.$length)?($throwRuntimeError("index out of range"),undefined):ap.$array[ap.$offset+am])));};CB.prototype.Out=function(am){return this.$val.Out(am);};CE.prototype.String=function(){var $ptr,am,an;am=this.$val;an=am;if(an===(2)){return"chan<-";}else if(an===(1)){return"<-chan";}else if(an===(3)){return"chan";}return"ChanDir"+B.Itoa((am>>0));};$ptrType(CE).prototype.String=function(){return new CE(this.$get()).String();};CI.ptr.prototype.Method=function(am){var $ptr,am,an,ao,ap,aq,ar;an=new CP.ptr("","",$ifaceNil,new EZ.ptr(HN.nil,0,0),0);ao=this;if(am<0||am>=ao.methods.$length){return an;}aq=(ap=ao.methods,((am<0||am>=ap.$length)?($throwRuntimeError("index out of range"),undefined):ap.$array[ap.$offset+am]));ar=$clone(ao.rtype.nameOff(aq.name),O);an.Name=$clone(ar,O).name();if(!$clone(ar,O).isExported()){an.PkgPath=$clone(ar,O).pkgPath();if(an.PkgPath===""){an.PkgPath=$clone(ao.pkgPath,O).name();}}an.Type=ER(ao.rtype.typeOff(aq.typ));an.Index=am;return an;};CI.prototype.Method=function(am){return this.$val.Method(am);};CI.ptr.prototype.NumMethod=function(){var $ptr,am;am=this;return am.methods.$length;};CI.prototype.NumMethod=function(){return this.$val.NumMethod();};CI.ptr.prototype.MethodByName=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw;an=new CP.ptr("","",$ifaceNil,new EZ.ptr(HN.nil,0,0),0);ao=false;ap=this;if(ap===IX.nil){return[an,ao];}aq=IY.nil;ar=ap.methods;as=0;while(true){if(!(as<ar.$length)){break;}at=as;aq=(au=ap.methods,((at<0||at>=au.$length)?($throwRuntimeError("index out of range"),undefined):au.$array[au.$offset+at]));if($clone(ap.rtype.nameOff(aq.name),O).name()===am){av=$clone(ap.Method(at),CP);aw=true;CP.copy(an,av);ao=aw;return[an,ao];}as++;}return[an,ao];};CI.prototype.MethodByName=function(am){return this.$val.MethodByName(am);};DF.prototype.Get=function(am){var $ptr,am,an,ao,ap;an=this.$val;ao=new DF(an).Lookup(am);ap=ao[0];return ap;};$ptrType(DF).prototype.Get=function(am){return new DF(this.$get()).Get(am);};DF.prototype.Lookup=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az;an="";ao=false;ap=this.$val;while(true){if(!(!(ap===""))){break;}aq=0;while(true){if(!(aq<ap.length&&(ap.charCodeAt(aq)===32))){break;}aq=aq+(1)>>0;}ap=$substring(ap,aq);if(ap===""){break;}aq=0;while(true){if(!(aq<ap.length&&ap.charCodeAt(aq)>32&&!((ap.charCodeAt(aq)===58))&&!((ap.charCodeAt(aq)===34))&&!((ap.charCodeAt(aq)===127)))){break;}aq=aq+(1)>>0;}if((aq===0)||(aq+1>>0)>=ap.length||!((ap.charCodeAt(aq)===58))||!((ap.charCodeAt((aq+1>>0))===34))){break;}ar=$substring(ap,0,aq);ap=$substring(ap,(aq+1>>0));aq=1;while(true){if(!(aq<ap.length&&!((ap.charCodeAt(aq)===34)))){break;}if(ap.charCodeAt(aq)===92){aq=aq+(1)>>0;}aq=aq+(1)>>0;}if(aq>=ap.length){break;}as=$substring(ap,0,(aq+1>>0));ap=$substring(ap,(aq+1>>0));if(am===ar){at=B.Unquote(as);au=at[0];av=at[1];if(!($interfaceIsEqual(av,$ifaceNil))){break;}aw=au;ax=true;an=aw;ao=ax;return[an,ao];}}ay="";az=false;an=ay;ao=az;return[an,ao];};$ptrType(DF).prototype.Lookup=function(am){return new DF(this.$get()).Lookup(am);};CN.ptr.prototype.Field=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=new DE.ptr("","",$ifaceNil,"",0,IZ.nil,false);ao=this;if(am<0||am>=ao.fields.$length){$panic(new $String("reflect: Field index out of bounds"));}aq=(ap=ao.fields,((am<0||am>=ap.$length)?($throwRuntimeError("index out of range"),undefined):ap.$array[ap.$offset+am]));an.Type=ER(aq.typ);ar=$clone(aq.name,O).name();if(!(ar==="")){$s=1;continue;}$s=2;continue;case 1:an.Name=ar;$s=3;continue;case 2:as=an.Type;at=as.Kind();$s=6;case 6:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}if(at===22){$s=4;continue;}$s=5;continue;case 4:au=as.Elem();$s=7;case 7:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}as=au;case 5:av=as.Name();$s=8;case 8:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}an.Name=av;an.Anonymous=true;case 3:if(!$clone(aq.name,O).isExported()){an.PkgPath=$clone(aq.name,O).pkgPath();if(an.PkgPath===""){an.PkgPath=$clone(ao.pkgPath,O).name();}}aw=$clone(aq.name,O).tag();if(!(aw==="")){an.Tag=aw;}an.Offset=aq.offset;an.Index=new IZ([am]);$s=-1;return an;}return;}if($f===undefined){$f={$blk:CN.ptr.prototype.Field};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.$s=$s;$f.$r=$r;return $f;};CN.prototype.Field=function(am){return this.$val.Field(am);};CN.ptr.prototype.FieldByIndex=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=new DE.ptr("","",$ifaceNil,"",0,IZ.nil,false);ao=this;an.Type=ER(ao.rtype);ap=am;aq=0;case 1:if(!(aq<ap.$length)){$s=2;continue;}ar=aq;as=((aq<0||aq>=ap.$length)?($throwRuntimeError("index out of range"),undefined):ap.$array[ap.$offset+aq]);if(ar>0){$s=3;continue;}$s=4;continue;case 3:at=an.Type;av=at.Kind();$s=8;case 8:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}if(!(av===22)){au=false;$s=7;continue s;}aw=at.Elem();$s=9;case 9:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}ax=aw.Kind();$s=10;case 10:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}au=ax===25;case 7:if(au){$s=5;continue;}$s=6;continue;case 5:ay=at.Elem();$s=11;case 11:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}at=ay;case 6:an.Type=at;case 4:az=an.Type.Field(as);$s=12;case 12:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}DE.copy(an,az);aq++;$s=1;continue;case 2:$s=-1;return an;}return;}if($f===undefined){$f={$blk:CN.ptr.prototype.FieldByIndex};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.$s=$s;$f.$r=$r;return $f;};CN.prototype.FieldByIndex=function(am){return this.$val.FieldByIndex(am);};CN.ptr.prototype.FieldByNameFunc=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;bf=$f.bf;bg=$f.bg;bh=$f.bh;bi=$f.bi;bj=$f.bj;bk=$f.bk;bl=$f.bl;bm=$f.bm;bn=$f.bn;bo=$f.bo;bp=$f.bp;bq=$f.bq;br=$f.br;bs=$f.bs;bt=$f.bt;bu=$f.bu;bv=$f.bv;bw=$f.bw;bx=$f.bx;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=new DE.ptr("","",$ifaceNil,"",0,IZ.nil,false);ao=false;ap=this;aq=new JA([]);ar=new JA([new DG.ptr(ap,IZ.nil)]);as=false;at=$makeMap(JB.keyFor,[]);case 1:if(!(ar.$length>0)){$s=2;continue;}au=ar;av=$subslice(aq,0,0);aq=au;ar=av;aw=as;as=false;ax=aq;ay=0;case 3:if(!(ay<ax.$length)){$s=4;continue;}az=$clone(((ay<0||ay>=ax.$length)?($throwRuntimeError("index out of range"),undefined):ax.$array[ax.$offset+ay]),DG);ba=az.typ;if((bb=at[JB.keyFor(ba)],bb!==undefined?bb.v:false)){$s=5;continue;}$s=6;continue;case 5:ay++;$s=3;continue;case 6:bc=ba;(at||$throwRuntimeError("assignment to entry in nil map"))[JB.keyFor(bc)]={k:bc,v:true};bd=ba.fields;be=0;case 7:if(!(be<bd.$length)){$s=8;continue;}bf=be;bh=(bg=ba.fields,((bf<0||bf>=bg.$length)?($throwRuntimeError("index out of range"),undefined):bg.$array[bg.$offset+bf]));bi="";bj=HN.nil;bk=$clone(bh.name,O).name();if(!(bk==="")){$s=9;continue;}$s=10;continue;case 9:bi=bk;$s=11;continue;case 10:bj=bh.typ;if(bj.Kind()===22){$s=12;continue;}$s=13;continue;case 12:bl=bj.Elem().common();$s=14;case 14:if($c){$c=false;bl=bl.$blk();}if(bl&&bl.$blk!==undefined){break s;}bj=bl;case 13:bi=bj.Name();case 11:bm=am(bi);$s=17;case 17:if($c){$c=false;bm=bm.$blk();}if(bm&&bm.$blk!==undefined){break s;}if(bm){$s=15;continue;}$s=16;continue;case 15:if((bn=aw[JB.keyFor(ba)],bn!==undefined?bn.v:0)>1||ao){bo=new DE.ptr("","",$ifaceNil,"",0,IZ.nil,false);bp=false;DE.copy(an,bo);ao=bp;$s=-1;return[an,ao];}bq=ba.Field(bf);$s=18;case 18:if($c){$c=false;bq=bq.$blk();}if(bq&&bq.$blk!==undefined){break s;}DE.copy(an,bq);an.Index=IZ.nil;an.Index=$appendSlice(an.Index,az.index);an.Index=$append(an.Index,bf);ao=true;be++;$s=7;continue;case 16:if(ao||bj===HN.nil||!((bj.Kind()===25))){be++;$s=7;continue;}br=bj.kindType;if((bs=as[JB.keyFor(br)],bs!==undefined?bs.v:0)>0){bt=br;(as||$throwRuntimeError("assignment to entry in nil map"))[JB.keyFor(bt)]={k:bt,v:2};be++;$s=7;continue;}if(as===false){as=$makeMap(JB.keyFor,[]);}bu=br;(as||$throwRuntimeError("assignment to entry in nil map"))[JB.keyFor(bu)]={k:bu,v:1};if((bv=aw[JB.keyFor(ba)],bv!==undefined?bv.v:0)>1){bw=br;(as||$throwRuntimeError("assignment to entry in nil map"))[JB.keyFor(bw)]={k:bw,v:2};}bx=IZ.nil;bx=$appendSlice(bx,az.index);bx=$append(bx,bf);ar=$append(ar,new DG.ptr(br,bx));be++;$s=7;continue;case 8:ay++;$s=3;continue;case 4:if(ao){$s=2;continue;}$s=1;continue;case 2:$s=-1;return[an,ao];}return;}if($f===undefined){$f={$blk:CN.ptr.prototype.FieldByNameFunc};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$f.bf=bf;$f.bg=bg;$f.bh=bh;$f.bi=bi;$f.bj=bj;$f.bk=bk;$f.bl=bl;$f.bm=bm;$f.bn=bn;$f.bo=bo;$f.bp=bp;$f.bq=bq;$f.br=br;$f.bs=bs;$f.bt=bt;$f.bu=bu;$f.bv=bv;$f.bw=bw;$f.bx=bx;$f.$s=$s;$f.$r=$r;return $f;};CN.prototype.FieldByNameFunc=function(am){return this.$val.FieldByNameFunc(am);};CN.ptr.prototype.FieldByName=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=[am];an=new DE.ptr("","",$ifaceNil,"",0,IZ.nil,false);ao=false;ap=this;aq=false;if(!(am[0]==="")){$s=1;continue;}$s=2;continue;case 1:ar=ap.fields;as=0;case 3:if(!(as<ar.$length)){$s=4;continue;}at=as;av=(au=ap.fields,((at<0||at>=au.$length)?($throwRuntimeError("index out of range"),undefined):au.$array[au.$offset+at]));aw=$clone(av.name,O).name();if(aw===""){$s=5;continue;}$s=6;continue;case 5:aq=true;as++;$s=3;continue;case 6:if(aw===am[0]){$s=7;continue;}$s=8;continue;case 7:ay=ap.Field(at);$s=9;case 9:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}ax=$clone(ay,DE);az=true;DE.copy(an,ax);ao=az;$s=-1;return[an,ao];case 8:as++;$s=3;continue;case 4:case 2:if(!aq){$s=-1;return[an,ao];}bb=ap.FieldByNameFunc((function(am){return function(bb){var $ptr,bb;return bb===am[0];};})(am));$s=10;case 10:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}ba=bb;DE.copy(an,ba[0]);ao=ba[1];$s=-1;return[an,ao];}return;}if($f===undefined){$f={$blk:CN.ptr.prototype.FieldByName};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.$s=$s;$f.$r=$r;return $f;};CN.prototype.FieldByName=function(am){return this.$val.FieldByName(am);};DI=function(am){var $ptr,am;return $assertType(am,HN).ptrTo();};$pkg.PtrTo=DI;CB.ptr.prototype.Implements=function(am){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;if($interfaceIsEqual(am,$ifaceNil)){$panic(new $String("reflect: nil type passed to Type.Implements"));}ao=am.Kind();$s=3;case 3:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}if(!((ao===20))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect: non-interface type passed to Type.Implements"));case 2:$s=-1;return DK($assertType(am,HN),an);}return;}if($f===undefined){$f={$blk:CB.ptr.prototype.Implements};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};CB.prototype.Implements=function(am){return this.$val.Implements(am);};CB.ptr.prototype.AssignableTo=function(am){var $ptr,am,an,ao,ap,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;if($interfaceIsEqual(am,$ifaceNil)){$panic(new $String("reflect: nil type passed to Type.AssignableTo"));}ao=$assertType(am,HN);ap=DL(ao,an);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}$s=-1;return ap||DK(ao,an);}return;}if($f===undefined){$f={$blk:CB.ptr.prototype.AssignableTo};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.$s=$s;$f.$r=$r;return $f;};CB.prototype.AssignableTo=function(am){return this.$val.AssignableTo(am);};CB.ptr.prototype.ConvertibleTo=function(am){var $ptr,am,an,ao,ap,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;if($interfaceIsEqual(am,$ifaceNil)){$panic(new $String("reflect: nil type passed to Type.ConvertibleTo"));}ao=$assertType(am,HN);ap=GH(ao,an);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}$s=-1;return!(ap===$throwNilPointerError);}return;}if($f===undefined){$f={$blk:CB.ptr.prototype.ConvertibleTo};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.$s=$s;$f.$r=$r;return $f;};CB.prototype.ConvertibleTo=function(am){return this.$val.ConvertibleTo(am);};DK=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc;if(!((am.Kind()===20))){return false;}ao=am.kindType;if(ao.methods.$length===0){return true;}if(an.Kind()===20){ap=an.kindType;aq=0;ar=0;while(true){if(!(ar<ap.methods.$length)){break;}at=(as=ao.methods,((aq<0||aq>=as.$length)?($throwRuntimeError("index out of range"),undefined):as.$array[as.$offset+aq]));av=(au=ap.methods,((ar<0||ar>=au.$length)?($throwRuntimeError("index out of range"),undefined):au.$array[au.$offset+ar]));if($clone(an.nameOff(av.name),O).name()===$clone(ao.rtype.nameOff(at.name),O).name()&&an.typeOff(av.typ)===ao.rtype.typeOff(at.typ)){aq=aq+(1)>>0;if(aq>=ao.methods.$length){return true;}}ar=ar+(1)>>0;}return false;}aw=an.uncommon();if(aw===IO.nil){return false;}ax=0;ay=aw.methods();az=0;while(true){if(!(az<(aw.mcount>>0))){break;}bb=(ba=ao.methods,((ax<0||ax>=ba.$length)?($throwRuntimeError("index out of range"),undefined):ba.$array[ba.$offset+ax]));bc=$clone(((az<0||az>=ay.$length)?($throwRuntimeError("index out of range"),undefined):ay.$array[ay.$offset+az]),CD);if($clone(an.nameOff(bc.name),O).name()===$clone(ao.rtype.nameOff(bb.name),O).name()&&an.typeOff(bc.mtyp)===ao.rtype.typeOff(bb.typ)){ax=ax+(1)>>0;if(ax>=ao.methods.$length){return true;}}az=az+(1)>>0;}return false;};DL=function(am,an){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if(am===an){$s=-1;return true;}if(!(am.Name()==="")&&!(an.Name()==="")||!((am.Kind()===an.Kind()))){$s=-1;return false;}ao=DN(am,an,true);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;}return;}if($f===undefined){$f={$blk:DL};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};DM=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if(ao){$s=-1;return $interfaceIsEqual(am,an);}aq=am.Name();$s=4;case 4:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=an.Name();$s=5;case 5:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}if(!(aq===ar)){ap=true;$s=3;continue s;}as=am.Kind();$s=6;case 6:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}at=an.Kind();$s=7;case 7:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}ap=!((as===at));case 3:if(ap){$s=1;continue;}$s=2;continue;case 1:$s=-1;return false;case 2:au=am.common();$s=8;case 8:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}av=au;aw=an.common();$s=9;case 9:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}ax=aw;ay=DN(av,ax,false);$s=10;case 10:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}$s=-1;return ay;}return;}if($f===undefined){$f={$blk:DM};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.$s=$s;$f.$r=$r;return $f;};DN=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;bf=$f.bf;bg=$f.bg;bh=$f.bh;bi=$f.bi;bj=$f.bj;bk=$f.bk;bl=$f.bl;bm=$f.bm;bn=$f.bn;bo=$f.bo;bp=$f.bp;bq=$f.bq;br=$f.br;bs=$f.bs;bt=$f.bt;bu=$f.bu;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if(am===an){$s=-1;return true;}ap=am.Kind();if(!((ap===an.Kind()))){$s=-1;return false;}if(1<=ap&&ap<=16||(ap===24)||(ap===26)){$s=-1;return true;}aq=ap;if(aq===(17)){$s=2;continue;}if(aq===(18)){$s=3;continue;}if(aq===(19)){$s=4;continue;}if(aq===(20)){$s=5;continue;}if(aq===(21)){$s=6;continue;}if((aq===(22))||(aq===(23))){$s=7;continue;}if(aq===(25)){$s=8;continue;}$s=9;continue;case 2:if(!(am.Len()===an.Len())){ar=false;$s=10;continue s;}as=DM(am.Elem(),an.Elem(),ao);$s=11;case 11:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}ar=as;case 10:$s=-1;return ar;case 3:if(!(an.ChanDir()===3)){at=false;$s=14;continue s;}au=DM(am.Elem(),an.Elem(),ao);$s=15;case 15:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}at=au;case 14:if(at){$s=12;continue;}$s=13;continue;case 12:$s=-1;return true;case 13:if(!(an.ChanDir()===am.ChanDir())){av=false;$s=16;continue s;}aw=DM(am.Elem(),an.Elem(),ao);$s=17;case 17:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}av=aw;case 16:$s=-1;return av;case 4:ax=am.kindType;ay=an.kindType;if(!((ax.outCount===ay.outCount))||!((ax.inCount===ay.inCount))){$s=-1;return false;}az=0;case 18:if(!(az<ax.rtype.NumIn())){$s=19;continue;}ba=DM(ax.rtype.In(az),ay.rtype.In(az),ao);$s=22;case 22:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}if(!ba){$s=20;continue;}$s=21;continue;case 20:$s=-1;return false;case 21:az=az+(1)>>0;$s=18;continue;case 19:bb=0;case 23:if(!(bb<ax.rtype.NumOut())){$s=24;continue;}bc=DM(ax.rtype.Out(bb),ay.rtype.Out(bb),ao);$s=27;case 27:if($c){$c=false;bc=bc.$blk();}if(bc&&bc.$blk!==undefined){break s;}if(!bc){$s=25;continue;}$s=26;continue;case 25:$s=-1;return false;case 26:bb=bb+(1)>>0;$s=23;continue;case 24:$s=-1;return true;case 5:bd=am.kindType;be=an.kindType;if((bd.methods.$length===0)&&(be.methods.$length===0)){$s=-1;return true;}$s=-1;return false;case 6:bg=DM(am.Key(),an.Key(),ao);$s=29;case 29:if($c){$c=false;bg=bg.$blk();}if(bg&&bg.$blk!==undefined){break s;}if(!(bg)){bf=false;$s=28;continue s;}bh=DM(am.Elem(),an.Elem(),ao);$s=30;case 30:if($c){$c=false;bh=bh.$blk();}if(bh&&bh.$blk!==undefined){break s;}bf=bh;case 28:$s=-1;return bf;case 7:bi=DM(am.Elem(),an.Elem(),ao);$s=31;case 31:if($c){$c=false;bi=bi.$blk();}if(bi&&bi.$blk!==undefined){break s;}$s=-1;return bi;case 8:bj=am.kindType;bk=an.kindType;if(!((bj.fields.$length===bk.fields.$length))){$s=-1;return false;}bl=bj.fields;bm=0;case 32:if(!(bm<bl.$length)){$s=33;continue;}bn=bm;bp=(bo=bj.fields,((bn<0||bn>=bo.$length)?($throwRuntimeError("index out of range"),undefined):bo.$array[bo.$offset+bn]));br=(bq=bk.fields,((bn<0||bn>=bq.$length)?($throwRuntimeError("index out of range"),undefined):bq.$array[bq.$offset+bn]));if(!($clone(bp.name,O).name()===$clone(br.name,O).name())){$s=-1;return false;}bs=DM(bp.typ,br.typ,ao);$s=36;case 36:if($c){$c=false;bs=bs.$blk();}if(bs&&bs.$blk!==undefined){break s;}if(!bs){$s=34;continue;}$s=35;continue;case 34:$s=-1;return false;case 35:if(ao&&!($clone(bp.name,O).tag()===$clone(br.name,O).tag())){$s=-1;return false;}if(!((bp.offset===br.offset))){$s=-1;return false;}if(!$clone(bp.name,O).isExported()){bt=$clone(bp.name,O).pkgPath();if(bt===""){bt=$clone(bj.pkgPath,O).name();}bu=$clone(br.name,O).pkgPath();if(bu===""){bu=$clone(bk.pkgPath,O).name();}if(!(bt===bu)){$s=-1;return false;}}bm++;$s=32;continue;case 33:$s=-1;return true;case 9:case 1:$s=-1;return false;}return;}if($f===undefined){$f={$blk:DN};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$f.bf=bf;$f.bg=bg;$f.bh=bh;$f.bi=bi;$f.bj=bj;$f.bk=bk;$f.bl=bl;$f.bm=bm;$f.bn=bn;$f.bo=bo;$f.bp=bp;$f.bq=bq;$f.br=br;$f.bs=bs;$f.bt=bt;$f.bu=bu;$f.$s=$s;$f.$r=$r;return $f;};ER=function(am){var $ptr,am;if(am===HN.nil){return $ifaceNil;}return am;};EW=function(am){var $ptr,am;return((am.kind&32)>>>0)===0;};FA.prototype.kind=function(){var $ptr,am;am=this.$val;return(((am&31)>>>0)>>>0);};$ptrType(FA).prototype.kind=function(){return new FA(this.$get()).kind();};EZ.ptr.prototype.pointer=function(){var $ptr,am;am=this;if(!((am.typ.size===4))||!am.typ.pointers()){$panic(new $String("can't call pointer on a non-pointer Value"));}if(!((((am.flag&128)>>>0)===0))){return am.ptr.$get();}return am.ptr;};EZ.prototype.pointer=function(){return this.$val.pointer();};FD.ptr.prototype.Error=function(){var $ptr,am;am=this;if(am.Kind===0){return"reflect: call of "+am.Method+" on zero Value";}return"reflect: call of "+am.Method+" on "+new BZ(am.Kind).String()+" Value";};FD.prototype.Error=function(){return this.$val.Error();};FA.prototype.mustBe=function(am){var $ptr,am,an;an=this.$val;if(!((new FA(an).kind()===am))){$panic(new FD.ptr(BE(),new FA(an).kind()));}};$ptrType(FA).prototype.mustBe=function(am){return new FA(this.$get()).mustBe(am);};FA.prototype.mustBeExported=function(){var $ptr,am;am=this.$val;if(am===0){$panic(new FD.ptr(BE(),0));}if(!((((am&96)>>>0)===0))){$panic(new $String("reflect: "+BE()+" using value obtained using unexported field"));}};$ptrType(FA).prototype.mustBeExported=function(){return new FA(this.$get()).mustBeExported();};FA.prototype.mustBeAssignable=function(){var $ptr,am;am=this.$val;if(am===0){$panic(new FD.ptr(BE(),0));}if(!((((am&96)>>>0)===0))){$panic(new $String("reflect: "+BE()+" using value obtained using unexported field"));}if(((am&256)>>>0)===0){$panic(new $String("reflect: "+BE()+" using unaddressable value"));}};$ptrType(FA).prototype.mustBeAssignable=function(){return new FA(this.$get()).mustBeAssignable();};EZ.ptr.prototype.Addr=function(){var $ptr,am;am=this;if(((am.flag&256)>>>0)===0){$panic(new $String("reflect.Value.Addr of unaddressable value"));}return new EZ.ptr(am.typ.ptrTo(),am.ptr,((((am.flag&96)>>>0))|22)>>>0);};EZ.prototype.Addr=function(){return this.$val.Addr();};EZ.ptr.prototype.Bool=function(){var $ptr,am;am=this;new FA(am.flag).mustBe(1);return am.ptr.$get();};EZ.prototype.Bool=function(){return this.$val.Bool();};EZ.ptr.prototype.Bytes=function(){var $ptr,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=this;new FA(am.flag).mustBe(23);an=am.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}if(!((an===8))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.Bytes of non-byte slice"));case 2:$s=-1;return am.ptr.$get();}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Bytes};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Bytes=function(){return this.$val.Bytes();};EZ.ptr.prototype.runes=function(){var $ptr,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=this;new FA(am.flag).mustBe(23);an=am.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}if(!((an===5))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.Bytes of non-rune slice"));case 2:$s=-1;return am.ptr.$get();}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.runes};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.runes=function(){return this.$val.runes();};EZ.ptr.prototype.CanAddr=function(){var $ptr,am;am=this;return!((((am.flag&256)>>>0)===0));};EZ.prototype.CanAddr=function(){return this.$val.CanAddr();};EZ.ptr.prototype.CanSet=function(){var $ptr,am;am=this;return((am.flag&352)>>>0)===256;};EZ.prototype.CanSet=function(){return this.$val.CanSet();};EZ.ptr.prototype.Call=function(am){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;new FA(an.flag).mustBe(19);new FA(an.flag).mustBeExported();ao=$clone(an,EZ).call("Call",am);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Call};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Call=function(am){return this.$val.Call(am);};EZ.ptr.prototype.CallSlice=function(am){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;new FA(an.flag).mustBe(19);new FA(an.flag).mustBeExported();ao=$clone(an,EZ).call("CallSlice",am);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.CallSlice};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.CallSlice=function(am){return this.$val.CallSlice(am);};EZ.ptr.prototype.Complex=function(){var $ptr,am,an,ao,ap;am=this;an=new FA(am.flag).kind();ao=an;if(ao===(15)){return(ap=am.ptr.$get(),new $Complex128(ap.$real,ap.$imag));}else if(ao===(16)){return am.ptr.$get();}$panic(new FD.ptr("reflect.Value.Complex",new FA(am.flag).kind()));};EZ.prototype.Complex=function(){return this.$val.Complex();};EZ.ptr.prototype.FieldByIndex=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;if(am.$length===1){$s=1;continue;}$s=2;continue;case 1:ao=$clone(an,EZ).Field((0>=am.$length?($throwRuntimeError("index out of range"),undefined):am.$array[am.$offset+0]));$s=3;case 3:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;case 2:new FA(an.flag).mustBe(25);ap=am;aq=0;case 4:if(!(aq<ap.$length)){$s=5;continue;}ar=aq;as=((aq<0||aq>=ap.$length)?($throwRuntimeError("index out of range"),undefined):ap.$array[ap.$offset+aq]);if(ar>0){$s=6;continue;}$s=7;continue;case 6:if(!($clone(an,EZ).Kind()===22)){at=false;$s=10;continue s;}au=an.typ.Elem().Kind();$s=11;case 11:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}at=au===25;case 10:if(at){$s=8;continue;}$s=9;continue;case 8:if($clone(an,EZ).IsNil()){$panic(new $String("reflect: indirection through nil pointer to embedded struct"));}av=$clone(an,EZ).Elem();$s=12;case 12:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}an=av;case 9:case 7:aw=$clone(an,EZ).Field(as);$s=13;case 13:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}an=aw;aq++;$s=4;continue;case 5:$s=-1;return an;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.FieldByIndex};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.FieldByIndex=function(am){return this.$val.FieldByIndex(am);};EZ.ptr.prototype.FieldByName=function(am){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;new FA(an.flag).mustBe(25);ap=an.typ.FieldByName(am);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}ao=ap;aq=$clone(ao[0],DE);ar=ao[1];if(ar){$s=2;continue;}$s=3;continue;case 2:as=$clone(an,EZ).FieldByIndex(aq.Index);$s=4;case 4:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}$s=-1;return as;case 3:$s=-1;return new EZ.ptr(HN.nil,0,0);}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.FieldByName};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.FieldByName=function(am){return this.$val.FieldByName(am);};EZ.ptr.prototype.FieldByNameFunc=function(am){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;ap=an.typ.FieldByNameFunc(am);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}ao=ap;aq=$clone(ao[0],DE);ar=ao[1];if(ar){$s=2;continue;}$s=3;continue;case 2:as=$clone(an,EZ).FieldByIndex(aq.Index);$s=4;case 4:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}$s=-1;return as;case 3:$s=-1;return new EZ.ptr(HN.nil,0,0);}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.FieldByNameFunc};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.FieldByNameFunc=function(am){return this.$val.FieldByNameFunc(am);};EZ.ptr.prototype.Float=function(){var $ptr,am,an,ao;am=this;an=new FA(am.flag).kind();ao=an;if(ao===(13)){return am.ptr.$get();}else if(ao===(14)){return am.ptr.$get();}$panic(new FD.ptr("reflect.Value.Float",new FA(am.flag).kind()));};EZ.prototype.Float=function(){return this.$val.Float();};EZ.ptr.prototype.Int=function(){var $ptr,am,an,ao,ap;am=this;an=new FA(am.flag).kind();ao=am.ptr;ap=an;if(ap===(2)){return new $Int64(0,ao.$get());}else if(ap===(3)){return new $Int64(0,ao.$get());}else if(ap===(4)){return new $Int64(0,ao.$get());}else if(ap===(5)){return new $Int64(0,ao.$get());}else if(ap===(6)){return ao.$get();}$panic(new FD.ptr("reflect.Value.Int",new FA(am.flag).kind()));};EZ.prototype.Int=function(){return this.$val.Int();};EZ.ptr.prototype.CanInterface=function(){var $ptr,am;am=this;if(am.flag===0){$panic(new FD.ptr("reflect.Value.CanInterface",0));}return((am.flag&96)>>>0)===0;};EZ.prototype.CanInterface=function(){return this.$val.CanInterface();};EZ.ptr.prototype.Interface=function(){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=$ifaceNil;an=this;ao=BC($clone(an,EZ),true);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}am=ao;$s=-1;return am;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Interface};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Interface=function(){return this.$val.Interface();};EZ.ptr.prototype.IsValid=function(){var $ptr,am;am=this;return!((am.flag===0));};EZ.prototype.IsValid=function(){return this.$val.IsValid();};EZ.ptr.prototype.Kind=function(){var $ptr,am;am=this;return new FA(am.flag).kind();};EZ.prototype.Kind=function(){return this.$val.Kind();};EZ.ptr.prototype.MapIndex=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;new FA(an.flag).mustBe(21);ao=an.typ.kindType;ap=$clone(am,EZ).assignTo("reflect.Value.MapIndex",ao.key,0);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}am=ap;aq=0;if(!((((am.flag&128)>>>0)===0))){aq=am.ptr;}else{aq=(am.$ptr_ptr||(am.$ptr_ptr=new JN(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},am)));}ar=AR(an.typ,$clone(an,EZ).pointer(),aq);if(ar===0){$s=-1;return new EZ.ptr(HN.nil,0,0);}as=ao.elem;at=((((an.flag|am.flag)>>>0))&96)>>>0;at=(at|((as.Kind()>>>0)))>>>0;if(EW(as)){au=AJ(as);AM(as,au,ar);$s=-1;return new EZ.ptr(as,au,(at|128)>>>0);}else{$s=-1;return new EZ.ptr(as,ar.$get(),at);}$s=-1;return new EZ.ptr(HN.nil,0,0);}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.MapIndex};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.MapIndex=function(am){return this.$val.MapIndex(am);};EZ.ptr.prototype.MapKeys=function(){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=this;new FA(am.flag).mustBe(21);an=am.typ.kindType;ao=an.key;ap=(((am.flag&96)>>>0)|(ao.Kind()>>>0))>>>0;aq=$clone(am,EZ).pointer();ar=0;if(!(aq===0)){ar=AY(aq);}as=AV(am.typ,aq);at=$makeSlice(IS,ar);au=0;au=0;case 1:if(!(au<at.$length)){$s=2;continue;}av=AW(as);$s=3;case 3:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}aw=av;if(aw===0){$s=2;continue;}if(EW(ao)){ax=AJ(ao);AM(ao,ax,aw);((au<0||au>=at.$length)?($throwRuntimeError("index out of range"),undefined):at.$array[at.$offset+au]=new EZ.ptr(ao,ax,(ap|128)>>>0));}else{((au<0||au>=at.$length)?($throwRuntimeError("index out of range"),undefined):at.$array[at.$offset+au]=new EZ.ptr(ao,aw.$get(),ap));}AX(as);au=au+(1)>>0;$s=1;continue;case 2:$s=-1;return $subslice(at,0,au);}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.MapKeys};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.MapKeys=function(){return this.$val.MapKeys();};EZ.ptr.prototype.Method=function(am){var $ptr,am,an,ao,ap,aq,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;if(an.typ===HN.nil){$panic(new FD.ptr("reflect.Value.Method",0));}if(!((((an.flag&512)>>>0)===0))){ao=true;$s=3;continue s;}ap=an.typ.NumMethod();$s=4;case 4:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}ao=(am>>>0)>=(ap>>>0);case 3:if(ao){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect: Method index out of range"));case 2:if((an.typ.Kind()===20)&&$clone(an,EZ).IsNil()){$panic(new $String("reflect: Method on nil interface value"));}aq=(an.flag&160)>>>0;aq=(aq|(19))>>>0;aq=(aq|(((((am>>>0)<<10>>>0)|512)>>>0)))>>>0;$s=-1;return new EZ.ptr(an.typ,an.ptr,aq);}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Method};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Method=function(am){return this.$val.Method(am);};EZ.ptr.prototype.NumMethod=function(){var $ptr,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=this;if(am.typ===HN.nil){$panic(new FD.ptr("reflect.Value.NumMethod",0));}if(!((((am.flag&512)>>>0)===0))){$s=-1;return 0;}an=am.typ.NumMethod();$s=1;case 1:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}$s=-1;return an;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.NumMethod};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.NumMethod=function(){return this.$val.NumMethod();};EZ.ptr.prototype.MethodByName=function(am){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;if(an.typ===HN.nil){$panic(new FD.ptr("reflect.Value.MethodByName",0));}if(!((((an.flag&512)>>>0)===0))){$s=-1;return new EZ.ptr(HN.nil,0,0);}ap=an.typ.MethodByName(am);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}ao=ap;aq=$clone(ao[0],CP);ar=ao[1];if(!ar){$s=-1;return new EZ.ptr(HN.nil,0,0);}as=$clone(an,EZ).Method(aq.Index);$s=2;case 2:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}$s=-1;return as;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.MethodByName};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.MethodByName=function(am){return this.$val.MethodByName(am);};EZ.ptr.prototype.NumField=function(){var $ptr,am,an;am=this;new FA(am.flag).mustBe(25);an=am.typ.kindType;return an.fields.$length;};EZ.prototype.NumField=function(){return this.$val.NumField();};EZ.ptr.prototype.OverflowComplex=function(am){var $ptr,am,an,ao,ap;an=this;ao=new FA(an.flag).kind();ap=ao;if(ap===(15)){return FN(am.$real)||FN(am.$imag);}else if(ap===(16)){return false;}$panic(new FD.ptr("reflect.Value.OverflowComplex",new FA(an.flag).kind()));};EZ.prototype.OverflowComplex=function(am){return this.$val.OverflowComplex(am);};EZ.ptr.prototype.OverflowFloat=function(am){var $ptr,am,an,ao,ap;an=this;ao=new FA(an.flag).kind();ap=ao;if(ap===(13)){return FN(am);}else if(ap===(14)){return false;}$panic(new FD.ptr("reflect.Value.OverflowFloat",new FA(an.flag).kind()));};EZ.prototype.OverflowFloat=function(am){return this.$val.OverflowFloat(am);};FN=function(am){var $ptr,am;if(am<0){am=-am;}return 3.4028234663852886e+38<am&&am<=1.7976931348623157e+308;};EZ.ptr.prototype.OverflowInt=function(am){var $ptr,am,an,ao,ap,aq,ar;an=this;ao=new FA(an.flag).kind();ap=ao;if((ap===(2))||(ap===(3))||(ap===(4))||(ap===(5))||(ap===(6))){aq=$imul(an.typ.size,8)>>>0;ar=$shiftRightInt64(($shiftLeft64(am,((64-aq>>>0)))),((64-aq>>>0)));return!((am.$high===ar.$high&&am.$low===ar.$low));}$panic(new FD.ptr("reflect.Value.OverflowInt",new FA(an.flag).kind()));};EZ.prototype.OverflowInt=function(am){return this.$val.OverflowInt(am);};EZ.ptr.prototype.OverflowUint=function(am){var $ptr,am,an,ao,ap,aq,ar;an=this;ao=new FA(an.flag).kind();ap=ao;if((ap===(7))||(ap===(12))||(ap===(8))||(ap===(9))||(ap===(10))||(ap===(11))){aq=$imul(an.typ.size,8)>>>0;ar=$shiftRightUint64(($shiftLeft64(am,((64-aq>>>0)))),((64-aq>>>0)));return!((am.$high===ar.$high&&am.$low===ar.$low));}$panic(new FD.ptr("reflect.Value.OverflowUint",new FA(an.flag).kind()));};EZ.prototype.OverflowUint=function(am){return this.$val.OverflowUint(am);};EZ.ptr.prototype.Recv=function(){var $ptr,am,an,ao,ap,aq,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=new EZ.ptr(HN.nil,0,0);an=false;ao=this;new FA(ao.flag).mustBe(18);new FA(ao.flag).mustBeExported();aq=$clone(ao,EZ).recv(false);$s=1;case 1:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ap=aq;am=ap[0];an=ap[1];$s=-1;return[am,an];}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Recv};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Recv=function(){return this.$val.Recv();};EZ.ptr.prototype.recv=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=new EZ.ptr(HN.nil,0,0);ao=false;ap=this;aq=ap.typ.kindType;if(((aq.dir>>0)&1)===0){$panic(new $String("reflect: recv on send-only channel"));}ar=aq.elem;an=new EZ.ptr(ar,0,(ar.Kind()>>>0));as=0;if(EW(ar)){as=AJ(ar);an.ptr=as;an.flag=(an.flag|(128))>>>0;}else{as=(an.$ptr_ptr||(an.$ptr_ptr=new JN(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},an)));}au=BM(ap.typ,$clone(ap,EZ).pointer(),am,as);$s=1;case 1:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}at=au;av=at[0];ao=at[1];if(!av){an=new EZ.ptr(HN.nil,0,0);}$s=-1;return[an,ao];}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.recv};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.recv=function(am){return this.$val.recv(am);};EZ.ptr.prototype.Send=function(am){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;new FA(an.flag).mustBe(18);new FA(an.flag).mustBeExported();ao=$clone(an,EZ).send($clone(am,EZ),false);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}ao;$s=-1;return;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Send};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Send=function(am){return this.$val.Send(am);};EZ.ptr.prototype.send=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,at,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=false;ap=this;aq=ap.typ.kindType;if(((aq.dir>>0)&2)===0){$panic(new $String("reflect: send on recv-only channel"));}new FA(am.flag).mustBeExported();ar=$clone(am,EZ).assignTo("reflect.Value.Send",aq.elem,0);$s=1;case 1:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}am=ar;as=0;if(!((((am.flag&128)>>>0)===0))){as=am.ptr;}else{as=(am.$ptr_ptr||(am.$ptr_ptr=new JN(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},am)));}at=BN(ap.typ,$clone(ap,EZ).pointer(),as,an);$s=2;case 2:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}ao=at;$s=-1;return ao;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.send};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.send=function(am,an){return this.$val.send(am,an);};EZ.ptr.prototype.SetBool=function(am){var $ptr,am,an;an=this;new FA(an.flag).mustBeAssignable();new FA(an.flag).mustBe(1);an.ptr.$set(am);};EZ.prototype.SetBool=function(am){return this.$val.SetBool(am);};EZ.ptr.prototype.setRunes=function(am){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;new FA(an.flag).mustBeAssignable();new FA(an.flag).mustBe(23);ao=an.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}if(!((ao===5))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.setRunes of non-rune slice"));case 2:an.ptr.$set(am);$s=-1;return;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.setRunes};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.setRunes=function(am){return this.$val.setRunes(am);};EZ.ptr.prototype.SetComplex=function(am){var $ptr,am,an,ao,ap;an=this;new FA(an.flag).mustBeAssignable();ao=new FA(an.flag).kind();ap=ao;if(ap===(15)){an.ptr.$set(new $Complex64(am.$real,am.$imag));}else if(ap===(16)){an.ptr.$set(am);}else{$panic(new FD.ptr("reflect.Value.SetComplex",new FA(an.flag).kind()));}};EZ.prototype.SetComplex=function(am){return this.$val.SetComplex(am);};EZ.ptr.prototype.SetFloat=function(am){var $ptr,am,an,ao,ap;an=this;new FA(an.flag).mustBeAssignable();ao=new FA(an.flag).kind();ap=ao;if(ap===(13)){an.ptr.$set($fround(am));}else if(ap===(14)){an.ptr.$set(am);}else{$panic(new FD.ptr("reflect.Value.SetFloat",new FA(an.flag).kind()));}};EZ.prototype.SetFloat=function(am){return this.$val.SetFloat(am);};EZ.ptr.prototype.SetInt=function(am){var $ptr,am,an,ao,ap;an=this;new FA(an.flag).mustBeAssignable();ao=new FA(an.flag).kind();ap=ao;if(ap===(2)){an.ptr.$set(((am.$low+((am.$high>>31)*4294967296))>>0));}else if(ap===(3)){an.ptr.$set(((am.$low+((am.$high>>31)*4294967296))<<24>>24));}else if(ap===(4)){an.ptr.$set(((am.$low+((am.$high>>31)*4294967296))<<16>>16));}else if(ap===(5)){an.ptr.$set(((am.$low+((am.$high>>31)*4294967296))>>0));}else if(ap===(6)){an.ptr.$set(am);}else{$panic(new FD.ptr("reflect.Value.SetInt",new FA(an.flag).kind()));}};EZ.prototype.SetInt=function(am){return this.$val.SetInt(am);};EZ.ptr.prototype.SetMapIndex=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,at,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=this;new FA(ao.flag).mustBe(21);new FA(ao.flag).mustBeExported();new FA(am.flag).mustBeExported();ap=ao.typ.kindType;aq=$clone(am,EZ).assignTo("reflect.Value.SetMapIndex",ap.key,0);$s=1;case 1:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}am=aq;ar=0;if(!((((am.flag&128)>>>0)===0))){ar=am.ptr;}else{ar=(am.$ptr_ptr||(am.$ptr_ptr=new JN(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},am)));}if(an.typ===HN.nil){AT(ao.typ,$clone(ao,EZ).pointer(),ar);$s=-1;return;}new FA(an.flag).mustBeExported();as=$clone(an,EZ).assignTo("reflect.Value.SetMapIndex",ap.elem,0);$s=2;case 2:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}an=as;at=0;if(!((((an.flag&128)>>>0)===0))){at=an.ptr;}else{at=(an.$ptr_ptr||(an.$ptr_ptr=new JN(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},an)));}$r=AS(ao.typ,$clone(ao,EZ).pointer(),ar,at);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.SetMapIndex};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.SetMapIndex=function(am,an){return this.$val.SetMapIndex(am,an);};EZ.ptr.prototype.SetUint=function(am){var $ptr,am,an,ao,ap;an=this;new FA(an.flag).mustBeAssignable();ao=new FA(an.flag).kind();ap=ao;if(ap===(7)){an.ptr.$set((am.$low>>>0));}else if(ap===(8)){an.ptr.$set((am.$low<<24>>>24));}else if(ap===(9)){an.ptr.$set((am.$low<<16>>>16));}else if(ap===(10)){an.ptr.$set((am.$low>>>0));}else if(ap===(11)){an.ptr.$set(am);}else if(ap===(12)){an.ptr.$set((am.$low>>>0));}else{$panic(new FD.ptr("reflect.Value.SetUint",new FA(an.flag).kind()));}};EZ.prototype.SetUint=function(am){return this.$val.SetUint(am);};EZ.ptr.prototype.SetPointer=function(am){var $ptr,am,an;an=this;new FA(an.flag).mustBeAssignable();new FA(an.flag).mustBe(26);an.ptr.$set(am);};EZ.prototype.SetPointer=function(am){return this.$val.SetPointer(am);};EZ.ptr.prototype.SetString=function(am){var $ptr,am,an;an=this;new FA(an.flag).mustBeAssignable();new FA(an.flag).mustBe(24);an.ptr.$set(am);};EZ.prototype.SetString=function(am){return this.$val.SetString(am);};EZ.ptr.prototype.String=function(){var $ptr,am,an,ao,ap,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=this;an=new FA(am.flag).kind();ao=an;if(ao===(0)){$s=-1;return"<invalid Value>";}else if(ao===(24)){$s=-1;return am.ptr.$get();}ap=$clone(am,EZ).Type().String();$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}$s=-1;return"<"+ap+" Value>";}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.String};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.String=function(){return this.$val.String();};EZ.ptr.prototype.TryRecv=function(){var $ptr,am,an,ao,ap,aq,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=new EZ.ptr(HN.nil,0,0);an=false;ao=this;new FA(ao.flag).mustBe(18);new FA(ao.flag).mustBeExported();aq=$clone(ao,EZ).recv(true);$s=1;case 1:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ap=aq;am=ap[0];an=ap[1];$s=-1;return[am,an];}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.TryRecv};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.TryRecv=function(){return this.$val.TryRecv();};EZ.ptr.prototype.TrySend=function(am){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;new FA(an.flag).mustBe(18);new FA(an.flag).mustBeExported();ao=$clone(an,EZ).send($clone(am,EZ),true);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.TrySend};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.TrySend=function(am){return this.$val.TrySend(am);};EZ.ptr.prototype.Type=function(){var $ptr,am,an,ao,ap,aq,ar,as,at,au;am=this;an=am.flag;if(an===0){$panic(new FD.ptr("reflect.Value.Type",0));}if(((an&512)>>>0)===0){return am.typ;}ao=(am.flag>>0)>>10>>0;if(am.typ.Kind()===20){ap=am.typ.kindType;if((ao>>>0)>=(ap.methods.$length>>>0)){$panic(new $String("reflect: internal error: invalid method index"));}ar=(aq=ap.methods,((ao<0||ao>=aq.$length)?($throwRuntimeError("index out of range"),undefined):aq.$array[aq.$offset+ao]));return am.typ.typeOff(ar.typ);}as=am.typ.uncommon();if(as===IO.nil||(ao>>>0)>=(as.mcount>>>0)){$panic(new $String("reflect: internal error: invalid method index"));}au=$clone((at=as.methods(),((ao<0||ao>=at.$length)?($throwRuntimeError("index out of range"),undefined):at.$array[at.$offset+ao])),CD);return am.typ.typeOff(au.mtyp);};EZ.prototype.Type=function(){return this.$val.Type();};EZ.ptr.prototype.Uint=function(){var $ptr,am,an,ao,ap,aq;am=this;an=new FA(am.flag).kind();ao=am.ptr;ap=an;if(ap===(7)){return new $Uint64(0,ao.$get());}else if(ap===(8)){return new $Uint64(0,ao.$get());}else if(ap===(9)){return new $Uint64(0,ao.$get());}else if(ap===(10)){return new $Uint64(0,ao.$get());}else if(ap===(11)){return ao.$get();}else if(ap===(12)){return(aq=ao.$get(),new $Uint64(0,aq.constructor===Number?aq:1));}$panic(new FD.ptr("reflect.Value.Uint",new FA(am.flag).kind()));};EZ.prototype.Uint=function(){return this.$val.Uint();};EZ.ptr.prototype.UnsafeAddr=function(){var $ptr,am;am=this;if(am.typ===HN.nil){$panic(new FD.ptr("reflect.Value.UnsafeAddr",0));}if(((am.flag&256)>>>0)===0){$panic(new $String("reflect.Value.UnsafeAddr of unaddressable value"));}return am.ptr;};EZ.prototype.UnsafeAddr=function(){return this.$val.UnsafeAddr();};FS=function(am,an,ao){var $ptr,am,an,ao,ap,aq,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if(!($interfaceIsEqual(an,ao))){$s=1;continue;}$s=2;continue;case 1:ap=an.String();$s=3;case 3:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=ao.String();$s=4;case 4:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}$panic(new $String(am+": "+ap+" != "+aq));case 2:$s=-1;return;}return;}if($f===undefined){$f={$blk:FS};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.$s=$s;$f.$r=$r;return $f;};FU=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=$clone(am,EZ).Len();ap=ao+an>>0;if(ap<ao){$panic(new $String("reflect.Append: slice overflow"));}aq=$clone(am,EZ).Cap();if(ap<=aq){$s=1;continue;}$s=2;continue;case 1:ar=$clone(am,EZ).Slice(0,ap);$s=3;case 3:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}$s=-1;return[ar,ao,ap];case 2:if(aq===0){aq=an;}else{while(true){if(!(aq<ap)){break;}if(ao<1024){aq=aq+(aq)>>0;}else{aq=aq+((as=aq/4,(as===as&&as!==1/0&&as!==-1/0)?as>>0:$throwRuntimeError("integer divide by zero")))>>0;}}}at=AA($clone(am,EZ).Type(),ap,aq);$s=4;case 4:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}au=at;av=BA($clone(au,EZ),$clone(am,EZ));$s=5;case 5:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}av;$s=-1;return[au,ao,ap];}return;}if($f===undefined){$f={$blk:FU};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.$s=$s;$f.$r=$r;return $f;};FV=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:new FA(am.flag).mustBe(23);ap=FU($clone(am,EZ),an.$length);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}ao=ap;am=ao[0];aq=ao[1];ar=ao[2];as=aq;at=0;au=as;av=at;case 2:if(!(au<ar)){$s=3;continue;}aw=$clone(am,EZ).Index(au);$s=4;case 4:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}$r=$clone(aw,EZ).Set($clone(((av<0||av>=an.$length)?($throwRuntimeError("index out of range"),undefined):an.$array[an.$offset+av]),EZ));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}ax=au+1>>0;ay=av+1>>0;au=ax;av=ay;$s=2;continue;case 3:$s=-1;return am;}return;}if($f===undefined){$f={$blk:FV};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Append=FV;GD=function(am){var $ptr,am,an,ao,ap,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=am.Kind();$s=3;case 3:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}if(!((an===21))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.MakeMap of non-map type"));case 2:ao=AP($assertType(am,HN));ap=am.common();$s=4;case 4:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}$s=-1;return new EZ.ptr(ap,ao,21);}return;}if($f===undefined){$f={$blk:GD};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.$s=$s;$f.$r=$r;return $f;};$pkg.MakeMap=GD;GE=function(am){var $ptr,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if(!(($clone(am,EZ).Kind()===22))){$s=-1;return am;}an=$clone(am,EZ).Elem();$s=1;case 1:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}$s=-1;return an;}return;}if($f===undefined){$f={$blk:GE};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Indirect=GE;GF=function(am){var $ptr,am,an,ao,ap,aq,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if($interfaceIsEqual(am,$ifaceNil)){$panic(new $String("reflect: New(nil)"));}an=AJ($assertType(am,HN));ao=22;ap=am.common();$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=ap.ptrTo();$s=2;case 2:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}$s=-1;return new EZ.ptr(aq,an,ao);}return;}if($f===undefined){$f={$blk:GF};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.$s=$s;$f.$r=$r;return $f;};$pkg.New=GF;EZ.ptr.prototype.assignTo=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ap=this;if(!((((ap.flag&512)>>>0)===0))){$s=1;continue;}$s=2;continue;case 1:aq=BF(am,$clone(ap,EZ));$s=3;case 3:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ap=aq;case 2:ar=DL(an,ap.typ);$s=8;case 8:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}if(ar){$s=5;continue;}if(DK(an,ap.typ)){$s=6;continue;}$s=7;continue;case 5:ap.typ=an;as=(ap.flag&480)>>>0;as=(as|((an.Kind()>>>0)))>>>0;$s=-1;return new EZ.ptr(an,ap.ptr,as);case 6:if(ao===0){ao=AJ(an);}at=BC($clone(ap,EZ),false);$s=9;case 9:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}au=at;av=an.NumMethod();$s=13;case 13:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}if(av===0){$s=10;continue;}$s=11;continue;case 10:ao.$set(au);$s=12;continue;case 11:BD(an,au,ao);case 12:$s=-1;return new EZ.ptr(an,ao,148);case 7:case 4:$panic(new $String(am+": value of type "+ap.typ.String()+" is not assignable to type "+an.String()));$s=-1;return new EZ.ptr(HN.nil,0,0);}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.assignTo};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.assignTo=function(am,an,ao){return this.$val.assignTo(am,an,ao);};EZ.ptr.prototype.Convert=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;if(!((((an.flag&512)>>>0)===0))){$s=1;continue;}$s=2;continue;case 1:ao=BF("Convert",$clone(an,EZ));$s=3;case 3:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}an=ao;case 2:ap=am.common();$s=4;case 4:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=GH(ap,an.typ);$s=5;case 5:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=aq;if(ar===$throwNilPointerError){$s=6;continue;}$s=7;continue;case 6:as=am.String();$s=8;case 8:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}$panic(new $String("reflect.Value.Convert: value of type "+an.typ.String()+" cannot be converted to type "+as));case 7:at=ar($clone(an,EZ),am);$s=9;case 9:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}$s=-1;return at;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Convert};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Convert=function(am){return this.$val.Convert(am);};GH=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;bf=$f.bf;bg=$f.bg;bh=$f.bh;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=an.Kind();if((ao===(2))||(ao===(3))||(ao===(4))||(ao===(5))||(ao===(6))){$s=2;continue;}if((ao===(7))||(ao===(8))||(ao===(9))||(ao===(10))||(ao===(11))||(ao===(12))){$s=3;continue;}if((ao===(13))||(ao===(14))){$s=4;continue;}if((ao===(15))||(ao===(16))){$s=5;continue;}if(ao===(24)){$s=6;continue;}if(ao===(23)){$s=7;continue;}$s=8;continue;case 2:ap=am.Kind();if((ap===(2))||(ap===(3))||(ap===(4))||(ap===(5))||(ap===(6))||(ap===(7))||(ap===(8))||(ap===(9))||(ap===(10))||(ap===(11))||(ap===(12))){$s=-1;return GN;}else if((ap===(13))||(ap===(14))){$s=-1;return GR;}else if(ap===(24)){$s=-1;return GV;}$s=8;continue;case 3:aq=am.Kind();if((aq===(2))||(aq===(3))||(aq===(4))||(aq===(5))||(aq===(6))||(aq===(7))||(aq===(8))||(aq===(9))||(aq===(10))||(aq===(11))||(aq===(12))){$s=-1;return GO;}else if((aq===(13))||(aq===(14))){$s=-1;return GS;}else if(aq===(24)){$s=-1;return GW;}$s=8;continue;case 4:ar=am.Kind();if((ar===(2))||(ar===(3))||(ar===(4))||(ar===(5))||(ar===(6))){$s=-1;return GP;}else if((ar===(7))||(ar===(8))||(ar===(9))||(ar===(10))||(ar===(11))||(ar===(12))){$s=-1;return GQ;}else if((ar===(13))||(ar===(14))){$s=-1;return GT;}$s=8;continue;case 5:as=am.Kind();if((as===(15))||(as===(16))){$s=-1;return GU;}$s=8;continue;case 6:if(!(am.Kind()===23)){at=false;$s=11;continue s;}au=am.Elem().PkgPath();$s=12;case 12:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}at=au==="";case 11:if(at){$s=9;continue;}$s=10;continue;case 9:av=am.Elem().Kind();$s=14;case 14:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}aw=av;if(aw===(8)){$s=-1;return GY;}else if(aw===(5)){$s=-1;return HA;}case 13:case 10:$s=8;continue;case 7:if(!(am.Kind()===24)){ax=false;$s=17;continue s;}ay=an.Elem().PkgPath();$s=18;case 18:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}ax=ay==="";case 17:if(ax){$s=15;continue;}$s=16;continue;case 15:az=an.Elem().Kind();$s=20;case 20:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}ba=az;if(ba===(8)){$s=-1;return GX;}else if(ba===(5)){$s=-1;return GZ;}case 19:case 16:case 8:case 1:bb=DN(am,an,false);$s=23;case 23:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}if(bb){$s=21;continue;}$s=22;continue;case 21:$s=-1;return AZ;case 22:if(!((am.Kind()===22)&&am.Name()===""&&(an.Kind()===22)&&an.Name()==="")){bc=false;$s=26;continue s;}bd=am.Elem().common();$s=27;case 27:if($c){$c=false;bd=bd.$blk();}if(bd&&bd.$blk!==undefined){break s;}be=bd;bf=an.Elem().common();$s=28;case 28:if($c){$c=false;bf=bf.$blk();}if(bf&&bf.$blk!==undefined){break s;}bg=bf;bh=DN(be,bg,false);$s=29;case 29:if($c){$c=false;bh=bh.$blk();}if(bh&&bh.$blk!==undefined){break s;}bc=bh;case 26:if(bc){$s=24;continue;}$s=25;continue;case 24:$s=-1;return AZ;case 25:if(DK(am,an)){if(an.Kind()===20){$s=-1;return HC;}$s=-1;return HB;}$s=-1;return $throwNilPointerError;}return;}if($f===undefined){$f={$blk:GH};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$f.bf=bf;$f.bg=bg;$f.bh=bh;$f.$s=$s;$f.$r=$r;return $f;};GI=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ap=ao.common();$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=ap;ar=AJ(aq);as=aq.size;if(as===(4)){ar.$set($fround(an));}else if(as===(8)){ar.$set(an);}$s=-1;return new EZ.ptr(aq,ar,(((am|128)>>>0)|(aq.Kind()>>>0))>>>0);}return;}if($f===undefined){$f={$blk:GI};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};GJ=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ap=ao.common();$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=ap;ar=AJ(aq);as=aq.size;if(as===(8)){ar.$set(new $Complex64(an.$real,an.$imag));}else if(as===(16)){ar.$set(an);}$s=-1;return new EZ.ptr(aq,ar,(((am|128)>>>0)|(aq.Kind()>>>0))>>>0);}return;}if($f===undefined){$f={$blk:GJ};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};GK=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ap=GF(ao);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=$clone(ap,EZ).Elem();$s=2;case 2:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=aq;$clone(ar,EZ).SetString(an);ar.flag=(((ar.flag&~256)>>>0)|am)>>>0;$s=-1;return ar;}return;}if($f===undefined){$f={$blk:GK};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.$s=$s;$f.$r=$r;return $f;};GL=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ap=GF(ao);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=$clone(ap,EZ).Elem();$s=2;case 2:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=aq;$r=$clone(ar,EZ).SetBytes(an);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}ar.flag=(((ar.flag&~256)>>>0)|am)>>>0;$s=-1;return ar;}return;}if($f===undefined){$f={$blk:GL};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.$s=$s;$f.$r=$r;return $f;};GM=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ap=GF(ao);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=$clone(ap,EZ).Elem();$s=2;case 2:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=aq;$r=$clone(ar,EZ).setRunes(an);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}ar.flag=(((ar.flag&~256)>>>0)|am)>>>0;$s=-1;return ar;}return;}if($f===undefined){$f={$blk:GM};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.$s=$s;$f.$r=$r;return $f;};GN=function(am,an){var $ptr,am,an,ao,ap,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ap=AK((am.flag&96)>>>0,(ao=$clone(am,EZ).Int(),new $Uint64(ao.$high,ao.$low)),an);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}$s=-1;return ap;}return;}if($f===undefined){$f={$blk:GN};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.$s=$s;$f.$r=$r;return $f;};GO=function(am,an){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=AK((am.flag&96)>>>0,$clone(am,EZ).Uint(),an);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;}return;}if($f===undefined){$f={$blk:GO};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};GP=function(am,an){var $ptr,am,an,ao,ap,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ap=AK((am.flag&96)>>>0,(ao=new $Int64(0,$clone(am,EZ).Float()),new $Uint64(ao.$high,ao.$low)),an);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}$s=-1;return ap;}return;}if($f===undefined){$f={$blk:GP};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.$s=$s;$f.$r=$r;return $f;};GQ=function(am,an){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=AK((am.flag&96)>>>0,new $Uint64(0,$clone(am,EZ).Float()),an);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;}return;}if($f===undefined){$f={$blk:GQ};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};GR=function(am,an){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=GI((am.flag&96)>>>0,$flatten64($clone(am,EZ).Int()),an);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;}return;}if($f===undefined){$f={$blk:GR};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};GS=function(am,an){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=GI((am.flag&96)>>>0,$flatten64($clone(am,EZ).Uint()),an);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;}return;}if($f===undefined){$f={$blk:GS};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};GT=function(am,an){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=GI((am.flag&96)>>>0,$clone(am,EZ).Float(),an);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;}return;}if($f===undefined){$f={$blk:GT};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};GU=function(am,an){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=GJ((am.flag&96)>>>0,$clone(am,EZ).Complex(),an);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;}return;}if($f===undefined){$f={$blk:GU};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};GV=function(am,an){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=GK((am.flag&96)>>>0,$encodeRune($clone(am,EZ).Int().$low),an);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;}return;}if($f===undefined){$f={$blk:GV};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};GW=function(am,an){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=GK((am.flag&96)>>>0,$encodeRune($clone(am,EZ).Uint().$low),an);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;}return;}if($f===undefined){$f={$blk:GW};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};GX=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=(am.flag&96)>>>0;ap=$clone(am,EZ).Bytes();$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=$bytesToString(ap);ar=an;as=GK(ao,aq,ar);$s=2;case 2:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}$s=-1;return as;}return;}if($f===undefined){$f={$blk:GX};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};GY=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=(am.flag&96)>>>0;ap=$clone(am,EZ).String();$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=new JC($stringToBytes(ap));ar=an;as=GL(ao,aq,ar);$s=2;case 2:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}$s=-1;return as;}return;}if($f===undefined){$f={$blk:GY};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};GZ=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=(am.flag&96)>>>0;ap=$clone(am,EZ).runes();$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=$runesToString(ap);ar=an;as=GK(ao,aq,ar);$s=2;case 2:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}$s=-1;return as;}return;}if($f===undefined){$f={$blk:GZ};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};HA=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=(am.flag&96)>>>0;ap=$clone(am,EZ).String();$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=new JP($stringToRunes(ap));ar=an;as=GM(ao,aq,ar);$s=2;case 2:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}$s=-1;return as;}return;}if($f===undefined){$f={$blk:HA};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};HB=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,at,au,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=an.common();$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}ap=AJ(ao);$s=2;case 2:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=ap;ar=BC($clone(am,EZ),false);$s=3;case 3:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}as=ar;at=an.NumMethod();$s=7;case 7:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}if(at===0){$s=4;continue;}$s=5;continue;case 4:aq.$set(as);$s=6;continue;case 5:BD($assertType(an,HN),as,aq);case 6:au=an.common();$s=8;case 8:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}$s=-1;return new EZ.ptr(au,aq,(((((am.flag&96)>>>0)|128)>>>0)|20)>>>0);}return;}if($f===undefined){$f={$blk:HB};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.$s=$s;$f.$r=$r;return $f;};HC=function(am,an){var $ptr,am,an,ao,ap,aq,ar,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if($clone(am,EZ).IsNil()){$s=1;continue;}$s=2;continue;case 1:ao=AI(an);$s=3;case 3:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}ap=ao;ap.flag=(ap.flag|(((am.flag&96)>>>0)))>>>0;$s=-1;return ap;case 2:aq=$clone(am,EZ).Elem();$s=4;case 4:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=HB($clone(aq,EZ),an);$s=5;case 5:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}$s=-1;return ar;}return;}if($f===undefined){$f={$blk:HC};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.$s=$s;$f.$r=$r;return $f;};IO.methods=[{prop:"methods",name:"methods",pkg:"reflect",typ:$funcType([],[HP],false)}];JQ.methods=[{prop:"in$",name:"in",pkg:"reflect",typ:$funcType([],[HO],false)},{prop:"out",name:"out",pkg:"reflect",typ:$funcType([],[HO],false)}];O.methods=[{prop:"name",name:"name",pkg:"reflect",typ:$funcType([],[$String],false)},{prop:"tag",name:"tag",pkg:"reflect",typ:$funcType([],[$String],false)},{prop:"pkgPath",name:"pkgPath",pkg:"reflect",typ:$funcType([],[$String],false)},{prop:"isExported",name:"isExported",pkg:"reflect",typ:$funcType([],[$Bool],false)},{prop:"data",name:"data",pkg:"reflect",typ:$funcType([$Int],[IL],false)},{prop:"nameLen",name:"nameLen",pkg:"reflect",typ:$funcType([],[$Int],false)},{prop:"tagLen",name:"tagLen",pkg:"reflect",typ:$funcType([],[$Int],false)}];BZ.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];HN.methods=[{prop:"uncommon",name:"uncommon",pkg:"reflect",typ:$funcType([],[IO],false)},{prop:"nameOff",name:"nameOff",pkg:"reflect",typ:$funcType([CY],[O],false)},{prop:"typeOff",name:"typeOff",pkg:"reflect",typ:$funcType([CZ],[HN],false)},{prop:"ptrTo",name:"ptrTo",pkg:"reflect",typ:$funcType([],[HN],false)},{prop:"pointers",name:"pointers",pkg:"reflect",typ:$funcType([],[$Bool],false)},{prop:"Comparable",name:"Comparable",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[CP],false)},{prop:"textOff",name:"textOff",pkg:"reflect",typ:$funcType([DA],[$UnsafePointer],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Uintptr],false)},{prop:"Bits",name:"Bits",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Align",name:"Align",pkg:"",typ:$funcType([],[$Int],false)},{prop:"FieldAlign",name:"FieldAlign",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Kind",name:"Kind",pkg:"",typ:$funcType([],[BZ],false)},{prop:"common",name:"common",pkg:"reflect",typ:$funcType([],[HN],false)},{prop:"exportedMethods",name:"exportedMethods",pkg:"reflect",typ:$funcType([],[HP],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[CP,$Bool],false)},{prop:"PkgPath",name:"PkgPath",pkg:"",typ:$funcType([],[$String],false)},{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"ChanDir",name:"ChanDir",pkg:"",typ:$funcType([],[CE],false)},{prop:"IsVariadic",name:"IsVariadic",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Elem",name:"Elem",pkg:"",typ:$funcType([],[BY],false)},{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[DE],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([IZ],[DE],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[DE,$Bool],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([JS],[DE,$Bool],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([$Int],[BY],false)},{prop:"Key",name:"Key",pkg:"",typ:$funcType([],[BY],false)},{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"NumField",name:"NumField",pkg:"",typ:$funcType([],[$Int],false)},{prop:"NumIn",name:"NumIn",pkg:"",typ:$funcType([],[$Int],false)},{prop:"NumOut",name:"NumOut",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Out",name:"Out",pkg:"",typ:$funcType([$Int],[BY],false)},{prop:"Implements",name:"Implements",pkg:"",typ:$funcType([BY],[$Bool],false)},{prop:"AssignableTo",name:"AssignableTo",pkg:"",typ:$funcType([BY],[$Bool],false)},{prop:"ConvertibleTo",name:"ConvertibleTo",pkg:"",typ:$funcType([BY],[$Bool],false)}];CE.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];IX.methods=[{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[CP],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[CP,$Bool],false)}];JB.methods=[{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[DE],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([IZ],[DE],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([JS],[DE,$Bool],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[DE,$Bool],false)}];DF.methods=[{prop:"Get",name:"Get",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"Lookup",name:"Lookup",pkg:"",typ:$funcType([$String],[$String,$Bool],false)}];EZ.methods=[{prop:"object",name:"object",pkg:"reflect",typ:$funcType([],[IH],false)},{prop:"call",name:"call",pkg:"reflect",typ:$funcType([$String,IS],[IS],false)},{prop:"Cap",name:"Cap",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Elem",name:"Elem",pkg:"",typ:$funcType([],[EZ],false)},{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[EZ],false)},{prop:"Index",name:"Index",pkg:"",typ:$funcType([$Int],[EZ],false)},{prop:"InterfaceData",name:"InterfaceData",pkg:"",typ:$funcType([],[KB],false)},{prop:"IsNil",name:"IsNil",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Pointer",name:"Pointer",pkg:"",typ:$funcType([],[$Uintptr],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([EZ],[],false)},{prop:"SetBytes",name:"SetBytes",pkg:"",typ:$funcType([JC],[],false)},{prop:"SetCap",name:"SetCap",pkg:"",typ:$funcType([$Int],[],false)},{prop:"SetLen",name:"SetLen",pkg:"",typ:$funcType([$Int],[],false)},{prop:"Slice",name:"Slice",pkg:"",typ:$funcType([$Int,$Int],[EZ],false)},{prop:"Slice3",name:"Slice3",pkg:"",typ:$funcType([$Int,$Int,$Int],[EZ],false)},{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[],false)},{prop:"pointer",name:"pointer",pkg:"reflect",typ:$funcType([],[$UnsafePointer],false)},{prop:"Addr",name:"Addr",pkg:"",typ:$funcType([],[EZ],false)},{prop:"Bool",name:"Bool",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Bytes",name:"Bytes",pkg:"",typ:$funcType([],[JC],false)},{prop:"runes",name:"runes",pkg:"reflect",typ:$funcType([],[JP],false)},{prop:"CanAddr",name:"CanAddr",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"CanSet",name:"CanSet",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Call",name:"Call",pkg:"",typ:$funcType([IS],[IS],false)},{prop:"CallSlice",name:"CallSlice",pkg:"",typ:$funcType([IS],[IS],false)},{prop:"Complex",name:"Complex",pkg:"",typ:$funcType([],[$Complex128],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([IZ],[EZ],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[EZ],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([JS],[EZ],false)},{prop:"Float",name:"Float",pkg:"",typ:$funcType([],[$Float64],false)},{prop:"Int",name:"Int",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"CanInterface",name:"CanInterface",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Interface",name:"Interface",pkg:"",typ:$funcType([],[$emptyInterface],false)},{prop:"IsValid",name:"IsValid",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Kind",name:"Kind",pkg:"",typ:$funcType([],[BZ],false)},{prop:"MapIndex",name:"MapIndex",pkg:"",typ:$funcType([EZ],[EZ],false)},{prop:"MapKeys",name:"MapKeys",pkg:"",typ:$funcType([],[IS],false)},{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[EZ],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[EZ],false)},{prop:"NumField",name:"NumField",pkg:"",typ:$funcType([],[$Int],false)},{prop:"OverflowComplex",name:"OverflowComplex",pkg:"",typ:$funcType([$Complex128],[$Bool],false)},{prop:"OverflowFloat",name:"OverflowFloat",pkg:"",typ:$funcType([$Float64],[$Bool],false)},{prop:"OverflowInt",name:"OverflowInt",pkg:"",typ:$funcType([$Int64],[$Bool],false)},{prop:"OverflowUint",name:"OverflowUint",pkg:"",typ:$funcType([$Uint64],[$Bool],false)},{prop:"Recv",name:"Recv",pkg:"",typ:$funcType([],[EZ,$Bool],false)},{prop:"recv",name:"recv",pkg:"reflect",typ:$funcType([$Bool],[EZ,$Bool],false)},{prop:"Send",name:"Send",pkg:"",typ:$funcType([EZ],[],false)},{prop:"send",name:"send",pkg:"reflect",typ:$funcType([EZ,$Bool],[$Bool],false)},{prop:"SetBool",name:"SetBool",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"setRunes",name:"setRunes",pkg:"reflect",typ:$funcType([JP],[],false)},{prop:"SetComplex",name:"SetComplex",pkg:"",typ:$funcType([$Complex128],[],false)},{prop:"SetFloat",name:"SetFloat",pkg:"",typ:$funcType([$Float64],[],false)},{prop:"SetInt",name:"SetInt",pkg:"",typ:$funcType([$Int64],[],false)},{prop:"SetMapIndex",name:"SetMapIndex",pkg:"",typ:$funcType([EZ,EZ],[],false)},{prop:"SetUint",name:"SetUint",pkg:"",typ:$funcType([$Uint64],[],false)},{prop:"SetPointer",name:"SetPointer",pkg:"",typ:$funcType([$UnsafePointer],[],false)},{prop:"SetString",name:"SetString",pkg:"",typ:$funcType([$String],[],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"TryRecv",name:"TryRecv",pkg:"",typ:$funcType([],[EZ,$Bool],false)},{prop:"TrySend",name:"TrySend",pkg:"",typ:$funcType([EZ],[$Bool],false)},{prop:"Type",name:"Type",pkg:"",typ:$funcType([],[BY],false)},{prop:"Uint",name:"Uint",pkg:"",typ:$funcType([],[$Uint64],false)},{prop:"UnsafeAddr",name:"UnsafeAddr",pkg:"",typ:$funcType([],[$Uintptr],false)},{prop:"assignTo",name:"assignTo",pkg:"reflect",typ:$funcType([$String,HN,$UnsafePointer],[EZ],false)},{prop:"Convert",name:"Convert",pkg:"",typ:$funcType([BY],[EZ],false)}];FA.methods=[{prop:"kind",name:"kind",pkg:"reflect",typ:$funcType([],[BZ],false)},{prop:"mustBe",name:"mustBe",pkg:"reflect",typ:$funcType([BZ],[],false)},{prop:"mustBeExported",name:"mustBeExported",pkg:"reflect",typ:$funcType([],[],false)},{prop:"mustBeAssignable",name:"mustBeAssignable",pkg:"reflect",typ:$funcType([],[],false)}];KC.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];L.init("reflect",[{prop:"pkgPath",name:"pkgPath",exported:false,typ:CY,tag:""},{prop:"mcount",name:"mcount",exported:false,typ:$Uint16,tag:""},{prop:"_$2",name:"_",exported:false,typ:$Uint16,tag:""},{prop:"moff",name:"moff",exported:false,typ:$Uint32,tag:""},{prop:"_$4",name:"_",exported:false,typ:$Uint32,tag:""},{prop:"_methods",name:"_methods",exported:false,typ:HP,tag:""}]);N.init("reflect",[{prop:"rtype",name:"",exported:false,typ:CB,tag:"reflect:\"func\""},{prop:"inCount",name:"inCount",exported:false,typ:$Uint16,tag:""},{prop:"outCount",name:"outCount",exported:false,typ:$Uint16,tag:""},{prop:"_in",name:"_in",exported:false,typ:HO,tag:""},{prop:"_out",name:"_out",exported:false,typ:HO,tag:""}]);O.init("reflect",[{prop:"bytes",name:"bytes",exported:false,typ:IL,tag:""}]);P.init("reflect",[{prop:"name",name:"name",exported:false,typ:$String,tag:""},{prop:"tag",name:"tag",exported:false,typ:$String,tag:""},{prop:"pkgPath",name:"pkgPath",exported:false,typ:$String,tag:""},{prop:"exported",name:"exported",exported:false,typ:$Bool,tag:""}]);AU.init("reflect",[{prop:"t",name:"t",exported:false,typ:BY,tag:""},{prop:"m",name:"m",exported:false,typ:IH,tag:""},{prop:"keys",name:"keys",exported:false,typ:IH,tag:""},{prop:"i",name:"i",exported:false,typ:$Int,tag:""}]);BY.init([{prop:"Align",name:"Align",pkg:"",typ:$funcType([],[$Int],false)},{prop:"AssignableTo",name:"AssignableTo",pkg:"",typ:$funcType([BY],[$Bool],false)},{prop:"Bits",name:"Bits",pkg:"",typ:$funcType([],[$Int],false)},{prop:"ChanDir",name:"ChanDir",pkg:"",typ:$funcType([],[CE],false)},{prop:"Comparable",name:"Comparable",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"ConvertibleTo",name:"ConvertibleTo",pkg:"",typ:$funcType([BY],[$Bool],false)},{prop:"Elem",name:"Elem",pkg:"",typ:$funcType([],[BY],false)},{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[DE],false)},{prop:"FieldAlign",name:"FieldAlign",pkg:"",typ:$funcType([],[$Int],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([IZ],[DE],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[DE,$Bool],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([JS],[DE,$Bool],false)},{prop:"Implements",name:"Implements",pkg:"",typ:$funcType([BY],[$Bool],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([$Int],[BY],false)},{prop:"IsVariadic",name:"IsVariadic",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Key",name:"Key",pkg:"",typ:$funcType([],[BY],false)},{prop:"Kind",name:"Kind",pkg:"",typ:$funcType([],[BZ],false)},{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[CP],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[CP,$Bool],false)},{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"NumField",name:"NumField",pkg:"",typ:$funcType([],[$Int],false)},{prop:"NumIn",name:"NumIn",pkg:"",typ:$funcType([],[$Int],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"NumOut",name:"NumOut",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Out",name:"Out",pkg:"",typ:$funcType([$Int],[BY],false)},{prop:"PkgPath",name:"PkgPath",pkg:"",typ:$funcType([],[$String],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Uintptr],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"common",name:"common",pkg:"reflect",typ:$funcType([],[HN],false)},{prop:"uncommon",name:"uncommon",pkg:"reflect",typ:$funcType([],[IO],false)}]);CB.init("reflect",[{prop:"size",name:"size",exported:false,typ:$Uintptr,tag:""},{prop:"ptrdata",name:"ptrdata",exported:false,typ:$Uintptr,tag:""},{prop:"hash",name:"hash",exported:false,typ:$Uint32,tag:""},{prop:"tflag",name:"tflag",exported:false,typ:CA,tag:""},{prop:"align",name:"align",exported:false,typ:$Uint8,tag:""},{prop:"fieldAlign",name:"fieldAlign",exported:false,typ:$Uint8,tag:""},{prop:"kind",name:"kind",exported:false,typ:$Uint8,tag:""},{prop:"alg",name:"alg",exported:false,typ:IK,tag:""},{prop:"gcdata",name:"gcdata",exported:false,typ:IL,tag:""},{prop:"str",name:"str",exported:false,typ:CY,tag:""},{prop:"ptrToThis",name:"ptrToThis",exported:false,typ:CZ,tag:""}]);CC.init("reflect",[{prop:"hash",name:"hash",exported:false,typ:JT,tag:""},{prop:"equal",name:"equal",exported:false,typ:JU,tag:""}]);CD.init("reflect",[{prop:"name",name:"name",exported:false,typ:CY,tag:""},{prop:"mtyp",name:"mtyp",exported:false,typ:CZ,tag:""},{prop:"ifn",name:"ifn",exported:false,typ:DA,tag:""},{prop:"tfn",name:"tfn",exported:false,typ:DA,tag:""}]);CF.init("reflect",[{prop:"rtype",name:"",exported:false,typ:CB,tag:"reflect:\"array\""},{prop:"elem",name:"elem",exported:false,typ:HN,tag:""},{prop:"slice",name:"slice",exported:false,typ:HN,tag:""},{prop:"len",name:"len",exported:false,typ:$Uintptr,tag:""}]);CG.init("reflect",[{prop:"rtype",name:"",exported:false,typ:CB,tag:"reflect:\"chan\""},{prop:"elem",name:"elem",exported:false,typ:HN,tag:""},{prop:"dir",name:"dir",exported:false,typ:$Uintptr,tag:""}]);CH.init("reflect",[{prop:"name",name:"name",exported:false,typ:CY,tag:""},{prop:"typ",name:"typ",exported:false,typ:CZ,tag:""}]);CI.init("reflect",[{prop:"rtype",name:"",exported:false,typ:CB,tag:"reflect:\"interface\""},{prop:"pkgPath",name:"pkgPath",exported:false,typ:O,tag:""},{prop:"methods",name:"methods",exported:false,typ:IM,tag:""}]);CJ.init("reflect",[{prop:"rtype",name:"",exported:false,typ:CB,tag:"reflect:\"map\""},{prop:"key",name:"key",exported:false,typ:HN,tag:""},{prop:"elem",name:"elem",exported:false,typ:HN,tag:""},{prop:"bucket",name:"bucket",exported:false,typ:HN,tag:""},{prop:"hmap",name:"hmap",exported:false,typ:HN,tag:""},{prop:"keysize",name:"keysize",exported:false,typ:$Uint8,tag:""},{prop:"indirectkey",name:"indirectkey",exported:false,typ:$Uint8,tag:""},{prop:"valuesize",name:"valuesize",exported:false,typ:$Uint8,tag:""},{prop:"indirectvalue",name:"indirectvalue",exported:false,typ:$Uint8,tag:""},{prop:"bucketsize",name:"bucketsize",exported:false,typ:$Uint16,tag:""},{prop:"reflexivekey",name:"reflexivekey",exported:false,typ:$Bool,tag:""},{prop:"needkeyupdate",name:"needkeyupdate",exported:false,typ:$Bool,tag:""}]);CK.init("reflect",[{prop:"rtype",name:"",exported:false,typ:CB,tag:"reflect:\"ptr\""},{prop:"elem",name:"elem",exported:false,typ:HN,tag:""}]);CL.init("reflect",[{prop:"rtype",name:"",exported:false,typ:CB,tag:"reflect:\"slice\""},{prop:"elem",name:"elem",exported:false,typ:HN,tag:""}]);CM.init("reflect",[{prop:"name",name:"name",exported:false,typ:O,tag:""},{prop:"typ",name:"typ",exported:false,typ:HN,tag:""},{prop:"offset",name:"offset",exported:false,typ:$Uintptr,tag:""}]);CN.init("reflect",[{prop:"rtype",name:"",exported:false,typ:CB,tag:"reflect:\"struct\""},{prop:"pkgPath",name:"pkgPath",exported:false,typ:O,tag:""},{prop:"fields",name:"fields",exported:false,typ:IN,tag:""}]);CP.init("",[{prop:"Name",name:"Name",exported:true,typ:$String,tag:""},{prop:"PkgPath",name:"PkgPath",exported:true,typ:$String,tag:""},{prop:"Type",name:"Type",exported:true,typ:BY,tag:""},{prop:"Func",name:"Func",exported:true,typ:EZ,tag:""},{prop:"Index",name:"Index",exported:true,typ:$Int,tag:""}]);DE.init("",[{prop:"Name",name:"Name",exported:true,typ:$String,tag:""},{prop:"PkgPath",name:"PkgPath",exported:true,typ:$String,tag:""},{prop:"Type",name:"Type",exported:true,typ:BY,tag:""},{prop:"Tag",name:"Tag",exported:true,typ:DF,tag:""},{prop:"Offset",name:"Offset",exported:true,typ:$Uintptr,tag:""},{prop:"Index",name:"Index",exported:true,typ:IZ,tag:""},{prop:"Anonymous",name:"Anonymous",exported:true,typ:$Bool,tag:""}]);DG.init("reflect",[{prop:"typ",name:"typ",exported:false,typ:JB,tag:""},{prop:"index",name:"index",exported:false,typ:IZ,tag:""}]);EZ.init("reflect",[{prop:"typ",name:"typ",exported:false,typ:HN,tag:""},{prop:"ptr",name:"ptr",exported:false,typ:$UnsafePointer,tag:""},{prop:"flag",name:"",exported:false,typ:FA,tag:""}]);FD.init("",[{prop:"Method",name:"Method",exported:true,typ:$String,tag:""},{prop:"Kind",name:"Kind",exported:true,typ:BZ,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}S=HM.nil;U=HO.nil;DB=new HR.ptr(new E.RWMutex.ptr(new E.Mutex.ptr(0,0),0,0,0,0),false);G=false;M={};Q={};BG=$assertType($internalize($call,$emptyInterface),II);BL=$assertType($internalize($select,$emptyInterface),II);BH=J($jsObjectPtr);CQ=new IJ(["invalid","bool","int","int8","int16","int32","int64","uint","uint8","uint16","uint32","uint64","uintptr","float32","float64","complex64","complex128","array","chan","func","interface","map","ptr","slice","string","struct","unsafe.Pointer"]);FM=$assertType(AB(new $Uint8(0)),HN);$r=H();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["encoding/binary"]=(function(){var $pkg={},$init,A,B,C,D,E,F,G,N,O,X,Y,Z,AA,AB,AC,AD,AE,AF,AG,AH,AI,AJ,AK,AL,AM,AN,AO,AP,AQ,AR,U,H,I,K,L,P,Q,R;A=$packages["errors"];B=$packages["io"];C=$packages["math"];D=$packages["reflect"];E=$pkg.ByteOrder=$newType(8,$kindInterface,"binary.ByteOrder",true,"encoding/binary",true,null);F=$pkg.littleEndian=$newType(0,$kindStruct,"binary.littleEndian",true,"encoding/binary",false,function(){this.$val=this;if(arguments.length===0){return;}});G=$pkg.bigEndian=$newType(0,$kindStruct,"binary.bigEndian",true,"encoding/binary",false,function(){this.$val=this;if(arguments.length===0){return;}});N=$pkg.decoder=$newType(0,$kindStruct,"binary.decoder",true,"encoding/binary",false,function(order_,buf_){this.$val=this;if(arguments.length===0){this.order=$ifaceNil;this.buf=Y.nil;return;}this.order=order_;this.buf=buf_;});O=$pkg.encoder=$newType(0,$kindStruct,"binary.encoder",true,"encoding/binary",false,function(order_,buf_){this.$val=this;if(arguments.length===0){this.order=$ifaceNil;this.buf=Y.nil;return;}this.order=order_;this.buf=buf_;});X=$arrayType($Uint8,8);Y=$sliceType($Uint8);Z=$ptrType($Bool);AA=$ptrType($Int8);AB=$ptrType($Uint8);AC=$ptrType($Int16);AD=$ptrType($Uint16);AE=$ptrType($Int32);AF=$ptrType($Uint32);AG=$ptrType($Int64);AH=$ptrType($Uint64);AI=$sliceType($Bool);AJ=$sliceType($Int8);AK=$sliceType($Int16);AL=$sliceType($Uint16);AM=$sliceType($Int32);AN=$sliceType($Uint32);AO=$sliceType($Int64);AP=$sliceType($Uint64);AQ=$ptrType(N);AR=$ptrType(O);F.ptr.prototype.Uint16=function(a){var $ptr,a;$unused((1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]));return(((0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0])<<16>>>16)|(((1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1])<<16>>>16)<<8<<16>>>16))>>>0;};F.prototype.Uint16=function(a){return this.$val.Uint16(a);};F.ptr.prototype.PutUint16=function(a,b){var $ptr,a,b;$unused((1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]));(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=(b<<24>>>24));(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=((b>>>8<<16>>>16)<<24>>>24));};F.prototype.PutUint16=function(a,b){return this.$val.PutUint16(a,b);};F.ptr.prototype.Uint32=function(a){var $ptr,a;$unused((3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]));return(((((((0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0])>>>0)|(((1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1])>>>0)<<8>>>0))>>>0)|(((2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2])>>>0)<<16>>>0))>>>0)|(((3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3])>>>0)<<24>>>0))>>>0;};F.prototype.Uint32=function(a){return this.$val.Uint32(a);};F.ptr.prototype.PutUint32=function(a,b){var $ptr,a,b;$unused((3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]));(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=(b<<24>>>24));(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=((b>>>8>>>0)<<24>>>24));(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]=((b>>>16>>>0)<<24>>>24));(3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]=((b>>>24>>>0)<<24>>>24));};F.prototype.PutUint32=function(a,b){return this.$val.PutUint32(a,b);};F.ptr.prototype.Uint64=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;$unused((7>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+7]));return(b=(c=(d=(e=(f=(g=(h=new $Uint64(0,(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0])),i=$shiftLeft64(new $Uint64(0,(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1])),8),new $Uint64(h.$high|i.$high,(h.$low|i.$low)>>>0)),j=$shiftLeft64(new $Uint64(0,(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2])),16),new $Uint64(g.$high|j.$high,(g.$low|j.$low)>>>0)),k=$shiftLeft64(new $Uint64(0,(3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3])),24),new $Uint64(f.$high|k.$high,(f.$low|k.$low)>>>0)),l=$shiftLeft64(new $Uint64(0,(4>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+4])),32),new $Uint64(e.$high|l.$high,(e.$low|l.$low)>>>0)),m=$shiftLeft64(new $Uint64(0,(5>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+5])),40),new $Uint64(d.$high|m.$high,(d.$low|m.$low)>>>0)),n=$shiftLeft64(new $Uint64(0,(6>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+6])),48),new $Uint64(c.$high|n.$high,(c.$low|n.$low)>>>0)),o=$shiftLeft64(new $Uint64(0,(7>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+7])),56),new $Uint64(b.$high|o.$high,(b.$low|o.$low)>>>0));};F.prototype.Uint64=function(a){return this.$val.Uint64(a);};F.ptr.prototype.PutUint64=function(a,b){var $ptr,a,b;$unused((7>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+7]));(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=(b.$low<<24>>>24));(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=($shiftRightUint64(b,8).$low<<24>>>24));(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]=($shiftRightUint64(b,16).$low<<24>>>24));(3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]=($shiftRightUint64(b,24).$low<<24>>>24));(4>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+4]=($shiftRightUint64(b,32).$low<<24>>>24));(5>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+5]=($shiftRightUint64(b,40).$low<<24>>>24));(6>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+6]=($shiftRightUint64(b,48).$low<<24>>>24));(7>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+7]=($shiftRightUint64(b,56).$low<<24>>>24));};F.prototype.PutUint64=function(a,b){return this.$val.PutUint64(a,b);};F.ptr.prototype.String=function(){var $ptr;return"LittleEndian";};F.prototype.String=function(){return this.$val.String();};F.ptr.prototype.GoString=function(){var $ptr;return"binary.LittleEndian";};F.prototype.GoString=function(){return this.$val.GoString();};G.ptr.prototype.Uint16=function(a){var $ptr,a;$unused((1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]));return(((1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1])<<16>>>16)|(((0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0])<<16>>>16)<<8<<16>>>16))>>>0;};G.prototype.Uint16=function(a){return this.$val.Uint16(a);};G.ptr.prototype.PutUint16=function(a,b){var $ptr,a,b;$unused((1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]));(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=((b>>>8<<16>>>16)<<24>>>24));(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=(b<<24>>>24));};G.prototype.PutUint16=function(a,b){return this.$val.PutUint16(a,b);};G.ptr.prototype.Uint32=function(a){var $ptr,a;$unused((3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]));return(((((((3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3])>>>0)|(((2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2])>>>0)<<8>>>0))>>>0)|(((1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1])>>>0)<<16>>>0))>>>0)|(((0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0])>>>0)<<24>>>0))>>>0;};G.prototype.Uint32=function(a){return this.$val.Uint32(a);};G.ptr.prototype.PutUint32=function(a,b){var $ptr,a,b;$unused((3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]));(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=((b>>>24>>>0)<<24>>>24));(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=((b>>>16>>>0)<<24>>>24));(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]=((b>>>8>>>0)<<24>>>24));(3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]=(b<<24>>>24));};G.prototype.PutUint32=function(a,b){return this.$val.PutUint32(a,b);};G.ptr.prototype.Uint64=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;$unused((7>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+7]));return(b=(c=(d=(e=(f=(g=(h=new $Uint64(0,(7>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+7])),i=$shiftLeft64(new $Uint64(0,(6>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+6])),8),new $Uint64(h.$high|i.$high,(h.$low|i.$low)>>>0)),j=$shiftLeft64(new $Uint64(0,(5>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+5])),16),new $Uint64(g.$high|j.$high,(g.$low|j.$low)>>>0)),k=$shiftLeft64(new $Uint64(0,(4>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+4])),24),new $Uint64(f.$high|k.$high,(f.$low|k.$low)>>>0)),l=$shiftLeft64(new $Uint64(0,(3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3])),32),new $Uint64(e.$high|l.$high,(e.$low|l.$low)>>>0)),m=$shiftLeft64(new $Uint64(0,(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2])),40),new $Uint64(d.$high|m.$high,(d.$low|m.$low)>>>0)),n=$shiftLeft64(new $Uint64(0,(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1])),48),new $Uint64(c.$high|n.$high,(c.$low|n.$low)>>>0)),o=$shiftLeft64(new $Uint64(0,(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0])),56),new $Uint64(b.$high|o.$high,(b.$low|o.$low)>>>0));};G.prototype.Uint64=function(a){return this.$val.Uint64(a);};G.ptr.prototype.PutUint64=function(a,b){var $ptr,a,b;$unused((7>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+7]));(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=($shiftRightUint64(b,56).$low<<24>>>24));(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=($shiftRightUint64(b,48).$low<<24>>>24));(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]=($shiftRightUint64(b,40).$low<<24>>>24));(3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]=($shiftRightUint64(b,32).$low<<24>>>24));(4>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+4]=($shiftRightUint64(b,24).$low<<24>>>24));(5>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+5]=($shiftRightUint64(b,16).$low<<24>>>24));(6>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+6]=($shiftRightUint64(b,8).$low<<24>>>24));(7>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+7]=(b.$low<<24>>>24));};G.prototype.PutUint64=function(a,b){return this.$val.PutUint64(a,b);};G.ptr.prototype.String=function(){var $ptr;return"BigEndian";};G.prototype.String=function(){return this.$val.String();};G.ptr.prototype.GoString=function(){var $ptr;return"binary.BigEndian";};G.prototype.GoString=function(){return this.$val.GoString();};H=function(a,b,c){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,c,ca,cb,cc,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;b=$f.b;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;bf=$f.bf;bg=$f.bg;bh=$f.bh;bi=$f.bi;bj=$f.bj;bk=$f.bk;bl=$f.bl;bm=$f.bm;bn=$f.bn;bo=$f.bo;bp=$f.bp;bq=$f.bq;br=$f.br;bs=$f.bs;bt=$f.bt;bu=$f.bu;bv=$f.bv;bw=$f.bw;bx=$f.bx;by=$f.by;bz=$f.bz;c=$f.c;ca=$f.ca;cb=$f.cb;cc=$f.cc;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:d=P(c);if(!((d===0))){$s=1;continue;}$s=2;continue;case 1:e=X.zero();f=Y.nil;if(d>8){f=$makeSlice(Y,d);}else{f=$subslice(new Y(e),0,d);}h=B.ReadFull(a,f);$s=3;case 3:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;i=g[1];if(!($interfaceIsEqual(i,$ifaceNil))){$s=-1;return i;}j=c;if($assertType(j,Z,true)[1]){$s=4;continue;}if($assertType(j,AA,true)[1]){$s=5;continue;}if($assertType(j,AB,true)[1]){$s=6;continue;}if($assertType(j,AC,true)[1]){$s=7;continue;}if($assertType(j,AD,true)[1]){$s=8;continue;}if($assertType(j,AE,true)[1]){$s=9;continue;}if($assertType(j,AF,true)[1]){$s=10;continue;}if($assertType(j,AG,true)[1]){$s=11;continue;}if($assertType(j,AH,true)[1]){$s=12;continue;}if($assertType(j,AI,true)[1]){$s=13;continue;}if($assertType(j,AJ,true)[1]){$s=14;continue;}if($assertType(j,Y,true)[1]){$s=15;continue;}if($assertType(j,AK,true)[1]){$s=16;continue;}if($assertType(j,AL,true)[1]){$s=17;continue;}if($assertType(j,AM,true)[1]){$s=18;continue;}if($assertType(j,AN,true)[1]){$s=19;continue;}if($assertType(j,AO,true)[1]){$s=20;continue;}if($assertType(j,AP,true)[1]){$s=21;continue;}$s=22;continue;case 4:k=j.$val;k.$set(!((e[0]===0)));$s=22;continue;case 5:l=j.$val;l.$set((e[0]<<24>>24));$s=22;continue;case 6:m=j.$val;m.$set(e[0]);$s=22;continue;case 7:n=j.$val;ac=b.Uint16(f);$s=23;case 23:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}n.$set((ac<<16>>16));$s=22;continue;case 8:o=j.$val;ad=b.Uint16(f);$s=24;case 24:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}o.$set(ad);$s=22;continue;case 9:p=j.$val;ae=b.Uint32(f);$s=25;case 25:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}p.$set((ae>>0));$s=22;continue;case 10:q=j.$val;af=b.Uint32(f);$s=26;case 26:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}q.$set(af);$s=22;continue;case 11:r=j.$val;ah=b.Uint64(f);$s=27;case 27:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}r.$set((ag=ah,new $Int64(ag.$high,ag.$low)));$s=22;continue;case 12:s=j.$val;ai=b.Uint64(f);$s=28;case 28:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}s.$set(ai);$s=22;continue;case 13:t=j.$val;aj=f;ak=0;while(true){if(!(ak<aj.$length)){break;}al=ak;am=((ak<0||ak>=aj.$length)?($throwRuntimeError("index out of range"),undefined):aj.$array[aj.$offset+ak]);((al<0||al>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+al]=!((am===0)));ak++;}$s=22;continue;case 14:u=j.$val;an=f;ao=0;while(true){if(!(ao<an.$length)){break;}ap=ao;aq=((ao<0||ao>=an.$length)?($throwRuntimeError("index out of range"),undefined):an.$array[an.$offset+ao]);((ap<0||ap>=u.$length)?($throwRuntimeError("index out of range"),undefined):u.$array[u.$offset+ap]=(aq<<24>>24));ao++;}$s=22;continue;case 15:v=j.$val;$copySlice(v,f);$s=22;continue;case 16:w=j.$val;ar=w;as=0;case 29:if(!(as<ar.$length)){$s=30;continue;}at=as;au=b.Uint16($subslice(f,($imul(2,at))));$s=31;case 31:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}((at<0||at>=w.$length)?($throwRuntimeError("index out of range"),undefined):w.$array[w.$offset+at]=(au<<16>>16));as++;$s=29;continue;case 30:$s=22;continue;case 17:x=j.$val;av=x;aw=0;case 32:if(!(aw<av.$length)){$s=33;continue;}ax=aw;ay=b.Uint16($subslice(f,($imul(2,ax))));$s=34;case 34:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}((ax<0||ax>=x.$length)?($throwRuntimeError("index out of range"),undefined):x.$array[x.$offset+ax]=ay);aw++;$s=32;continue;case 33:$s=22;continue;case 18:y=j.$val;az=y;ba=0;case 35:if(!(ba<az.$length)){$s=36;continue;}bb=ba;bc=b.Uint32($subslice(f,($imul(4,bb))));$s=37;case 37:if($c){$c=false;bc=bc.$blk();}if(bc&&bc.$blk!==undefined){break s;}((bb<0||bb>=y.$length)?($throwRuntimeError("index out of range"),undefined):y.$array[y.$offset+bb]=(bc>>0));ba++;$s=35;continue;case 36:$s=22;continue;case 19:z=j.$val;bd=z;be=0;case 38:if(!(be<bd.$length)){$s=39;continue;}bf=be;bg=b.Uint32($subslice(f,($imul(4,bf))));$s=40;case 40:if($c){$c=false;bg=bg.$blk();}if(bg&&bg.$blk!==undefined){break s;}((bf<0||bf>=z.$length)?($throwRuntimeError("index out of range"),undefined):z.$array[z.$offset+bf]=bg);be++;$s=38;continue;case 39:$s=22;continue;case 20:aa=j.$val;bh=aa;bi=0;case 41:if(!(bi<bh.$length)){$s=42;continue;}bj=bi;bl=b.Uint64($subslice(f,($imul(8,bj))));$s=43;case 43:if($c){$c=false;bl=bl.$blk();}if(bl&&bl.$blk!==undefined){break s;}((bj<0||bj>=aa.$length)?($throwRuntimeError("index out of range"),undefined):aa.$array[aa.$offset+bj]=(bk=bl,new $Int64(bk.$high,bk.$low)));bi++;$s=41;continue;case 42:$s=22;continue;case 21:ab=j.$val;bm=ab;bn=0;case 44:if(!(bn<bm.$length)){$s=45;continue;}bo=bn;bp=b.Uint64($subslice(f,($imul(8,bo))));$s=46;case 46:if($c){$c=false;bp=bp.$blk();}if(bp&&bp.$blk!==undefined){break s;}((bo<0||bo>=ab.$length)?($throwRuntimeError("index out of range"),undefined):ab.$array[ab.$offset+bo]=bp);bn++;$s=44;continue;case 45:case 22:$s=-1;return $ifaceNil;case 2:bq=D.ValueOf(c);$s=47;case 47:if($c){$c=false;bq=bq.$blk();}if(bq&&bq.$blk!==undefined){break s;}br=bq;bs=-1;bt=$clone(br,D.Value).Kind();if(bt===(22)){$s=49;continue;}if(bt===(23)){$s=50;continue;}$s=51;continue;case 49:bu=$clone(br,D.Value).Elem();$s=52;case 52:if($c){$c=false;bu=bu.$blk();}if(bu&&bu.$blk!==undefined){break s;}br=bu;bv=K($clone(br,D.Value));$s=53;case 53:if($c){$c=false;bv=bv.$blk();}if(bv&&bv.$blk!==undefined){break s;}bs=bv;$s=51;continue;case 50:bw=K($clone(br,D.Value));$s=54;case 54:if($c){$c=false;bw=bw.$blk();}if(bw&&bw.$blk!==undefined){break s;}bs=bw;case 51:case 48:if(bs<0){$s=55;continue;}$s=56;continue;case 55:bx=D.TypeOf(c).String();$s=57;case 57:if($c){$c=false;bx=bx.$blk();}if(bx&&bx.$blk!==undefined){break s;}by=A.New("binary.Read: invalid type "+bx);$s=58;case 58:if($c){$c=false;by=by.$blk();}if(by&&by.$blk!==undefined){break s;}$s=-1;return by;case 56:bz=new N.ptr(b,$makeSlice(Y,bs));cb=B.ReadFull(a,bz.buf);$s=59;case 59:if($c){$c=false;cb=cb.$blk();}if(cb&&cb.$blk!==undefined){break s;}ca=cb;cc=ca[1];if(!($interfaceIsEqual(cc,$ifaceNil))){$s=-1;return cc;}$r=bz.value($clone(br,D.Value));$s=60;case 60:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:H};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.b=b;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$f.bf=bf;$f.bg=bg;$f.bh=bh;$f.bi=bi;$f.bj=bj;$f.bk=bk;$f.bl=bl;$f.bm=bm;$f.bn=bn;$f.bo=bo;$f.bp=bp;$f.bq=bq;$f.br=br;$f.bs=bs;$f.bt=bt;$f.bu=bu;$f.bv=bv;$f.bw=bw;$f.bx=bx;$f.by=by;$f.bz=bz;$f.c=c;$f.ca=ca;$f.cb=cb;$f.cc=cc;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Read=H;I=function(a,b,c){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,c,ca,cb,cc,cd,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;b=$f.b;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;bf=$f.bf;bg=$f.bg;bh=$f.bh;bi=$f.bi;bj=$f.bj;bk=$f.bk;bl=$f.bl;bm=$f.bm;bn=$f.bn;bo=$f.bo;bp=$f.bp;bq=$f.bq;br=$f.br;bs=$f.bs;bt=$f.bt;bu=$f.bu;bv=$f.bv;bw=$f.bw;bx=$f.bx;by=$f.by;bz=$f.bz;c=$f.c;ca=$f.ca;cb=$f.cb;cc=$f.cc;cd=$f.cd;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:d=P(c);if(!((d===0))){$s=1;continue;}$s=2;continue;case 1:e=X.zero();f=Y.nil;if(d>8){f=$makeSlice(Y,d);}else{f=$subslice(new Y(e),0,d);}g=c;if($assertType(g,Z,true)[1]){$s=3;continue;}if($assertType(g,$Bool,true)[1]){$s=4;continue;}if($assertType(g,AI,true)[1]){$s=5;continue;}if($assertType(g,AA,true)[1]){$s=6;continue;}if($assertType(g,$Int8,true)[1]){$s=7;continue;}if($assertType(g,AJ,true)[1]){$s=8;continue;}if($assertType(g,AB,true)[1]){$s=9;continue;}if($assertType(g,$Uint8,true)[1]){$s=10;continue;}if($assertType(g,Y,true)[1]){$s=11;continue;}if($assertType(g,AC,true)[1]){$s=12;continue;}if($assertType(g,$Int16,true)[1]){$s=13;continue;}if($assertType(g,AK,true)[1]){$s=14;continue;}if($assertType(g,AD,true)[1]){$s=15;continue;}if($assertType(g,$Uint16,true)[1]){$s=16;continue;}if($assertType(g,AL,true)[1]){$s=17;continue;}if($assertType(g,AE,true)[1]){$s=18;continue;}if($assertType(g,$Int32,true)[1]){$s=19;continue;}if($assertType(g,AM,true)[1]){$s=20;continue;}if($assertType(g,AF,true)[1]){$s=21;continue;}if($assertType(g,$Uint32,true)[1]){$s=22;continue;}if($assertType(g,AN,true)[1]){$s=23;continue;}if($assertType(g,AG,true)[1]){$s=24;continue;}if($assertType(g,$Int64,true)[1]){$s=25;continue;}if($assertType(g,AO,true)[1]){$s=26;continue;}if($assertType(g,AH,true)[1]){$s=27;continue;}if($assertType(g,$Uint64,true)[1]){$s=28;continue;}if($assertType(g,AP,true)[1]){$s=29;continue;}$s=30;continue;case 3:h=g.$val;if(h.$get()){e[0]=1;}else{e[0]=0;}$s=30;continue;case 4:i=g.$val;if(i){e[0]=1;}else{e[0]=0;}$s=30;continue;case 5:j=g.$val;ai=j;aj=0;while(true){if(!(aj<ai.$length)){break;}ak=aj;al=((aj<0||aj>=ai.$length)?($throwRuntimeError("index out of range"),undefined):ai.$array[ai.$offset+aj]);if(al){((ak<0||ak>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+ak]=1);}else{((ak<0||ak>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+ak]=0);}aj++;}$s=30;continue;case 6:k=g.$val;e[0]=(k.$get()<<24>>>24);$s=30;continue;case 7:l=g.$val;e[0]=(l<<24>>>24);$s=30;continue;case 8:m=g.$val;am=m;an=0;while(true){if(!(an<am.$length)){break;}ao=an;ap=((an<0||an>=am.$length)?($throwRuntimeError("index out of range"),undefined):am.$array[am.$offset+an]);((ao<0||ao>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+ao]=(ap<<24>>>24));an++;}$s=30;continue;case 9:n=g.$val;e[0]=n.$get();$s=30;continue;case 10:o=g.$val;e[0]=o;$s=30;continue;case 11:p=g.$val;f=p;$s=30;continue;case 12:q=g.$val;$r=b.PutUint16(f,(q.$get()<<16>>>16));$s=31;case 31:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=30;continue;case 13:r=g.$val;$r=b.PutUint16(f,(r<<16>>>16));$s=32;case 32:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=30;continue;case 14:s=g.$val;aq=s;ar=0;case 33:if(!(ar<aq.$length)){$s=34;continue;}as=ar;at=((ar<0||ar>=aq.$length)?($throwRuntimeError("index out of range"),undefined):aq.$array[aq.$offset+ar]);$r=b.PutUint16($subslice(f,($imul(2,as))),(at<<16>>>16));$s=35;case 35:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}ar++;$s=33;continue;case 34:$s=30;continue;case 15:t=g.$val;$r=b.PutUint16(f,t.$get());$s=36;case 36:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=30;continue;case 16:u=g.$val;$r=b.PutUint16(f,u);$s=37;case 37:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=30;continue;case 17:v=g.$val;au=v;av=0;case 38:if(!(av<au.$length)){$s=39;continue;}aw=av;ax=((av<0||av>=au.$length)?($throwRuntimeError("index out of range"),undefined):au.$array[au.$offset+av]);$r=b.PutUint16($subslice(f,($imul(2,aw))),ax);$s=40;case 40:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}av++;$s=38;continue;case 39:$s=30;continue;case 18:w=g.$val;$r=b.PutUint32(f,(w.$get()>>>0));$s=41;case 41:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=30;continue;case 19:x=g.$val;$r=b.PutUint32(f,(x>>>0));$s=42;case 42:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=30;continue;case 20:y=g.$val;ay=y;az=0;case 43:if(!(az<ay.$length)){$s=44;continue;}ba=az;bb=((az<0||az>=ay.$length)?($throwRuntimeError("index out of range"),undefined):ay.$array[ay.$offset+az]);$r=b.PutUint32($subslice(f,($imul(4,ba))),(bb>>>0));$s=45;case 45:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}az++;$s=43;continue;case 44:$s=30;continue;case 21:z=g.$val;$r=b.PutUint32(f,z.$get());$s=46;case 46:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=30;continue;case 22:aa=g.$val;$r=b.PutUint32(f,aa);$s=47;case 47:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=30;continue;case 23:ab=g.$val;bc=ab;bd=0;case 48:if(!(bd<bc.$length)){$s=49;continue;}be=bd;bf=((bd<0||bd>=bc.$length)?($throwRuntimeError("index out of range"),undefined):bc.$array[bc.$offset+bd]);$r=b.PutUint32($subslice(f,($imul(4,be))),bf);$s=50;case 50:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}bd++;$s=48;continue;case 49:$s=30;continue;case 24:ac=g.$val;$r=b.PutUint64(f,(bg=ac.$get(),new $Uint64(bg.$high,bg.$low)));$s=51;case 51:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=30;continue;case 25:ad=g.$val;$r=b.PutUint64(f,new $Uint64(ad.$high,ad.$low));$s=52;case 52:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=30;continue;case 26:ae=g.$val;bh=ae;bi=0;case 53:if(!(bi<bh.$length)){$s=54;continue;}bj=bi;bk=((bi<0||bi>=bh.$length)?($throwRuntimeError("index out of range"),undefined):bh.$array[bh.$offset+bi]);$r=b.PutUint64($subslice(f,($imul(8,bj))),new $Uint64(bk.$high,bk.$low));$s=55;case 55:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}bi++;$s=53;continue;case 54:$s=30;continue;case 27:af=g.$val;$r=b.PutUint64(f,af.$get());$s=56;case 56:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=30;continue;case 28:ag=g.$val;$r=b.PutUint64(f,ag);$s=57;case 57:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=30;continue;case 29:ah=g.$val;bl=ah;bm=0;case 58:if(!(bm<bl.$length)){$s=59;continue;}bn=bm;bo=((bm<0||bm>=bl.$length)?($throwRuntimeError("index out of range"),undefined):bl.$array[bl.$offset+bm]);$r=b.PutUint64($subslice(f,($imul(8,bn))),bo);$s=60;case 60:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}bm++;$s=58;continue;case 59:case 30:bq=a.Write(f);$s=61;case 61:if($c){$c=false;bq=bq.$blk();}if(bq&&bq.$blk!==undefined){break s;}bp=bq;br=bp[1];$s=-1;return br;case 2:bs=D.ValueOf(c);$s=62;case 62:if($c){$c=false;bs=bs.$blk();}if(bs&&bs.$blk!==undefined){break s;}bt=D.Indirect($clone(bs,D.Value));$s=63;case 63:if($c){$c=false;bt=bt.$blk();}if(bt&&bt.$blk!==undefined){break s;}bu=bt;bv=K($clone(bu,D.Value));$s=64;case 64:if($c){$c=false;bv=bv.$blk();}if(bv&&bv.$blk!==undefined){break s;}bw=bv;if(bw<0){$s=65;continue;}$s=66;continue;case 65:bx=D.TypeOf(c).String();$s=67;case 67:if($c){$c=false;bx=bx.$blk();}if(bx&&bx.$blk!==undefined){break s;}by=A.New("binary.Write: invalid type "+bx);$s=68;case 68:if($c){$c=false;by=by.$blk();}if(by&&by.$blk!==undefined){break s;}$s=-1;return by;case 66:bz=$makeSlice(Y,bw);ca=new O.ptr(b,bz);$r=ca.value($clone(bu,D.Value));$s=69;case 69:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}cc=a.Write(bz);$s=70;case 70:if($c){$c=false;cc=cc.$blk();}if(cc&&cc.$blk!==undefined){break s;}cb=cc;cd=cb[1];$s=-1;return cd;}return;}if($f===undefined){$f={$blk:I};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.b=b;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$f.bf=bf;$f.bg=bg;$f.bh=bh;$f.bi=bi;$f.bj=bj;$f.bk=bk;$f.bl=bl;$f.bm=bm;$f.bn=bn;$f.bo=bo;$f.bp=bp;$f.bq=bq;$f.br=br;$f.bs=bs;$f.bt=bt;$f.bu=bu;$f.bv=bv;$f.bw=bw;$f.bx=bx;$f.by=by;$f.bz=bz;$f.c=c;$f.ca=ca;$f.cb=cb;$f.cc=cc;$f.cd=cd;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Write=I;K=function(a){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if($clone(a,D.Value).Kind()===23){$s=1;continue;}$s=2;continue;case 1:b=$clone(a,D.Value).Type().Elem();$s=3;case 3:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=L(b);$s=4;case 4:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(d>=0){$s=-1;return $imul(d,$clone(a,D.Value).Len());}$s=-1;return-1;case 2:e=L($clone(a,D.Value).Type());$s=5;case 5:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=-1;return e;}return;}if($f===undefined){$f={$blk:K};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};L=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=a.Kind();$s=2;case 2:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;if(c===(17)){$s=3;continue;}if(c===(25)){$s=4;continue;}if((c===(1))||(c===(8))||(c===(9))||(c===(10))||(c===(11))||(c===(3))||(c===(4))||(c===(5))||(c===(6))||(c===(13))||(c===(14))||(c===(15))||(c===(16))){$s=5;continue;}$s=6;continue;case 3:d=a.Elem();$s=7;case 7:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=L(d);$s=8;case 8:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(f>=0){$s=9;continue;}$s=10;continue;case 9:g=a.Len();$s=11;case 11:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$s=-1;return $imul(f,g);case 10:$s=6;continue;case 4:h=0;i=0;k=a.NumField();$s=12;case 12:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=i;m=j;case 13:if(!(l<m)){$s=14;continue;}n=a.Field(l);$s=15;case 15:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=L(n.Type);$s=16;case 16:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=o;if(p<0){$s=-1;return-1;}h=h+(p)>>0;l=l+(1)>>0;$s=13;continue;case 14:$s=-1;return h;case 5:q=a.Size();$s=17;case 17:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}$s=-1;return(q>>0);case 6:case 1:$s=-1;return-1;}return;}if($f===undefined){$f={$blk:L};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.$s=$s;$f.$r=$r;return $f;};N.ptr.prototype.bool=function(){var $ptr,a,b,c;a=this;c=(b=a.buf,(0>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+0]));a.buf=$subslice(a.buf,1);return!((c===0));};N.prototype.bool=function(){return this.$val.bool();};O.ptr.prototype.bool=function(a){var $ptr,a,b,c,d;b=this;if(a){(c=b.buf,(0>=c.$length?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+0]=1));}else{(d=b.buf,(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0]=0));}b.buf=$subslice(b.buf,1);};O.prototype.bool=function(a){return this.$val.bool(a);};N.ptr.prototype.uint8=function(){var $ptr,a,b,c;a=this;c=(b=a.buf,(0>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+0]));a.buf=$subslice(a.buf,1);return c;};N.prototype.uint8=function(){return this.$val.uint8();};O.ptr.prototype.uint8=function(a){var $ptr,a,b,c;b=this;(c=b.buf,(0>=c.$length?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+0]=a));b.buf=$subslice(b.buf,1);};O.prototype.uint8=function(a){return this.$val.uint8(a);};N.ptr.prototype.uint16=function(){var $ptr,a,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.order.Uint16($subslice(a.buf,0,2));$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;a.buf=$subslice(a.buf,2);$s=-1;return c;}return;}if($f===undefined){$f={$blk:N.ptr.prototype.uint16};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.uint16=function(){return this.$val.uint16();};O.ptr.prototype.uint16=function(a){var $ptr,a,b,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;$r=b.order.PutUint16($subslice(b.buf,0,2),a);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}b.buf=$subslice(b.buf,2);$s=-1;return;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.uint16};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};O.prototype.uint16=function(a){return this.$val.uint16(a);};N.ptr.prototype.uint32=function(){var $ptr,a,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.order.Uint32($subslice(a.buf,0,4));$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;a.buf=$subslice(a.buf,4);$s=-1;return c;}return;}if($f===undefined){$f={$blk:N.ptr.prototype.uint32};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.uint32=function(){return this.$val.uint32();};O.ptr.prototype.uint32=function(a){var $ptr,a,b,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;$r=b.order.PutUint32($subslice(b.buf,0,4),a);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}b.buf=$subslice(b.buf,4);$s=-1;return;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.uint32};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};O.prototype.uint32=function(a){return this.$val.uint32(a);};N.ptr.prototype.uint64=function(){var $ptr,a,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.order.Uint64($subslice(a.buf,0,8));$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;a.buf=$subslice(a.buf,8);$s=-1;return c;}return;}if($f===undefined){$f={$blk:N.ptr.prototype.uint64};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.uint64=function(){return this.$val.uint64();};O.ptr.prototype.uint64=function(a){var $ptr,a,b,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;$r=b.order.PutUint64($subslice(b.buf,0,8),a);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}b.buf=$subslice(b.buf,8);$s=-1;return;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.uint64};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};O.prototype.uint64=function(a){return this.$val.uint64(a);};N.ptr.prototype.int8=function(){var $ptr,a;a=this;return(a.uint8()<<24>>24);};N.prototype.int8=function(){return this.$val.int8();};O.ptr.prototype.int8=function(a){var $ptr,a,b;b=this;b.uint8((a<<24>>>24));};O.prototype.int8=function(a){return this.$val.int8(a);};N.ptr.prototype.int16=function(){var $ptr,a,b,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.uint16();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=-1;return(b<<16>>16);}return;}if($f===undefined){$f={$blk:N.ptr.prototype.int16};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.int16=function(){return this.$val.int16();};O.ptr.prototype.int16=function(a){var $ptr,a,b,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;$r=b.uint16((a<<16>>>16));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.int16};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};O.prototype.int16=function(a){return this.$val.int16(a);};N.ptr.prototype.int32=function(){var $ptr,a,b,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.uint32();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=-1;return(b>>0);}return;}if($f===undefined){$f={$blk:N.ptr.prototype.int32};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.int32=function(){return this.$val.int32();};O.ptr.prototype.int32=function(a){var $ptr,a,b,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;$r=b.uint32((a>>>0));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.int32};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};O.prototype.int32=function(a){return this.$val.int32(a);};N.ptr.prototype.int64=function(){var $ptr,a,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;c=a.uint64();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=-1;return(b=c,new $Int64(b.$high,b.$low));}return;}if($f===undefined){$f={$blk:N.ptr.prototype.int64};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.int64=function(){return this.$val.int64();};O.ptr.prototype.int64=function(a){var $ptr,a,b,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;$r=b.uint64(new $Uint64(a.$high,a.$low));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.int64};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};O.prototype.int64=function(a){return this.$val.int64(a);};N.ptr.prototype.value=function(a){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=$clone(a,D.Value).Kind();if(c===(17)){$s=2;continue;}if(c===(25)){$s=3;continue;}if(c===(23)){$s=4;continue;}if(c===(1)){$s=5;continue;}if(c===(3)){$s=6;continue;}if(c===(4)){$s=7;continue;}if(c===(5)){$s=8;continue;}if(c===(6)){$s=9;continue;}if(c===(8)){$s=10;continue;}if(c===(9)){$s=11;continue;}if(c===(10)){$s=12;continue;}if(c===(11)){$s=13;continue;}if(c===(13)){$s=14;continue;}if(c===(14)){$s=15;continue;}if(c===(15)){$s=16;continue;}if(c===(16)){$s=17;continue;}$s=18;continue;case 2:d=$clone(a,D.Value).Len();e=0;case 19:if(!(e<d)){$s=20;continue;}f=$clone(a,D.Value).Index(e);$s=21;case 21:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$r=b.value($clone(f,D.Value));$s=22;case 22:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=e+(1)>>0;$s=19;continue;case 20:$s=18;continue;case 3:g=$clone(a,D.Value).Type();h=$clone(a,D.Value).NumField();i=0;case 23:if(!(i<h)){$s=24;continue;}j=$clone(a,D.Value).Field(i);$s=25;case 25:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;if($clone(k,D.Value).CanSet()){l=true;$s=29;continue s;}m=g.Field(i);$s=30;case 30:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=!(m.Name==="_");case 29:if(l){$s=26;continue;}$s=27;continue;case 26:$r=b.value($clone(k,D.Value));$s=31;case 31:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=28;continue;case 27:$r=b.skip($clone(k,D.Value));$s=32;case 32:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 28:i=i+(1)>>0;$s=23;continue;case 24:$s=18;continue;case 4:n=$clone(a,D.Value).Len();o=0;case 33:if(!(o<n)){$s=34;continue;}p=$clone(a,D.Value).Index(o);$s=35;case 35:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}$r=b.value($clone(p,D.Value));$s=36;case 36:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}o=o+(1)>>0;$s=33;continue;case 34:$s=18;continue;case 5:$clone(a,D.Value).SetBool(b.bool());$s=18;continue;case 6:$clone(a,D.Value).SetInt(new $Int64(0,b.int8()));$s=18;continue;case 7:q=b.int16();$s=37;case 37:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}$r=$clone(a,D.Value).SetInt(new $Int64(0,q));$s=38;case 38:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=18;continue;case 8:r=b.int32();$s=39;case 39:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}$r=$clone(a,D.Value).SetInt(new $Int64(0,r));$s=40;case 40:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=18;continue;case 9:s=b.int64();$s=41;case 41:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}$r=$clone(a,D.Value).SetInt(s);$s=42;case 42:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=18;continue;case 10:$clone(a,D.Value).SetUint(new $Uint64(0,b.uint8()));$s=18;continue;case 11:t=b.uint16();$s=43;case 43:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}$r=$clone(a,D.Value).SetUint(new $Uint64(0,t));$s=44;case 44:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=18;continue;case 12:u=b.uint32();$s=45;case 45:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}$r=$clone(a,D.Value).SetUint(new $Uint64(0,u));$s=46;case 46:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=18;continue;case 13:v=b.uint64();$s=47;case 47:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}$r=$clone(a,D.Value).SetUint(v);$s=48;case 48:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=18;continue;case 14:w=b.uint32();$s=49;case 49:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}x=C.Float32frombits(w);$s=50;case 50:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}$r=$clone(a,D.Value).SetFloat(x);$s=51;case 51:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=18;continue;case 15:y=b.uint64();$s=52;case 52:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}z=C.Float64frombits(y);$s=53;case 53:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}$r=$clone(a,D.Value).SetFloat(z);$s=54;case 54:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=18;continue;case 16:aa=b.uint32();$s=55;case 55:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}ab=C.Float32frombits(aa);$s=56;case 56:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}ac=ab;ad=b.uint32();$s=57;case 57:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}ae=C.Float32frombits(ad);$s=58;case 58:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}af=ae;$r=$clone(a,D.Value).SetComplex(new $Complex128(ac,af));$s=59;case 59:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=18;continue;case 17:ag=b.uint64();$s=60;case 60:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}ah=C.Float64frombits(ag);$s=61;case 61:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ai=ah;aj=b.uint64();$s=62;case 62:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=C.Float64frombits(aj);$s=63;case 63:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=ak;$r=$clone(a,D.Value).SetComplex(new $Complex128(ai,al));$s=64;case 64:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 18:case 1:$s=-1;return;}return;}if($f===undefined){$f={$blk:N.ptr.prototype.value};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.value=function(a){return this.$val.value(a);};O.ptr.prototype.value=function(a){var $ptr,a,aa,ab,ac,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=$clone(a,D.Value).Kind();if(c===(17)){$s=2;continue;}if(c===(25)){$s=3;continue;}if(c===(23)){$s=4;continue;}if(c===(1)){$s=5;continue;}if((c===(2))||(c===(3))||(c===(4))||(c===(5))||(c===(6))){$s=6;continue;}if((c===(7))||(c===(8))||(c===(9))||(c===(10))||(c===(11))||(c===(12))){$s=7;continue;}if((c===(13))||(c===(14))){$s=8;continue;}if((c===(15))||(c===(16))){$s=9;continue;}$s=10;continue;case 2:d=$clone(a,D.Value).Len();e=0;case 11:if(!(e<d)){$s=12;continue;}f=$clone(a,D.Value).Index(e);$s=13;case 13:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$r=b.value($clone(f,D.Value));$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=e+(1)>>0;$s=11;continue;case 12:$s=10;continue;case 3:g=$clone(a,D.Value).Type();h=$clone(a,D.Value).NumField();i=0;case 15:if(!(i<h)){$s=16;continue;}j=$clone(a,D.Value).Field(i);$s=17;case 17:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;if($clone(k,D.Value).CanSet()){l=true;$s=21;continue s;}m=g.Field(i);$s=22;case 22:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=!(m.Name==="_");case 21:if(l){$s=18;continue;}$s=19;continue;case 18:$r=b.value($clone(k,D.Value));$s=23;case 23:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=20;continue;case 19:$r=b.skip($clone(k,D.Value));$s=24;case 24:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 20:i=i+(1)>>0;$s=15;continue;case 16:$s=10;continue;case 4:n=$clone(a,D.Value).Len();o=0;case 25:if(!(o<n)){$s=26;continue;}p=$clone(a,D.Value).Index(o);$s=27;case 27:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}$r=b.value($clone(p,D.Value));$s=28;case 28:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}o=o+(1)>>0;$s=25;continue;case 26:$s=10;continue;case 5:b.bool($clone(a,D.Value).Bool());$s=10;continue;case 6:q=$clone(a,D.Value).Type().Kind();$s=30;case 30:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=q;if(r===(3)){$s=31;continue;}if(r===(4)){$s=32;continue;}if(r===(5)){$s=33;continue;}if(r===(6)){$s=34;continue;}$s=35;continue;case 31:b.int8(((s=$clone(a,D.Value).Int(),s.$low+((s.$high>>31)*4294967296))<<24>>24));$s=35;continue;case 32:$r=b.int16(((t=$clone(a,D.Value).Int(),t.$low+((t.$high>>31)*4294967296))<<16>>16));$s=36;case 36:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=35;continue;case 33:$r=b.int32(((u=$clone(a,D.Value).Int(),u.$low+((u.$high>>31)*4294967296))>>0));$s=37;case 37:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=35;continue;case 34:$r=b.int64($clone(a,D.Value).Int());$s=38;case 38:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 35:case 29:$s=10;continue;case 7:v=$clone(a,D.Value).Type().Kind();$s=40;case 40:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}w=v;if(w===(8)){$s=41;continue;}if(w===(9)){$s=42;continue;}if(w===(10)){$s=43;continue;}if(w===(11)){$s=44;continue;}$s=45;continue;case 41:b.uint8(($clone(a,D.Value).Uint().$low<<24>>>24));$s=45;continue;case 42:$r=b.uint16(($clone(a,D.Value).Uint().$low<<16>>>16));$s=46;case 46:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=45;continue;case 43:$r=b.uint32(($clone(a,D.Value).Uint().$low>>>0));$s=47;case 47:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=45;continue;case 44:$r=b.uint64($clone(a,D.Value).Uint());$s=48;case 48:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 45:case 39:$s=10;continue;case 8:x=$clone(a,D.Value).Type().Kind();$s=50;case 50:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}y=x;if(y===(13)){$s=51;continue;}if(y===(14)){$s=52;continue;}$s=53;continue;case 51:$r=b.uint32(C.Float32bits($fround($clone(a,D.Value).Float())));$s=54;case 54:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=53;continue;case 52:$r=b.uint64(C.Float64bits($clone(a,D.Value).Float()));$s=55;case 55:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 53:case 49:$s=10;continue;case 9:z=$clone(a,D.Value).Type().Kind();$s=57;case 57:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}aa=z;if(aa===(15)){$s=58;continue;}if(aa===(16)){$s=59;continue;}$s=60;continue;case 58:ab=$clone(a,D.Value).Complex();$r=b.uint32(C.Float32bits($fround(ab.$real)));$s=61;case 61:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.uint32(C.Float32bits($fround(ab.$imag)));$s=62;case 62:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=60;continue;case 59:ac=$clone(a,D.Value).Complex();$r=b.uint64(C.Float64bits(ac.$real));$s=63;case 63:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.uint64(C.Float64bits(ac.$imag));$s=64;case 64:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 60:case 56:case 10:case 1:$s=-1;return;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.value};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};O.prototype.value=function(a){return this.$val.value(a);};N.ptr.prototype.skip=function(a){var $ptr,a,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=K($clone(a,D.Value));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b.buf=$subslice(b.buf,c);$s=-1;return;}return;}if($f===undefined){$f={$blk:N.ptr.prototype.skip};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.skip=function(a){return this.$val.skip(a);};O.ptr.prototype.skip=function(a){var $ptr,a,b,c,d,e,f,g,h,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=K($clone(a,D.Value));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=$subslice(b.buf,0,d);f=0;while(true){if(!(f<e.$length)){break;}g=f;(h=b.buf,((g<0||g>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+g]=0));f++;}b.buf=$subslice(b.buf,d);$s=-1;return;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.skip};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};O.prototype.skip=function(a){return this.$val.skip(a);};P=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n;b=a;if($assertType(b,$Bool,true)[1]||$assertType(b,$Int8,true)[1]||$assertType(b,$Uint8,true)[1]||$assertType(b,Z,true)[1]||$assertType(b,AA,true)[1]||$assertType(b,AB,true)[1]){c=b;return 1;}else if($assertType(b,AJ,true)[1]){d=b.$val;return d.$length;}else if($assertType(b,Y,true)[1]){e=b.$val;return e.$length;}else if($assertType(b,$Int16,true)[1]||$assertType(b,$Uint16,true)[1]||$assertType(b,AC,true)[1]||$assertType(b,AD,true)[1]){f=b;return 2;}else if($assertType(b,AK,true)[1]){g=b.$val;return $imul(2,g.$length);}else if($assertType(b,AL,true)[1]){h=b.$val;return $imul(2,h.$length);}else if($assertType(b,$Int32,true)[1]||$assertType(b,$Uint32,true)[1]||$assertType(b,AE,true)[1]||$assertType(b,AF,true)[1]){i=b;return 4;}else if($assertType(b,AM,true)[1]){j=b.$val;return $imul(4,j.$length);}else if($assertType(b,AN,true)[1]){k=b.$val;return $imul(4,k.$length);}else if($assertType(b,$Int64,true)[1]||$assertType(b,$Uint64,true)[1]||$assertType(b,AG,true)[1]||$assertType(b,AH,true)[1]){l=b;return 8;}else if($assertType(b,AO,true)[1]){m=b.$val;return $imul(8,m.$length);}else if($assertType(b,AP,true)[1]){n=b.$val;return $imul(8,n.$length);}return 0;};Q=function(a,b){var $ptr,a,b,c;c=0;while(true){if(!((b.$high>0||(b.$high===0&&b.$low>=128)))){break;}((c<0||c>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+c]=(((b.$low<<24>>>24)|128)>>>0));b=$shiftRightUint64(b,(7));c=c+(1)>>0;}((c<0||c>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+c]=(b.$low<<24>>>24));return c+1>>0;};$pkg.PutUvarint=Q;R=function(a){var $ptr,a,b,c,d,e,f,g,h,i;b=new $Uint64(0,0);c=0;d=a;e=0;while(true){if(!(e<d.$length)){break;}f=e;g=((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]);if(g<128){if(f>9||(f===9)&&g>1){return[new $Uint64(0,0),-((f+1>>0))];}return[(h=$shiftLeft64(new $Uint64(0,g),c),new $Uint64(b.$high|h.$high,(b.$low|h.$low)>>>0)),f+1>>0];}b=(i=$shiftLeft64(new $Uint64(0,((g&127)>>>0)),c),new $Uint64(b.$high|i.$high,(b.$low|i.$low)>>>0));c=c+(7)>>>0;e++;}return[new $Uint64(0,0),0];};$pkg.Uvarint=R;F.methods=[{prop:"Uint16",name:"Uint16",pkg:"",typ:$funcType([Y],[$Uint16],false)},{prop:"PutUint16",name:"PutUint16",pkg:"",typ:$funcType([Y,$Uint16],[],false)},{prop:"Uint32",name:"Uint32",pkg:"",typ:$funcType([Y],[$Uint32],false)},{prop:"PutUint32",name:"PutUint32",pkg:"",typ:$funcType([Y,$Uint32],[],false)},{prop:"Uint64",name:"Uint64",pkg:"",typ:$funcType([Y],[$Uint64],false)},{prop:"PutUint64",name:"PutUint64",pkg:"",typ:$funcType([Y,$Uint64],[],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"GoString",name:"GoString",pkg:"",typ:$funcType([],[$String],false)}];G.methods=[{prop:"Uint16",name:"Uint16",pkg:"",typ:$funcType([Y],[$Uint16],false)},{prop:"PutUint16",name:"PutUint16",pkg:"",typ:$funcType([Y,$Uint16],[],false)},{prop:"Uint32",name:"Uint32",pkg:"",typ:$funcType([Y],[$Uint32],false)},{prop:"PutUint32",name:"PutUint32",pkg:"",typ:$funcType([Y,$Uint32],[],false)},{prop:"Uint64",name:"Uint64",pkg:"",typ:$funcType([Y],[$Uint64],false)},{prop:"PutUint64",name:"PutUint64",pkg:"",typ:$funcType([Y,$Uint64],[],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"GoString",name:"GoString",pkg:"",typ:$funcType([],[$String],false)}];AQ.methods=[{prop:"bool",name:"bool",pkg:"encoding/binary",typ:$funcType([],[$Bool],false)},{prop:"uint8",name:"uint8",pkg:"encoding/binary",typ:$funcType([],[$Uint8],false)},{prop:"uint16",name:"uint16",pkg:"encoding/binary",typ:$funcType([],[$Uint16],false)},{prop:"uint32",name:"uint32",pkg:"encoding/binary",typ:$funcType([],[$Uint32],false)},{prop:"uint64",name:"uint64",pkg:"encoding/binary",typ:$funcType([],[$Uint64],false)},{prop:"int8",name:"int8",pkg:"encoding/binary",typ:$funcType([],[$Int8],false)},{prop:"int16",name:"int16",pkg:"encoding/binary",typ:$funcType([],[$Int16],false)},{prop:"int32",name:"int32",pkg:"encoding/binary",typ:$funcType([],[$Int32],false)},{prop:"int64",name:"int64",pkg:"encoding/binary",typ:$funcType([],[$Int64],false)},{prop:"value",name:"value",pkg:"encoding/binary",typ:$funcType([D.Value],[],false)},{prop:"skip",name:"skip",pkg:"encoding/binary",typ:$funcType([D.Value],[],false)}];AR.methods=[{prop:"bool",name:"bool",pkg:"encoding/binary",typ:$funcType([$Bool],[],false)},{prop:"uint8",name:"uint8",pkg:"encoding/binary",typ:$funcType([$Uint8],[],false)},{prop:"uint16",name:"uint16",pkg:"encoding/binary",typ:$funcType([$Uint16],[],false)},{prop:"uint32",name:"uint32",pkg:"encoding/binary",typ:$funcType([$Uint32],[],false)},{prop:"uint64",name:"uint64",pkg:"encoding/binary",typ:$funcType([$Uint64],[],false)},{prop:"int8",name:"int8",pkg:"encoding/binary",typ:$funcType([$Int8],[],false)},{prop:"int16",name:"int16",pkg:"encoding/binary",typ:$funcType([$Int16],[],false)},{prop:"int32",name:"int32",pkg:"encoding/binary",typ:$funcType([$Int32],[],false)},{prop:"int64",name:"int64",pkg:"encoding/binary",typ:$funcType([$Int64],[],false)},{prop:"value",name:"value",pkg:"encoding/binary",typ:$funcType([D.Value],[],false)},{prop:"skip",name:"skip",pkg:"encoding/binary",typ:$funcType([D.Value],[],false)}];E.init([{prop:"PutUint16",name:"PutUint16",pkg:"",typ:$funcType([Y,$Uint16],[],false)},{prop:"PutUint32",name:"PutUint32",pkg:"",typ:$funcType([Y,$Uint32],[],false)},{prop:"PutUint64",name:"PutUint64",pkg:"",typ:$funcType([Y,$Uint64],[],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Uint16",name:"Uint16",pkg:"",typ:$funcType([Y],[$Uint16],false)},{prop:"Uint32",name:"Uint32",pkg:"",typ:$funcType([Y],[$Uint32],false)},{prop:"Uint64",name:"Uint64",pkg:"",typ:$funcType([Y],[$Uint64],false)}]);F.init("",[]);G.init("",[]);N.init("encoding/binary",[{prop:"order",name:"order",exported:false,typ:E,tag:""},{prop:"buf",name:"buf",exported:false,typ:Y,tag:""}]);O.init("encoding/binary",[{prop:"order",name:"order",exported:false,typ:E,tag:""},{prop:"buf",name:"buf",exported:false,typ:Y,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$pkg.LittleEndian=new F.ptr();$pkg.BigEndian=new G.ptr();U=A.New("binary: varint overflows a 64-bit integer");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["gopkg.in/dedis/crypto.v0/subtle"]=(function(){var $pkg={},$init,A,C;A=$packages["crypto/subtle"];C=function(a,b){var $ptr,a,b,c,d,e,f;c=0;d=a;e=0;while(true){if(!(e<d.$length)){break;}f=((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]);c=(c|(((f^b)<<24>>>24)))>>>0;e++;}return A.ConstantTimeByteEq(c,0);};$pkg.ConstantTimeAllEq=C;$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["gopkg.in/dedis/crypto.v0/util"]=(function(){var $pkg={},$init,A,B,C,D,J,G,E,I;A=$packages["errors"];B=$packages["io/ioutil"];C=$packages["os"];D=$packages["path/filepath"];J=$sliceType($Uint8);E=function(a,b){var $ptr,a,b,c,d,e;c=a.$length;d=c+b>>0;if(d>a.$capacity){e=$makeSlice(J,d,($imul(((d+1>>0)),2)));$copySlice(e,a);a=e;}return[$subslice(a,0,d),$subslice(a,c,d)];};$pkg.Grow=E;I=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j;if(a===J.nil){a=$makeSlice(J,b.$length);}else if(!((b.$length===a.$length))){$panic(new $String("Reverse requires equal-length slices"));}c=a.$length;d=0;e=c-1>>0;f=d;g=e;while(true){if(!(f<(h=((c+1>>0))/2,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero")))){break;}i=((g<0||g>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+g]);j=((f<0||f>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+f]);((f<0||f>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+f]=i);((g<0||g>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+g]=j);f=f+(1)>>0;g=g-(1)>>0;}return a;};$pkg.Reverse=I;$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}G=A.New("File was concurrently modified");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["gopkg.in/dedis/crypto.v0/ints"]=(function(){var $pkg={},$init,A,B;A=function(a,b){var $ptr,a,b,c,d,e;c=b;d=0;while(true){if(!(d<c.$length)){break;}e=((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]);if(e>a){a=e;}d++;}return a;};$pkg.Max=A;B=function(a,b){var $ptr,a,b,c,d,e;c=b;d=0;while(true){if(!(d<c.$length)){break;}e=((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]);if(e<a){a=e;}d++;}return a;};$pkg.Min=B;$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["math/big"]=(function(){var $pkg={},$init,F,E,I,A,J,C,B,H,G,D,X,BO,BW,BX,CU,DI,DJ,DK,DM,DO,DP,DR,DS,DT,DU,DW,BP,BY,BZ,CE,CM,CN,CO,CT,CV,K,L,M,N,O,P,Q,R,S,T,U,V,Y,Z,AA,AB,AC,AE,AG,AH,AI,AJ,AK,AL,AM,AN,AO,AP,BQ,BS,BT,BU,BV,CB,CC,CD,CF,CG,CH,CI,CJ,CK,CL,CP,CQ,CR,CS,CW;F=$packages["bytes"];E=$packages["encoding/binary"];I=$packages["errors"];A=$packages["fmt"];J=$packages["github.com/gopherjs/gopherjs/nosync"];C=$packages["io"];B=$packages["math"];H=$packages["math/rand"];G=$packages["strconv"];D=$packages["strings"];X=$pkg.Word=$newType(4,$kindUintptr,"big.Word",true,"math/big",true,null);BO=$pkg.Int=$newType(0,$kindStruct,"big.Int",true,"math/big",true,function(neg_,abs_){this.$val=this;if(arguments.length===0){this.neg=false;this.abs=BX.nil;return;}this.neg=neg_;this.abs=abs_;});BW=$pkg.byteReader=$newType(0,$kindStruct,"big.byteReader",true,"math/big",false,function(ScanState_){this.$val=this;if(arguments.length===0){this.ScanState=$ifaceNil;return;}this.ScanState=ScanState_;});BX=$pkg.nat=$newType(12,$kindSlice,"big.nat",true,"math/big",false,null);CU=$pkg.divisor=$newType(0,$kindStruct,"big.divisor",true,"math/big",false,function(bbb_,nbits_,ndigits_){this.$val=this;if(arguments.length===0){this.bbb=BX.nil;this.nbits=0;this.ndigits=0;return;}this.bbb=bbb_;this.nbits=nbits_;this.ndigits=ndigits_;});DI=$sliceType($emptyInterface);DJ=$arrayType(CU,64);DK=$structType("math/big",[{prop:"Mutex",name:"",exported:true,typ:J.Mutex,tag:""},{prop:"table",name:"table",exported:false,typ:DJ,tag:""}]);DM=$sliceType($Uint8);DO=$sliceType(X);DP=$ptrType(BO);DR=$ptrType(X);DS=$ptrType(BX);DT=$arrayType(BX,16);DU=$sliceType(CU);DW=$ptrType(H.Rand);K=function(m,n){var $ptr,m,n,o,p,q;o=0;p=0;q=AA(m,n);o=q[0];p=q[1];return[o,p];};L=function(m,n,o){var $ptr,m,n,o,p,q,r;p=0;q=0;r=AG(m,n,o);p=r[0];q=r[1];return[p,q];};M=function(m,n,o){var $ptr,m,n,o,p;p=0;p=AH(m,n,o);return p;};N=function(m,n,o){var $ptr,m,n,o,p;p=0;p=AI(m,n,o);return p;};O=function(m,n,o){var $ptr,m,n,o,p;p=0;p=AJ(m,n,o);return p;};P=function(m,n,o){var $ptr,m,n,o,p;p=0;p=AK(m,n,o);return p;};Q=function(m,n,o){var $ptr,m,n,o,p;p=0;p=AL(m,n,o);return p;};R=function(m,n,o){var $ptr,m,n,o,p;p=0;p=AM(m,n,o);return p;};S=function(m,n,o,p){var $ptr,m,n,o,p,q;q=0;q=AN(m,n,o,p);return q;};T=function(m,n,o){var $ptr,m,n,o,p;p=0;p=AO(m,n,o);return p;};U=function(m,n,o,p){var $ptr,m,n,o,p,q;q=0;q=AP(m,n,o,p);return q;};V=function(m){var $ptr,m,n;n=0;n=AC(m);return n;};Y=function(m,n,o){var $ptr,m,n,o,p,q,r;p=0;q=0;r=n+o>>>0;q=m+r>>>0;if(q<m||r<n){p=1;}return[p,q];};Z=function(m,n,o){var $ptr,m,n,o,p,q,r;p=0;q=0;r=n+o>>>0;q=m-r>>>0;if(q>m||r<n){p=1;}return[p,q];};AA=function(m,n){var $ptr,m,n,o,p,q,r,s,t,u,v,w,x;o=0;p=0;q=(m&65535)>>>0;r=m>>>16>>>0;s=(n&65535)>>>0;t=n>>>16>>>0;u=$imul(q,s)>>>0;v=($imul(r,s)>>>0)+(u>>>16>>>0)>>>0;w=(v&65535)>>>0;x=v>>>16>>>0;w=w+(($imul(q,t)>>>0))>>>0;o=(($imul(r,t)>>>0)+x>>>0)+(w>>>16>>>0)>>>0;p=$imul(m,n)>>>0;return[o,p];};AB=function(m,n,o){var $ptr,m,n,o,p,q,r,s;p=0;q=0;r=AA(m,n);p=r[0];s=r[1];q=s+o>>>0;if(q<s){p=p+(1)>>>0;}return[p,q];};AC=function(m){var $ptr,m,n,o,p,q,r;n=0;while(true){if(!(m>=32768)){break;}n=n+(16)>>0;m=(o=(16),o<32?(m>>>o):0)>>>0;}if(m>=128){m=(p=(8),p<32?(m>>>p):0)>>>0;n=n+(8)>>0;}if(m>=8){m=(q=(4),q<32?(m>>>q):0)>>>0;n=n+(4)>>0;}if(m>=2){m=(r=(2),r<32?(m>>>r):0)>>>0;n=n+(2)>>0;}if(m>=1){n=n+(1)>>0;}return n;};AE=function(m){var $ptr,m;return((32-V(m)>>0)>>>0);};AG=function(m,n,o){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,m,n,o,p,q,r,s,t,u,v,w,x,y,z;p=0;q=0;if(m>=o){r=4294967295;s=4294967295;p=r;q=s;return[p,q];}t=AE(o);o=(u=(t),u<32?(o<<u):0)>>>0;v=o>>>16>>>0;w=(o&65535)>>>0;z=(((x=t,x<32?(m<<x):0)>>>0)|((y=((32-t>>>0)),y<32?(n>>>y):0)>>>0))>>>0;ab=(aa=t,aa<32?(n<<aa):0)>>>0;ac=ab>>>16>>>0;ad=(ab&65535)>>>0;af=(ae=z/v,(ae===ae&&ae!==1/0&&ae!==-1/0)?ae>>>0:$throwRuntimeError("integer divide by zero"));ag=z-($imul(af,v)>>>0)>>>0;while(true){if(!(af>=65536||($imul(af,w)>>>0)>(($imul(65536,ag)>>>0)+ac>>>0))){break;}af=af-(1)>>>0;ag=ag+(v)>>>0;if(ag>=65536){break;}}ah=(($imul(z,65536)>>>0)+ac>>>0)-($imul(af,o)>>>0)>>>0;aj=(ai=ah/v,(ai===ai&&ai!==1/0&&ai!==-1/0)?ai>>>0:$throwRuntimeError("integer divide by zero"));ag=ah-($imul(aj,v)>>>0)>>>0;while(true){if(!(aj>=65536||($imul(aj,w)>>>0)>(($imul(65536,ag)>>>0)+ad>>>0))){break;}aj=aj-(1)>>>0;ag=ag+(v)>>>0;if(ag>=65536){break;}}ak=($imul(af,65536)>>>0)+aj>>>0;al=(am=t,am<32?((((($imul(ah,65536)>>>0)+ad>>>0)-($imul(aj,o)>>>0)>>>0))>>>am):0)>>>0;p=ak;q=al;return[p,q];};AH=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,u,v,w,x,y,z;p=0;if(false){q=m;r=0;while(true){if(!(r<q.$length)){break;}s=r;t=Y(((s<0||s>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+s]),((s<0||s>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+s]),p);p=t[0];((s<0||s>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+s]=t[1]);r++;}return p;}u=$subslice(n,0,m.$length);v=0;while(true){if(!(v<u.$length)){break;}w=v;x=((v<0||v>=u.$length)?($throwRuntimeError("index out of range"),undefined):u.$array[u.$offset+v]);y=((w<0||w>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+w]);z=(x+y>>>0)+p>>>0;((w<0||w>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+w]=z);p=(((((x&y)>>>0)|(((((x|y)>>>0))&~z)>>>0))>>>0))>>>31>>>0;v++;}return p;};AI=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,u,v,w,x,y,z;p=0;if(false){q=m;r=0;while(true){if(!(r<q.$length)){break;}s=r;t=Z(((s<0||s>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+s]),((s<0||s>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+s]),p);p=t[0];((s<0||s>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+s]=t[1]);r++;}return p;}u=$subslice(n,0,m.$length);v=0;while(true){if(!(v<u.$length)){break;}w=v;x=((v<0||v>=u.$length)?($throwRuntimeError("index out of range"),undefined):u.$array[u.$offset+v]);y=((w<0||w>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+w]);z=(x-y>>>0)-p>>>0;((w<0||w>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+w]=z);p=(((((y&~x)>>>0)|(((((y|(~x>>>0))>>>0))&z)>>>0))>>>0))>>>31>>>0;v++;}return p;};AJ=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,u,v,w,x,y;p=0;if(false){p=o;q=m;r=0;while(true){if(!(r<q.$length)){break;}s=r;t=Y(((s<0||s>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+s]),p,0);p=t[0];((s<0||s>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+s]=t[1]);r++;}return p;}p=o;u=$subslice(n,0,m.$length);v=0;while(true){if(!(v<u.$length)){break;}w=v;x=((v<0||v>=u.$length)?($throwRuntimeError("index out of range"),undefined):u.$array[u.$offset+v]);y=x+p>>>0;((w<0||w>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+w]=y);p=((x&~y)>>>0)>>>31>>>0;v++;}return p;};AK=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,u,v,w,x,y;p=0;if(false){p=o;q=m;r=0;while(true){if(!(r<q.$length)){break;}s=r;t=Z(((s<0||s>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+s]),p,0);p=t[0];((s<0||s>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+s]=t[1]);r++;}return p;}p=o;u=$subslice(n,0,m.$length);v=0;while(true){if(!(v<u.$length)){break;}w=v;x=((v<0||v>=u.$length)?($throwRuntimeError("index out of range"),undefined):u.$array[u.$offset+v]);y=x-p>>>0;((w<0||w>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+w]=y);p=(((y&~x)>>>0))>>>31>>>0;v++;}return p;};AL=function(m,n,o){var $ptr,aa,m,n,o,p,q,r,s,t,u,v,w,x,y,z;p=0;q=m.$length;if(q>0){r=32-o>>>0;t=(s=q-1>>0,((s<0||s>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+s]));p=(u=r,u<32?(t>>>u):0)>>>0;v=q-1>>0;while(true){if(!(v>0)){break;}w=t;t=(x=v-1>>0,((x<0||x>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+x]));((v<0||v>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+v]=((((y=o,y<32?(w<<y):0)>>>0)|((z=r,z<32?(t>>>z):0)>>>0))>>>0));v=v-(1)>>0;}(0>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+0]=((aa=o,aa<32?(t<<aa):0)>>>0));}return p;};AM=function(m,n,o){var $ptr,aa,m,n,o,p,q,r,s,t,u,v,w,x,y,z;p=0;q=m.$length;if(q>0){r=32-o>>>0;s=(0>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+0]);p=(t=r,t<32?(s<<t):0)>>>0;u=0;while(true){if(!(u<(q-1>>0))){break;}v=s;s=(w=u+1>>0,((w<0||w>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+w]));((u<0||u>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+u]=((((x=o,x<32?(v>>>x):0)>>>0)|((y=r,y<32?(s<<y):0)>>>0))>>>0));u=u+(1)>>0;}(aa=q-1>>0,((aa<0||aa>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+aa]=((z=o,z<32?(s>>>z):0)>>>0)));}return p;};AN=function(m,n,o,p){var $ptr,m,n,o,p,q,r,s,t,u;q=0;q=p;r=m;s=0;while(true){if(!(s<r.$length)){break;}t=s;u=AB(((t<0||t>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+t]),o,q);q=u[0];((t<0||t>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+t]=u[1]);s++;}return q;};AO=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,u,v,w;p=0;q=m;r=0;while(true){if(!(r<q.$length)){break;}s=r;t=AB(((s<0||s>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+s]),o,((s<0||s>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+s]));u=t[0];v=t[1];w=Y(v,p,0);p=w[0];((s<0||s>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+s]=w[1]);p=p+(u)>>>0;r++;}return p;};AP=function(m,n,o,p){var $ptr,m,n,o,p,q,r,s;q=0;q=n;r=m.$length-1>>0;while(true){if(!(r>=0)){break;}s=AG(q,((r<0||r>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+r]),p);((r<0||r>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+r]=s[0]);q=s[1];r=r-(1)>>0;}return q;};BO.ptr.prototype.Sign=function(){var $ptr,m;m=this;if(m.abs.$length===0){return 0;}if(m.neg){return-1;}return 1;};BO.prototype.Sign=function(){return this.$val.Sign();};BO.ptr.prototype.SetInt64=function(m){var $ptr,m,n,o;n=this;o=false;if((m.$high<0||(m.$high===0&&m.$low<0))){o=true;m=new $Int64(-m.$high,-m.$low);}n.abs=n.abs.setUint64(new $Uint64(m.$high,m.$low));n.neg=o;return n;};BO.prototype.SetInt64=function(m){return this.$val.SetInt64(m);};BO.ptr.prototype.SetUint64=function(m){var $ptr,m,n;n=this;n.abs=n.abs.setUint64(m);n.neg=false;return n;};BO.prototype.SetUint64=function(m){return this.$val.SetUint64(m);};BQ=function(m){var $ptr,m;return new BO.ptr(false,BX.nil).SetInt64(m);};$pkg.NewInt=BQ;BO.ptr.prototype.Set=function(m){var $ptr,m,n;n=this;if(!(n===m)){n.abs=n.abs.set(m.abs);n.neg=m.neg;}return n;};BO.prototype.Set=function(m){return this.$val.Set(m);};BO.ptr.prototype.Bits=function(){var $ptr,m,n;m=this;return(n=m.abs,$subslice(new DO(n.$array),n.$offset,n.$offset+n.$length));};BO.prototype.Bits=function(){return this.$val.Bits();};BO.ptr.prototype.SetBits=function(m){var $ptr,m,n;n=this;n.abs=$subslice(new BX(m.$array),m.$offset,m.$offset+m.$length).norm();n.neg=false;return n;};BO.prototype.SetBits=function(m){return this.$val.SetBits(m);};BO.ptr.prototype.Abs=function(m){var $ptr,m,n;n=this;n.Set(m);n.neg=false;return n;};BO.prototype.Abs=function(m){return this.$val.Abs(m);};BO.ptr.prototype.Neg=function(m){var $ptr,m,n;n=this;n.Set(m);n.neg=n.abs.$length>0&&!n.neg;return n;};BO.prototype.Neg=function(m){return this.$val.Neg(m);};BO.ptr.prototype.Add=function(m,n){var $ptr,m,n,o,p;o=this;p=m.neg;if(m.neg===n.neg){o.abs=o.abs.add(m.abs,n.abs);}else{if(m.abs.cmp(n.abs)>=0){o.abs=o.abs.sub(m.abs,n.abs);}else{p=!p;o.abs=o.abs.sub(n.abs,m.abs);}}o.neg=o.abs.$length>0&&p;return o;};BO.prototype.Add=function(m,n){return this.$val.Add(m,n);};BO.ptr.prototype.Sub=function(m,n){var $ptr,m,n,o,p;o=this;p=m.neg;if(!(m.neg===n.neg)){o.abs=o.abs.add(m.abs,n.abs);}else{if(m.abs.cmp(n.abs)>=0){o.abs=o.abs.sub(m.abs,n.abs);}else{p=!p;o.abs=o.abs.sub(n.abs,m.abs);}}o.neg=o.abs.$length>0&&p;return o;};BO.prototype.Sub=function(m,n){return this.$val.Sub(m,n);};BO.ptr.prototype.Mul=function(m,n){var $ptr,m,n,o;o=this;o.abs=o.abs.mul(m.abs,n.abs);o.neg=o.abs.$length>0&&!(m.neg===n.neg);return o;};BO.prototype.Mul=function(m,n){return this.$val.Mul(m,n);};BO.ptr.prototype.MulRange=function(m,n){var $ptr,m,n,o,p,q,r,s,t;o=this;if((m.$high>n.$high||(m.$high===n.$high&&m.$low>n.$low))){return o.SetInt64(new $Int64(0,1));}else if((m.$high<0||(m.$high===0&&m.$low<=0))&&(n.$high>0||(n.$high===0&&n.$low>=0))){return o.SetInt64(new $Int64(0,0));}p=false;if((m.$high<0||(m.$high===0&&m.$low<0))){p=(q=(r=new $Int64(n.$high-m.$high,n.$low-m.$low),new $Int64(r.$high&0,(r.$low&1)>>>0)),(q.$high===0&&q.$low===0));s=new $Int64(-n.$high,-n.$low);t=new $Int64(-m.$high,-m.$low);m=s;n=t;}o.abs=o.abs.mulRange(new $Uint64(m.$high,m.$low),new $Uint64(n.$high,n.$low));o.neg=p;return o;};BO.prototype.MulRange=function(m,n){return this.$val.MulRange(m,n);};BO.ptr.prototype.Binomial=function(m,n){var $ptr,m,n,o,p,q,r,s,t,u,v,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=[o];p=[p];q=this;if((r=$div64(m,new $Int64(0,2),false),(r.$high<n.$high||(r.$high===n.$high&&r.$low<n.$low)))&&(n.$high<m.$high||(n.$high===m.$high&&n.$low<=m.$low))){n=new $Int64(m.$high-n.$high,m.$low-n.$low);}s=new BO.ptr(false,BX.nil);t=new BO.ptr(false,BX.nil);o[0]=$clone(s,BO);p[0]=$clone(t,BO);o[0].MulRange((u=new $Int64(m.$high-n.$high,m.$low-n.$low),new $Int64(u.$high+0,u.$low+1)),m);p[0].MulRange(new $Int64(0,1),n);v=q.Quo(o[0],p[0]);$s=1;case 1:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}$s=-1;return v;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Binomial};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Binomial=function(m,n){return this.$val.Binomial(m,n);};BO.ptr.prototype.Quo=function(m,n){var $ptr,m,n,o,p,q,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;q=o.abs.div(BX.nil,m.abs,n.abs);$s=1;case 1:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;o.abs=p[0];o.neg=o.abs.$length>0&&!(m.neg===n.neg);$s=-1;return o;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Quo};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Quo=function(m,n){return this.$val.Quo(m,n);};BO.ptr.prototype.Rem=function(m,n){var $ptr,m,n,o,p,q,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;q=BX.nil.div(o.abs,m.abs,n.abs);$s=1;case 1:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;o.abs=p[1];o.neg=o.abs.$length>0&&m.neg;$s=-1;return o;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Rem};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Rem=function(m,n){return this.$val.Rem(m,n);};BO.ptr.prototype.QuoRem=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;r=p.abs.div(o.abs,m.abs,n.abs);$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=r;p.abs=q[0];o.abs=q[1];s=p.abs.$length>0&&!(m.neg===n.neg);t=o.abs.$length>0&&m.neg;p.neg=s;o.neg=t;$s=-1;return[p,o];}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.QuoRem};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.QuoRem=function(m,n,o){return this.$val.QuoRem(m,n,o);};BO.ptr.prototype.Div=function(m,n){var $ptr,m,n,o,p,q,r,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=[o];p=this;q=n.neg;o[0]=new BO.ptr(false,BX.nil);r=p.QuoRem(m,n,o[0]);$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}r;if(o[0].neg){if(q){p.Add(p,BP);}else{p.Sub(p,BP);}}$s=-1;return p;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Div};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Div=function(m,n){return this.$val.Div(m,n);};BO.ptr.prototype.Mod=function(m,n){var $ptr,m,n,o,p,q,r,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;p=n;if(o===n||CG(o.abs,n.abs)){p=new BO.ptr(false,BX.nil).Set(n);}q=new BO.ptr(false,BX.nil);r=q.QuoRem(m,n,o);$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}r;if(o.neg){if(p.neg){o.Sub(o,p);}else{o.Add(o,p);}}$s=-1;return o;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Mod};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Mod=function(m,n){return this.$val.Mod(m,n);};BO.ptr.prototype.DivMod=function(m,n,o){var $ptr,m,n,o,p,q,r,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;q=n;if(p===n||CG(p.abs,n.abs)){q=new BO.ptr(false,BX.nil).Set(n);}r=p.QuoRem(m,n,o);$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}r;if(o.neg){if(q.neg){p.Add(p,BP);o.Sub(o,q);}else{p.Sub(p,BP);o.Add(o,q);}}$s=-1;return[p,o];}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.DivMod};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.DivMod=function(m,n,o){return this.$val.DivMod(m,n,o);};BO.ptr.prototype.Cmp=function(m){var $ptr,m,n,o;n=0;o=this;if(o.neg===m.neg){n=o.abs.cmp(m.abs);if(o.neg){n=-n;}}else if(o.neg){n=-1;}else{n=1;}return n;};BO.prototype.Cmp=function(m){return this.$val.Cmp(m);};BS=function(m){var $ptr,m,n,o,p,q;if(m.$length===0){return new $Uint64(0,0);}o=(n=(0>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+0]),new $Uint64(0,n.constructor===Number?n:1));if(true&&m.$length>1){o=(p=$shiftLeft64((q=(1>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+1]),new $Uint64(0,q.constructor===Number?q:1)),32),new $Uint64(o.$high|p.$high,(o.$low|p.$low)>>>0));}return o;};BO.ptr.prototype.Int64=function(){var $ptr,m,n,o;m=this;o=(n=BS(m.abs),new $Int64(n.$high,n.$low));if(m.neg){o=new $Int64(-o.$high,-o.$low);}return o;};BO.prototype.Int64=function(){return this.$val.Int64();};BO.ptr.prototype.Uint64=function(){var $ptr,m;m=this;return BS(m.abs);};BO.prototype.Uint64=function(){return this.$val.Uint64();};BO.ptr.prototype.SetString=function(m,n){var $ptr,m,n,o,p,q,r,s,t,u,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;p=D.NewReader(m);r=o.scan(p,n);$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=r;s=q[2];if(!($interfaceIsEqual(s,$ifaceNil))){$s=-1;return[DP.nil,false];}t=p.ReadByte();u=t[1];if(!($interfaceIsEqual(u,C.EOF))){$s=-1;return[DP.nil,false];}$s=-1;return[o,true];}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.SetString};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.SetString=function(m,n){return this.$val.SetString(m,n);};BO.ptr.prototype.SetBytes=function(m){var $ptr,m,n;n=this;n.abs=n.abs.setBytes(m);n.neg=false;return n;};BO.prototype.SetBytes=function(m){return this.$val.SetBytes(m);};BO.ptr.prototype.Bytes=function(){var $ptr,m,n;m=this;n=$makeSlice(DM,($imul(m.abs.$length,4)));return $subslice(n,m.abs.bytes(n));};BO.prototype.Bytes=function(){return this.$val.Bytes();};BO.ptr.prototype.BitLen=function(){var $ptr,m;m=this;return m.abs.bitLen();};BO.prototype.BitLen=function(){return this.$val.BitLen();};BO.ptr.prototype.Exp=function(m,n,o){var $ptr,m,n,o,p,q,r,s,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;q=BX.nil;if(!n.neg){q=n.abs;}r=BX.nil;if(!(o===DP.nil)){r=o.abs;}s=p.abs.expNN(m.abs,q,r);$s=1;case 1:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}p.abs=s;p.neg=p.abs.$length>0&&m.neg&&q.$length>0&&((((0>=q.$length?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+0])&1)>>>0)===1);if(p.neg&&r.$length>0){p.abs=p.abs.sub(r,p.abs);p.neg=false;}$s=-1;return p;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Exp};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Exp=function(m,n,o){return this.$val.Exp(m,n,o);};BO.ptr.prototype.GCD=function(m,n,o,p){var $ptr,aa,ab,ac,ad,ae,af,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=this;if(o.Sign()<=0||p.Sign()<=0){q.SetInt64(new $Int64(0,0));if(!(m===DP.nil)){m.SetInt64(new $Int64(0,0));}if(!(n===DP.nil)){n.SetInt64(new $Int64(0,0));}$s=-1;return q;}if(m===DP.nil&&n===DP.nil){$s=1;continue;}$s=2;continue;case 1:r=q.binaryGCD(o,p);$s=3;case 3:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}$s=-1;return r;case 2:s=new BO.ptr(false,BX.nil).Set(o);t=new BO.ptr(false,BX.nil).Set(p);u=new BO.ptr(false,BX.nil);v=new BO.ptr(false,BX.nil).SetInt64(new $Int64(0,1));w=new BO.ptr(false,BX.nil).SetInt64(new $Int64(0,1));x=new BO.ptr(false,BX.nil);y=new BO.ptr(false,BX.nil);z=new BO.ptr(false,BX.nil);aa=new BO.ptr(false,BX.nil);case 4:if(!(t.abs.$length>0)){$s=5;continue;}ac=y.QuoRem(s,t,aa);$s=6;case 6:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ab=ac;y=ab[0];aa=ab[1];ad=t;ae=aa;af=s;s=ad;t=ae;aa=af;z.Set(u);u.Mul(u,y);u.neg=!u.neg;u.Add(u,w);w.Set(z);z.Set(v);v.Mul(v,y);v.neg=!v.neg;v.Add(v,x);x.Set(z);$s=4;continue;case 5:if(!(m===DP.nil)){BO.copy(m,w);}if(!(n===DP.nil)){BO.copy(n,x);}BO.copy(q,s);$s=-1;return q;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.GCD};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.GCD=function(m,n,o,p){return this.$val.GCD(m,n,o,p);};BO.ptr.prototype.binaryGCD=function(m,n){var $ptr,aa,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;p=o;q=new BO.ptr(false,BX.nil);if(m.abs.$length>n.abs.$length){$s=2;continue;}if(m.abs.$length<n.abs.$length){$s=3;continue;}$s=4;continue;case 2:r=q.Rem(m,n);$s=6;case 6:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}r;p.Set(n);$s=5;continue;case 3:s=q.Rem(n,m);$s=7;case 7:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}s;p.Set(m);$s=5;continue;case 4:q.Set(n);p.Set(m);case 5:case 1:if(q.abs.$length===0){$s=-1;return p;}t=p.abs.trailingZeroBits();u=q.abs.trailingZeroBits();if(u<t){t=u;}p.Rsh(p,t);q.Rsh(q,t);v=new BO.ptr(false,BX.nil);if(!(((((w=p.abs,(0>=w.$length?($throwRuntimeError("index out of range"),undefined):w.$array[w.$offset+0]))&1)>>>0)===0))){v.Neg(q);}else{v.Set(p);}while(true){if(!(v.abs.$length>0)){break;}v.Rsh(v,v.abs.trailingZeroBits());if(v.neg){x=v;y=q;q=x;v=y;q.neg=q.abs.$length>0&&!q.neg;}else{z=v;aa=p;p=z;v=aa;}v.Sub(p,q);}$s=-1;return o.Lsh(p,t);}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.binaryGCD};}$f.$ptr=$ptr;$f.aa=aa;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.binaryGCD=function(m,n){return this.$val.binaryGCD(m,n);};BO.ptr.prototype.Rand=function(m,n){var $ptr,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;o.neg=false;if(n.neg||(n.abs.$length===0)){o.abs=BX.nil;$s=-1;return o;}p=o.abs.random(m,n.abs,n.abs.bitLen());$s=1;case 1:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}o.abs=p;$s=-1;return o;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Rand};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Rand=function(m,n){return this.$val.Rand(m,n);};BO.ptr.prototype.ModInverse=function(m,n){var $ptr,m,n,o,p,q,r,s,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;if(m.neg){$s=1;continue;}$s=2;continue;case 1:p=new BO.ptr(false,BX.nil);q=p.Mod(m,n);$s=3;case 3:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}m=q;case 2:r=new BO.ptr(false,BX.nil);s=r.GCD(o,DP.nil,m,n);$s=4;case 4:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}s;if(o.neg){o.Add(o,n);}$s=-1;return o;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.ModInverse};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.ModInverse=function(m,n){return this.$val.ModInverse(m,n);};BT=function(m,n){var $ptr,aa,ab,ac,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=[o];p=[p];q=[q];if((n.abs.$length===0)||((((r=n.abs,(0>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+0]))&1)>>>0)===0)){$s=1;continue;}$s=2;continue;case 1:s=A.Sprintf("big: invalid 2nd argument to Int.Jacobi: need odd integer but got %s",new DI([n]));$s=3;case 3:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}$panic(new $String(s));case 2:t=new BO.ptr(false,BX.nil);u=new BO.ptr(false,BX.nil);v=new BO.ptr(false,BX.nil);o[0]=$clone(t,BO);p[0]=$clone(u,BO);q[0]=$clone(v,BO);o[0].Set(m);p[0].Set(n);w=1;if(p[0].neg){if(o[0].neg){w=-1;}p[0].neg=false;}case 4:if(p[0].Cmp(BP)===0){$s=-1;return w;}if(o[0].abs.$length===0){$s=-1;return 0;}x=o[0].Mod(o[0],p[0]);$s=6;case 6:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}x;if(o[0].abs.$length===0){$s=-1;return 0;}y=o[0].abs.trailingZeroBits();if(!((((y&1)>>>0)===0))){aa=((z=p[0].abs,(0>=z.$length?($throwRuntimeError("index out of range"),undefined):z.$array[z.$offset+0]))&7)>>>0;if((aa===3)||(aa===5)){w=-w;}}q[0].Rsh(o[0],y);if(((((ab=p[0].abs,(0>=ab.$length?($throwRuntimeError("index out of range"),undefined):ab.$array[ab.$offset+0]))&3)>>>0)===3)&&((((ac=q[0].abs,(0>=ac.$length?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+0]))&3)>>>0)===3)){w=-w;}o[0].Set(p[0]);p[0].Set(q[0]);$s=4;continue;case 5:$s=-1;return 0;}return;}if($f===undefined){$f={$blk:BT};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Jacobi=BT;BO.ptr.prototype.modSqrt3Mod4Prime=function(m,n){var $ptr,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;o.Set(n);o.Add(o,BP);o.Rsh(o,2);p=o.Exp(m,o,n);$s=1;case 1:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}p;$s=-1;return o;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.modSqrt3Mod4Prime};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.modSqrt3Mod4Prime=function(m,n){return this.$val.modSqrt3Mod4Prime(m,n);};BO.ptr.prototype.modSqrtTonelliShanks=function(m,n){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=[o];p=[p];q=[q];r=[r];s=[s];t=[t];u=this;r[0]=new BO.ptr(false,BX.nil);r[0].Sub(n,BP);v=r[0].abs.trailingZeroBits();r[0].Rsh(r[0],v);q[0]=new BO.ptr(false,BX.nil);q[0].SetInt64(new $Int64(0,2));case 1:w=BT(q[0],n);$s=3;case 3:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}if(!(!((w===-1)))){$s=2;continue;}q[0].Add(q[0],BP);$s=1;continue;case 2:x=new BO.ptr(false,BX.nil);y=new BO.ptr(false,BX.nil);z=new BO.ptr(false,BX.nil);aa=new BO.ptr(false,BX.nil);t[0]=$clone(x,BO);o[0]=$clone(y,BO);p[0]=$clone(z,BO);s[0]=$clone(aa,BO);t[0].Add(r[0],BP);t[0].Rsh(t[0],1);ab=t[0].Exp(m,t[0],n);$s=4;case 4:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}ab;ac=o[0].Exp(m,r[0],n);$s=5;case 5:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ac;ad=p[0].Exp(q[0],r[0],n);$s=6;case 6:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}ad;ae=v;case 7:af=0;s[0].Set(o[0]);case 9:if(!(!((s[0].Cmp(BP)===0)))){$s=10;continue;}ag=s[0].Mul(s[0],s[0]).Mod(s[0],n);$s=11;case 11:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}ag;af=af+(1)>>>0;$s=9;continue;case 10:if(af===0){$s=-1;return u.Set(t[0]);}ah=s[0].SetInt64(new $Int64(0,0)).SetBit(s[0],(((ae-af>>>0)-1>>>0)>>0),1).Exp(p[0],s[0],n);$s=12;case 12:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ah;ai=p[0].Mul(s[0],s[0]).Mod(p[0],n);$s=13;case 13:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ai;aj=t[0].Mul(t[0],s[0]).Mod(t[0],n);$s=14;case 14:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}aj;ak=o[0].Mul(o[0],p[0]).Mod(o[0],n);$s=15;case 15:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}ak;ae=af;$s=7;continue;case 8:$s=-1;return DP.nil;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.modSqrtTonelliShanks};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.modSqrtTonelliShanks=function(m,n){return this.$val.modSqrtTonelliShanks(m,n);};BO.ptr.prototype.ModSqrt=function(m,n){var $ptr,m,n,o,p,q,r,s,t,u,v,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;p=BT(m,n);$s=2;case 2:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}q=p;if(q===(-1)){$s=-1;return DP.nil;}else if(q===(0)){$s=-1;return o.SetInt64(new $Int64(0,0));}else if(q===(1)){$s=1;continue;}case 1:if(m.neg||m.Cmp(n)>=0){$s=3;continue;}$s=4;continue;case 3:r=new BO.ptr(false,BX.nil).Mod(m,n);$s=5;case 5:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}m=r;case 4:if(n.abs.$length>0&&((s=(t=n.abs,(0>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+0]))%4,s===s?s:$throwRuntimeError("integer divide by zero"))===3)){$s=6;continue;}$s=7;continue;case 6:u=o.modSqrt3Mod4Prime(m,n);$s=8;case 8:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}$s=-1;return u;case 7:v=o.modSqrtTonelliShanks(m,n);$s=9;case 9:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}$s=-1;return v;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.ModSqrt};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.ModSqrt=function(m,n){return this.$val.ModSqrt(m,n);};BO.ptr.prototype.Lsh=function(m,n){var $ptr,m,n,o;o=this;o.abs=o.abs.shl(m.abs,n);o.neg=m.neg;return o;};BO.prototype.Lsh=function(m,n){return this.$val.Lsh(m,n);};BO.ptr.prototype.Rsh=function(m,n){var $ptr,m,n,o,p;o=this;if(m.neg){p=o.abs.sub(m.abs,BY);p=p.shr(p,n);o.abs=p.add(p,BY);o.neg=true;return o;}o.abs=o.abs.shr(m.abs,n);o.neg=false;return o;};BO.prototype.Rsh=function(m,n){return this.$val.Rsh(m,n);};BO.ptr.prototype.Bit=function(m){var $ptr,m,n,o,p;n=this;if(m===0){if(n.abs.$length>0){return((((o=n.abs,(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0]))&1)>>>0)>>>0);}return 0;}if(m<0){$panic(new $String("negative bit index"));}if(n.neg){p=BX.nil.sub(n.abs,BY);return(p.bit((m>>>0))^1)>>>0;}return n.abs.bit((m>>>0));};BO.prototype.Bit=function(m){return this.$val.Bit(m);};BO.ptr.prototype.SetBit=function(m,n,o){var $ptr,m,n,o,p,q;p=this;if(n<0){$panic(new $String("negative bit index"));}if(m.neg){q=p.abs.sub(m.abs,BY);q=q.setBit(q,(n>>>0),(o^1)>>>0);p.abs=q.add(q,BY);p.neg=p.abs.$length>0;return p;}p.abs=p.abs.setBit(m.abs,(n>>>0),o);p.neg=false;return p;};BO.prototype.SetBit=function(m,n,o){return this.$val.SetBit(m,n,o);};BO.ptr.prototype.And=function(m,n){var $ptr,m,n,o,p,q,r,s,t;o=this;if(m.neg===n.neg){if(m.neg){p=BX.nil.sub(m.abs,BY);q=BX.nil.sub(n.abs,BY);o.abs=o.abs.add(o.abs.or(p,q),BY);o.neg=true;return o;}o.abs=o.abs.and(m.abs,n.abs);o.neg=false;return o;}if(m.neg){r=n;s=m;m=r;n=s;}t=BX.nil.sub(n.abs,BY);o.abs=o.abs.andNot(m.abs,t);o.neg=false;return o;};BO.prototype.And=function(m,n){return this.$val.And(m,n);};BO.ptr.prototype.AndNot=function(m,n){var $ptr,m,n,o,p,q,r,s;o=this;if(m.neg===n.neg){if(m.neg){p=BX.nil.sub(m.abs,BY);q=BX.nil.sub(n.abs,BY);o.abs=o.abs.andNot(q,p);o.neg=false;return o;}o.abs=o.abs.andNot(m.abs,n.abs);o.neg=false;return o;}if(m.neg){r=BX.nil.sub(m.abs,BY);o.abs=o.abs.add(o.abs.or(r,n.abs),BY);o.neg=true;return o;}s=BX.nil.sub(n.abs,BY);o.abs=o.abs.and(m.abs,s);o.neg=false;return o;};BO.prototype.AndNot=function(m,n){return this.$val.AndNot(m,n);};BO.ptr.prototype.Or=function(m,n){var $ptr,m,n,o,p,q,r,s,t;o=this;if(m.neg===n.neg){if(m.neg){p=BX.nil.sub(m.abs,BY);q=BX.nil.sub(n.abs,BY);o.abs=o.abs.add(o.abs.and(p,q),BY);o.neg=true;return o;}o.abs=o.abs.or(m.abs,n.abs);o.neg=false;return o;}if(m.neg){r=n;s=m;m=r;n=s;}t=BX.nil.sub(n.abs,BY);o.abs=o.abs.add(o.abs.andNot(t,m.abs),BY);o.neg=true;return o;};BO.prototype.Or=function(m,n){return this.$val.Or(m,n);};BO.ptr.prototype.Xor=function(m,n){var $ptr,m,n,o,p,q,r,s,t;o=this;if(m.neg===n.neg){if(m.neg){p=BX.nil.sub(m.abs,BY);q=BX.nil.sub(n.abs,BY);o.abs=o.abs.xor(p,q);o.neg=false;return o;}o.abs=o.abs.xor(m.abs,n.abs);o.neg=false;return o;}if(m.neg){r=n;s=m;m=r;n=s;}t=BX.nil.sub(n.abs,BY);o.abs=o.abs.add(o.abs.xor(m.abs,t),BY);o.neg=true;return o;};BO.prototype.Xor=function(m,n){return this.$val.Xor(m,n);};BO.ptr.prototype.Not=function(m){var $ptr,m,n;n=this;if(m.neg){n.abs=n.abs.sub(m.abs,BY);n.neg=false;return n;}n.abs=n.abs.add(m.abs,BY);n.neg=true;return n;};BO.prototype.Not=function(m){return this.$val.Not(m);};BO.ptr.prototype.Sqrt=function(m){var $ptr,m,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;if(m.neg){$panic(new $String("square root of negative number"));}n.neg=false;o=n.abs.sqrt(m.abs);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n.abs=o;$s=-1;return n;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Sqrt};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Sqrt=function(m){return this.$val.Sqrt(m);};BO.ptr.prototype.Text=function(m){var $ptr,m,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;if(n===DP.nil){$s=-1;return"<nil>";}o=n.abs.itoa(n.neg,m);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$s=-1;return $bytesToString(o);}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Text};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Text=function(m){return this.$val.Text(m);};BO.ptr.prototype.Append=function(m,n){var $ptr,m,n,o,p,q,r,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;if(o===DP.nil){$s=-1;return $appendSlice(m,"<nil>");}p=m;q=o.abs.itoa(o.neg,n);$s=1;case 1:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=q;$s=-1;return $appendSlice(p,r);}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Append};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Append=function(m,n){return this.$val.Append(m,n);};BO.ptr.prototype.String=function(){var $ptr,m,n,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;n=m.Text(10);$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$s=-1;return n;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.String};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.String=function(){return this.$val.String();};BU=function(m,n,o){var $ptr,m,n,o,p,q,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if(n.length>0){$s=1;continue;}$s=2;continue;case 1:p=new DM($stringToBytes(n));case 3:if(!(o>0)){$s=4;continue;}q=m.Write(p);$s=5;case 5:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}q;o=o-(1)>>0;$s=3;continue;case 4:case 2:$s=-1;return;}return;}if($f===undefined){$f={$blk:BU};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.$s=$s;$f.$r=$r;return $f;};BO.ptr.prototype.Format=function(m,n){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;p=0;q=n;if(q===(98)){$s=2;continue;}if(q===(111)){$s=3;continue;}if((q===(100))||(q===(115))||(q===(118))){$s=4;continue;}if((q===(120))||(q===(88))){$s=5;continue;}$s=6;continue;case 2:p=2;$s=7;continue;case 3:p=8;$s=7;continue;case 4:p=10;$s=7;continue;case 5:p=16;$s=7;continue;case 6:r=m;s=new $Int32(n);t=o.String();$s=8;case 8:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}u=new $String(t);v=A.Fprintf(r,"%%!%c(big.Int=%s)",new DI([s,u]));$s=9;case 9:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}v;$s=-1;return;case 7:case 1:if(o===DP.nil){$s=10;continue;}$s=11;continue;case 10:w=A.Fprint(m,new DI([new $String("<nil>")]));$s=12;case 12:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}w;$s=-1;return;case 11:x="";if(o.neg){$s=14;continue;}y=m.Flag(43);$s=18;case 18:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}if(y){$s=15;continue;}z=m.Flag(32);$s=19;case 19:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}if(z){$s=16;continue;}$s=17;continue;case 14:x="-";$s=17;continue;case 15:x="+";$s=17;continue;case 16:x=" ";case 17:case 13:aa="";ab=m.Flag(35);$s=22;case 22:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}if(ab){$s=20;continue;}$s=21;continue;case 20:ac=n;if(ac===(111)){aa="0";}else if(ac===(120)){aa="0x";}else if(ac===(88)){aa="0X";}case 21:ad=o.abs.utoa(p);$s=23;case 23:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}ae=ad;if(n===88){af=ae;ag=0;while(true){if(!(ag<af.$length)){break;}ah=ag;ai=((ag<0||ag>=af.$length)?($throwRuntimeError("index out of range"),undefined):af.$array[af.$offset+ag]);if(97<=ai&&ai<=122){((ah<0||ah>=ae.$length)?($throwRuntimeError("index out of range"),undefined):ae.$array[ae.$offset+ah]=(65+((ai-97<<24>>>24))<<24>>>24));}ag++;}}aj=0;ak=0;al=0;an=m.Precision();$s=24;case 24:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}am=an;ao=am[0];ap=am[1];if(ap){if(ae.$length<ao){ak=ao-ae.$length>>0;}else if((ae.$length===1)&&((0>=ae.$length?($throwRuntimeError("index out of range"),undefined):ae.$array[ae.$offset+0])===48)&&(ao===0)){$s=-1;return;}}aq=((x.length+aa.length>>0)+ak>>0)+ae.$length>>0;as=m.Width();$s=25;case 25:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}ar=as;at=ar[0];au=ar[1];if(au&&aq<at){$s=26;continue;}$s=27;continue;case 26:av=at-aq>>0;aw=m.Flag(45);$s=33;case 33:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}if(aw){$s=29;continue;}ax=m.Flag(48);$s=34;case 34:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}if(ax&&!ap){$s=30;continue;}$s=31;continue;case 29:al=av;$s=32;continue;case 30:ak=av;$s=32;continue;case 31:aj=av;case 32:case 28:case 27:$r=BU(m," ",aj);$s=35;case 35:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=BU(m,x,1);$s=36;case 36:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=BU(m,aa,1);$s=37;case 37:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=BU(m,"0",ak);$s=38;case 38:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}ay=m.Write(ae);$s=39;case 39:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}ay;$r=BU(m," ",al);$s=40;case 40:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Format};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Format=function(m,n){return this.$val.Format(m,n);};BO.ptr.prototype.scan=function(m,n){var $ptr,m,n,o,p,q,r,s,t,u,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;q=BV(m);$s=1;case 1:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;r=p[0];s=p[1];if(!($interfaceIsEqual(s,$ifaceNil))){$s=-1;return[DP.nil,0,s];}u=o.abs.scan(m,n,false);$s=2;case 2:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}t=u;o.abs=t[0];n=t[1];s=t[3];if(!($interfaceIsEqual(s,$ifaceNil))){$s=-1;return[DP.nil,n,s];}o.neg=o.abs.$length>0&&r;$s=-1;return[o,n,$ifaceNil];}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.scan};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.scan=function(m,n){return this.$val.scan(m,n);};BV=function(m){var $ptr,m,n,o,p,q,r,s,t,u,v,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=false;o=$ifaceNil;p=0;r=m.ReadByte();$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=r;p=q[0];o=q[1];if(!($interfaceIsEqual(o,$ifaceNil))){s=false;t=o;n=s;o=t;$s=-1;return[n,o];}u=p;if(u===(45)){$s=3;continue;}if(u===(43)){$s=4;continue;}$s=5;continue;case 3:n=true;$s=6;continue;case 4:$s=6;continue;case 5:v=m.UnreadByte();$s=7;case 7:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}v;case 6:case 2:$s=-1;return[n,o];}return;}if($f===undefined){$f={$blk:BV};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.$s=$s;$f.$r=$r;return $f;};BW.ptr.prototype.ReadByte=function(){var $ptr,m,n,o,p,q,r,s,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;o=m.ScanState.ReadRune();$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n[0];q=n[1];r=n[2];if(!((q===1))&&$interfaceIsEqual(r,$ifaceNil)){$s=2;continue;}$s=3;continue;case 2:s=A.Errorf("invalid rune %#U",new DI([new $Int32(p)]));$s=4;case 4:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;case 3:$s=-1;return[(p<<24>>>24),r];}return;}if($f===undefined){$f={$blk:BW.ptr.prototype.ReadByte};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.$s=$s;$f.$r=$r;return $f;};BW.prototype.ReadByte=function(){return this.$val.ReadByte();};BW.ptr.prototype.UnreadByte=function(){var $ptr,m,n,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;n=m.ScanState.UnreadRune();$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$s=-1;return n;}return;}if($f===undefined){$f={$blk:BW.ptr.prototype.UnreadByte};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.$s=$s;$f.$r=$r;return $f;};BW.prototype.UnreadByte=function(){return this.$val.UnreadByte();};BO.ptr.prototype.Scan=function(m,n){var $ptr,m,n,o,p,q,r,s,t,u,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;$r=m.SkipSpace();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}p=0;q=n;if(q===(98)){p=2;}else if(q===(111)){p=8;}else if(q===(100)){p=10;}else if((q===(120))||(q===(88))){p=16;}else if((q===(115))||(q===(118))){}else{$s=-1;return I.New("Int.Scan: invalid verb");}t=o.scan((s=new BW.ptr(m),new s.constructor.elem(s)),p);$s=2;case 2:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}r=t;u=r[2];$s=-1;return u;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Scan};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Scan=function(m,n){return this.$val.Scan(m,n);};BO.ptr.prototype.GobEncode=function(){var $ptr,m,n,o,p;m=this;if(m===DP.nil){return[DM.nil,$ifaceNil];}n=$makeSlice(DM,(1+($imul(m.abs.$length,4))>>0));o=m.abs.bytes(n)-1>>0;p=2;if(m.neg){p=(p|(1))>>>0;}((o<0||o>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+o]=p);return[$subslice(n,o),$ifaceNil];};BO.prototype.GobEncode=function(){return this.$val.GobEncode();};BO.ptr.prototype.GobDecode=function(m){var $ptr,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;if(m.$length===0){BO.copy(n,new BO.ptr(false,BX.nil));$s=-1;return $ifaceNil;}o=(0>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+0]);if(!(((o>>>1<<24>>>24)===1))){$s=1;continue;}$s=2;continue;case 1:p=A.Errorf("Int.GobDecode: encoding version %d not supported",new DI([new $Uint8((o>>>1<<24>>>24))]));$s=3;case 3:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}$s=-1;return p;case 2:n.neg=!((((o&1)>>>0)===0));n.abs=n.abs.setBytes($subslice(m,1));$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.GobDecode};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.GobDecode=function(m){return this.$val.GobDecode(m);};BO.ptr.prototype.MarshalText=function(){var $ptr,m,n,o,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=DM.nil;n=$ifaceNil;o=this;if(o===DP.nil){p=new DM($stringToBytes("<nil>"));q=$ifaceNil;m=p;n=q;$s=-1;return[m,n];}s=o.abs.itoa(o.neg,10);$s=1;case 1:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;t=$ifaceNil;m=r;n=t;$s=-1;return[m,n];}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.MarshalText};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.MarshalText=function(){return this.$val.MarshalText();};BO.ptr.prototype.UnmarshalText=function(m){var $ptr,m,n,o,p,q,r,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;p=n.SetString($bytesToString(m),0);$s=1;case 1:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}o=p;q=o[1];if(!q){$s=2;continue;}$s=3;continue;case 2:r=A.Errorf("math/big: cannot unmarshal %q into a *big.Int",new DI([m]));$s=4;case 4:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}$s=-1;return r;case 3:$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.UnmarshalText};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.UnmarshalText=function(m){return this.$val.UnmarshalText(m);};BO.ptr.prototype.MarshalJSON=function(){var $ptr,m,n,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;n=m.MarshalText();$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$s=-1;return n;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.MarshalJSON};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.MarshalJSON=function(){return this.$val.MarshalJSON();};BO.ptr.prototype.UnmarshalJSON=function(m){var $ptr,m,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;if($bytesToString(m)==="null"){$s=-1;return $ifaceNil;}o=n.UnmarshalText(m);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$s=-1;return o;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.UnmarshalJSON};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.UnmarshalJSON=function(m){return this.$val.UnmarshalJSON(m);};BX.prototype.clear=function(){var $ptr,m,n,o,p;m=this;n=m;o=0;while(true){if(!(o<n.$length)){break;}p=o;((p<0||p>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+p]=0);o++;}};$ptrType(BX).prototype.clear=function(){return this.$get().clear();};BX.prototype.norm=function(){var $ptr,m,n,o;m=this;n=m.$length;while(true){if(!(n>0&&((o=n-1>>0,((o<0||o>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+o]))===0))){break;}n=n-(1)>>0;}return $subslice(m,0,n);};$ptrType(BX).prototype.norm=function(){return this.$get().norm();};BX.prototype.make=function(m){var $ptr,m,n;n=this;if(m<=n.$capacity){return $subslice(n,0,m);}return $makeSlice(BX,m,(m+4>>0));};$ptrType(BX).prototype.make=function(m){return this.$get().make(m);};BX.prototype.setWord=function(m){var $ptr,m,n;n=this;if(m===0){return $subslice(n,0,0);}n=n.make(1);(0>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+0]=m);return n;};$ptrType(BX).prototype.setWord=function(m){return this.$get().setWord(m);};BX.prototype.setUint64=function(m){var $ptr,m,n,o,p,q,r,s,t,u;n=this;o=(m.$low>>>0);if((p=new $Uint64(0,o.constructor===Number?o:1),(p.$high===m.$high&&p.$low===m.$low))){return n.setWord(o);}q=0;r=m;while(true){if(!((r.$high>0||(r.$high===0&&r.$low>0)))){break;}q=q+(1)>>0;r=$shiftRightUint64(r,(32));}n=n.make(q);s=n;t=0;while(true){if(!(t<s.$length)){break;}u=t;((u<0||u>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+u]=(new $Uint64(m.$high&0,(m.$low&4294967295)>>>0).$low>>>0));m=$shiftRightUint64(m,(32));t++;}return n;};$ptrType(BX).prototype.setUint64=function(m){return this.$get().setUint64(m);};BX.prototype.set=function(m){var $ptr,m,n;n=this;n=n.make(m.$length);$copySlice(n,m);return n;};$ptrType(BX).prototype.set=function(m){return this.$get().set(m);};BX.prototype.add=function(m,n){var $ptr,m,n,o,p,q,r,s,t,u;o=this;p=m.$length;q=n.$length;if(p<q){return o.add(n,m);}else if((p===0)){return $subslice(o,0,0);}else if((q===0)){return o.set(m);}o=o.make(p+1>>0);s=M((r=$subslice(o,0,q),$subslice(new DO(r.$array),r.$offset,r.$offset+r.$length)),$subslice(new DO(m.$array),m.$offset,m.$offset+m.$length),$subslice(new DO(n.$array),n.$offset,n.$offset+n.$length));if(p>q){s=O((t=$subslice(o,q,p),$subslice(new DO(t.$array),t.$offset,t.$offset+t.$length)),(u=$subslice(m,q),$subslice(new DO(u.$array),u.$offset,u.$offset+u.$length)),s);}((p<0||p>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+p]=s);return o.norm();};$ptrType(BX).prototype.add=function(m,n){return this.$get().add(m,n);};BX.prototype.sub=function(m,n){var $ptr,m,n,o,p,q,r,s,t,u;o=this;p=m.$length;q=n.$length;if(p<q){$panic(new $String("underflow"));}else if((p===0)){return $subslice(o,0,0);}else if((q===0)){return o.set(m);}o=o.make(p);s=N((r=$subslice(o,0,q),$subslice(new DO(r.$array),r.$offset,r.$offset+r.$length)),$subslice(new DO(m.$array),m.$offset,m.$offset+m.$length),$subslice(new DO(n.$array),n.$offset,n.$offset+n.$length));if(p>q){s=P((t=$subslice(o,q),$subslice(new DO(t.$array),t.$offset,t.$offset+t.$length)),(u=$subslice(m,q),$subslice(new DO(u.$array),u.$offset,u.$offset+u.$length)),s);}if(!((s===0))){$panic(new $String("underflow"));}return o.norm();};$ptrType(BX).prototype.sub=function(m,n){return this.$get().sub(m,n);};BX.prototype.cmp=function(m){var $ptr,m,n,o,p,q,r;n=0;o=this;p=o.$length;q=m.$length;if(!((p===q))||(p===0)){if(p<q){n=-1;}else if(p>q){n=1;}return n;}r=p-1>>0;while(true){if(!(r>0&&(((r<0||r>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+r])===((r<0||r>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+r])))){break;}r=r-(1)>>0;}if(((r<0||r>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+r])<((r<0||r>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+r])){n=-1;}else if(((r<0||r>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+r])>((r<0||r>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+r])){n=1;}return n;};$ptrType(BX).prototype.cmp=function(m){return this.$get().cmp(m);};BX.prototype.mulAddWW=function(m,n,o){var $ptr,m,n,o,p,q,r;p=this;q=m.$length;if((q===0)||(n===0)){return p.setWord(o);}p=p.make(q+1>>0);((q<0||q>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+q]=S((r=$subslice(p,0,q),$subslice(new DO(r.$array),r.$offset,r.$offset+r.$length)),$subslice(new DO(m.$array),m.$offset,m.$offset+m.$length),n,o));return p.norm();};$ptrType(BX).prototype.mulAddWW=function(m,n,o){return this.$get().mulAddWW(m,n,o);};CB=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,u;$subslice(m,0,(n.$length+o.$length>>0)).clear();p=o;q=0;while(true){if(!(q<p.$length)){break;}r=q;s=((q<0||q>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+q]);if(!((s===0))){(u=n.$length+r>>0,((u<0||u>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+u]=T((t=$subslice(m,r,(r+n.$length>>0)),$subslice(new DO(t.$array),t.$offset,t.$offset+t.$length)),$subslice(new DO(n.$array),n.$offset,n.$offset+n.$length),s)));}q++;}};BX.prototype.montgomery=function(m,n,o,p,q){var $ptr,aa,m,n,o,p,q,r,s,t,u,v,w,x,y,z;r=this;if(!((m.$length===q))||!((n.$length===q))||!((o.$length===q))){$panic(new $String("math/big: mismatched montgomery number lengths"));}r=r.make(q);r.clear();s=0;t=0;while(true){if(!(t<q)){break;}u=((t<0||t>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+t]);v=T($subslice(new DO(r.$array),r.$offset,r.$offset+r.$length),$subslice(new DO(m.$array),m.$offset,m.$offset+m.$length),u);w=$imul((0>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+0]),p)>>>0;x=T($subslice(new DO(r.$array),r.$offset,r.$offset+r.$length),$subslice(new DO(o.$array),o.$offset,o.$offset+o.$length),w);$copySlice(r,$subslice(r,1));y=s+v>>>0;z=y+x>>>0;(aa=q-1>>0,((aa<0||aa>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+aa]=z));if(y<v||z<x){s=1;}else{s=0;}t=t+(1)>>0;}if(!((s===0))){N($subslice(new DO(r.$array),r.$offset,r.$offset+r.$length),$subslice(new DO(r.$array),r.$offset,r.$offset+r.$length),$subslice(new DO(o.$array),o.$offset,o.$offset+o.$length));}return r;};$ptrType(BX).prototype.montgomery=function(m,n,o,p,q){return this.$get().montgomery(m,n,o,p,q);};CC=function(m,n,o){var $ptr,m,n,o,p,q,r,s;q=M((p=$subslice(m,0,o),$subslice(new DO(p.$array),p.$offset,p.$offset+p.$length)),$subslice(new DO(m.$array),m.$offset,m.$offset+m.$length),$subslice(new DO(n.$array),n.$offset,n.$offset+n.$length));if(!((q===0))){O((r=$subslice(m,o,(o+(o>>1>>0)>>0)),$subslice(new DO(r.$array),r.$offset,r.$offset+r.$length)),(s=$subslice(m,o),$subslice(new DO(s.$array),s.$offset,s.$offset+s.$length)),q);}};CD=function(m,n,o){var $ptr,m,n,o,p,q,r,s;q=N((p=$subslice(m,0,o),$subslice(new DO(p.$array),p.$offset,p.$offset+p.$length)),$subslice(new DO(m.$array),m.$offset,m.$offset+m.$length),$subslice(new DO(n.$array),n.$offset,n.$offset+n.$length));if(!((q===0))){P((r=$subslice(m,o,(o+(o>>1>>0)>>0)),$subslice(new DO(r.$array),r.$offset,r.$offset+r.$length)),(s=$subslice(m,o),$subslice(new DO(s.$array),s.$offset,s.$offset+s.$length)),q);}};CF=function(m,n,o){var $ptr,aa,ab,ac,ad,m,n,o,p,q,r,s,t,u,v,w,x,y,z;p=o.$length;if(!(((p&1)===0))||p<CE||p<2){CB(m,n,o);return;}q=p>>1>>0;r=$subslice(n,q);s=$subslice(n,0,q);t=r;u=s;v=$subslice(o,q);w=$subslice(o,0,q);x=v;y=w;CF(m,u,y);CF($subslice(m,p),t,x);z=1;aa=$subslice(m,($imul(2,p)),(($imul(2,p))+q>>0));if(!((N($subslice(new DO(aa.$array),aa.$offset,aa.$offset+aa.$length),$subslice(new DO(t.$array),t.$offset,t.$offset+t.$length),$subslice(new DO(u.$array),u.$offset,u.$offset+u.$length))===0))){z=-z;N($subslice(new DO(aa.$array),aa.$offset,aa.$offset+aa.$length),$subslice(new DO(u.$array),u.$offset,u.$offset+u.$length),$subslice(new DO(t.$array),t.$offset,t.$offset+t.$length));}ab=$subslice(m,(($imul(2,p))+q>>0),($imul(3,p)));if(!((N($subslice(new DO(ab.$array),ab.$offset,ab.$offset+ab.$length),$subslice(new DO(y.$array),y.$offset,y.$offset+y.$length),$subslice(new DO(x.$array),x.$offset,x.$offset+x.$length))===0))){z=-z;N($subslice(new DO(ab.$array),ab.$offset,ab.$offset+ab.$length),$subslice(new DO(x.$array),x.$offset,x.$offset+x.$length),$subslice(new DO(y.$array),y.$offset,y.$offset+y.$length));}ac=$subslice(m,($imul(p,3)));CF(ac,aa,ab);ad=$subslice(m,($imul(p,4)));$copySlice(ad,$subslice(m,0,($imul(p,2))));CC($subslice(m,q),ad,p);CC($subslice(m,q),$subslice(ad,p),p);if(z>0){CC($subslice(m,q),ac,p);}else{CD($subslice(m,q),ac,p);}};CG=function(m,n){var $ptr,m,n,o,p;return m.$capacity>0&&n.$capacity>0&&(o=$subslice(m,0,m.$capacity),$indexPtr(o.$array,o.$offset+(m.$capacity-1>>0),DR))===(p=$subslice(n,0,n.$capacity),$indexPtr(p.$array,p.$offset+(n.$capacity-1>>0),DR));};CH=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,u,v;p=n.$length;if(p>0){s=M((q=$subslice(m,o,(o+p>>0)),$subslice(new DO(q.$array),q.$offset,q.$offset+q.$length)),(r=$subslice(m,o),$subslice(new DO(r.$array),r.$offset,r.$offset+r.$length)),$subslice(new DO(n.$array),n.$offset,n.$offset+n.$length));if(!((s===0))){t=o+p>>0;if(t<m.$length){O((u=$subslice(m,t),$subslice(new DO(u.$array),u.$offset,u.$offset+u.$length)),(v=$subslice(m,t),$subslice(new DO(v.$array),v.$offset,v.$offset+v.$length)),s);}}}};CI=function(m,n){var $ptr,m,n;if(m>n){return m;}return n;};CJ=function(m){var $ptr,m,n,o;n=0;while(true){if(!(m>CE)){break;}m=(m>>$min((1),31))>>0;n=n+(1)>>>0;}return(o=n,o<32?(m<<o):0)>>0;};BX.prototype.mul=function(m,n){var $ptr,m,n,o,p,q,r,s,t,u,v,w,x,y,z;o=this;p=m.$length;q=n.$length;if(p<q){return o.mul(n,m);}else if((p===0)||(q===0)){return $subslice(o,0,0);}else if((q===1)){return o.mulAddWW(m,(0>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+0]),0);}if(CG(o,m)||CG(o,n)){o=BX.nil;}if(q<CE){o=o.make(p+q>>0);CB(o,m,n);return o.norm();}r=CJ(q);s=$subslice(m,0,r);t=$subslice(n,0,r);o=o.make(CI($imul(6,r),p+q>>0));CF(o,s,t);o=$subslice(o,0,(p+q>>0));$subslice(o,($imul(2,r))).clear();if(r<q||!((p===q))){u=BX.nil;v=s.norm();w=$subslice(n,r);u=u.mul(v,w);CH(o,u,r);x=t.norm();y=r;while(true){if(!(y<m.$length)){break;}z=$subslice(m,y);if(z.$length>r){z=$subslice(z,0,r);}z=z.norm();u=u.mul(z,x);CH(o,u,y);u=u.mul(z,w);CH(o,u,y+r>>0);y=y+(r)>>0;}}return o.norm();};$ptrType(BX).prototype.mul=function(m,n){return this.$get().mul(m,n);};BX.prototype.mulRange=function(m,n){var $ptr,m,n,o,p,q;o=this;if((m.$high===0&&m.$low===0)){return o.setUint64(new $Uint64(0,0));}else if((m.$high>n.$high||(m.$high===n.$high&&m.$low>n.$low))){return o.setUint64(new $Uint64(0,1));}else if((m.$high===n.$high&&m.$low===n.$low)){return o.setUint64(m);}else if((p=new $Uint64(m.$high+0,m.$low+1),(p.$high===n.$high&&p.$low===n.$low))){return o.mul(BX.nil.setUint64(m),BX.nil.setUint64(n));}q=$div64((new $Uint64(m.$high+n.$high,m.$low+n.$low)),new $Uint64(0,2),false);return o.mul(BX.nil.mulRange(m,q),BX.nil.mulRange(new $Uint64(q.$high+0,q.$low+1),n));};$ptrType(BX).prototype.mulRange=function(m,n){return this.$get().mulRange(m,n);};BX.prototype.divW=function(m,n){var $ptr,m,n,o,p,q,r;o=BX.nil;p=0;q=this;r=m.$length;if((n===0)){$panic(new $String("division by zero"));}else if((n===1)){o=q.set(m);return[o,p];}else if((r===0)){o=$subslice(q,0,0);return[o,p];}q=q.make(r);p=U($subslice(new DO(q.$array),q.$offset,q.$offset+q.$length),0,$subslice(new DO(m.$array),m.$offset,m.$offset+m.$length),n);o=q.norm();return[o,p];};$ptrType(BX).prototype.divW=function(m,n){return this.$get().divW(m,n);};BX.prototype.div=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,u,v,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=BX.nil;q=BX.nil;r=this;if(o.$length===0){$panic(new $String("division by zero"));}if(n.cmp(o)<0){p=$subslice(r,0,0);q=m.set(n);$s=-1;return[p,q];}if(o.$length===1){s=0;t=r.divW(n,(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0]));p=t[0];s=t[1];q=m.setWord(s);$s=-1;return[p,q];}v=r.divLarge(m,n,o);$s=1;case 1:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}u=v;p=u[0];q=u[1];$s=-1;return[p,q];}return;}if($f===undefined){$f={$blk:BX.prototype.div};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.div=function(m,n,o){return this.$get().div(m,n,o);};CK=function(m){var $ptr,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=DS.nil;o=CM.Get();$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=o;if(!($interfaceIsEqual(p,$ifaceNil))){n=$assertType(p,DS);}if(n===DS.nil){n=$newDataPointer(BX.nil,DS);}n.$set(n.make(m));$s=-1;return n;}return;}if($f===undefined){$f={$blk:CK};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};CL=function(m){var $ptr,m;CM.Put(m);};BX.prototype.divLarge=function(m,n,o){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;bf=$f.bf;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=BX.nil;q=BX.nil;r=this;s=o.$length;t=n.$length-s>>0;if(CG(r,n)||CG(r,o)){r=BX.nil;}p=r.make(t+1>>0);u=CK(s+1>>0);$s=1;case 1:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}v=u;w=v.$get();if(CG(m,n)||CG(m,o)){m=BX.nil;}m=m.make(n.$length+1>>0);m.clear();x=DS.nil;z=AE((y=s-1>>0,((y<0||y>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+y])));if(z>0){$s=2;continue;}$s=3;continue;case 2:aa=CK(s);$s=4;case 4:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}x=aa;ab=x.$get();Q($subslice(new DO(ab.$array),ab.$offset,ab.$offset+ab.$length),$subslice(new DO(o.$array),o.$offset,o.$offset+o.$length),z);o=ab;case 3:(ad=n.$length,((ad<0||ad>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+ad]=Q((ac=$subslice(m,0,n.$length),$subslice(new DO(ac.$array),ac.$offset,ac.$offset+ac.$length)),$subslice(new DO(n.$array),n.$offset,n.$offset+n.$length),z)));af=(ae=s-1>>0,((ae<0||ae>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+ae]));ag=t;while(true){if(!(ag>=0)){break;}ah=4294967295;aj=(ai=ag+s>>0,((ai<0||ai>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+ai]));if(!((aj===af))){ak=0;al=L(aj,(am=(ag+s>>0)-1>>0,((am<0||am>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+am])),af);ah=al[0];ak=al[1];ao=(an=s-2>>0,((an<0||an>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+an]));ap=K(ah,ao);aq=ap[0];ar=ap[1];at=(as=(ag+s>>0)-2>>0,((as<0||as>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+as]));while(true){if(!(CQ(aq,ar,ak,at))){break;}ah=ah-(1)>>>0;au=ak;ak=ak+(af)>>>0;if(ak<au){break;}av=K(ah,ao);aq=av[0];ar=av[1];}}((s<0||s>=w.$length)?($throwRuntimeError("index out of range"),undefined):w.$array[w.$offset+s]=S((aw=$subslice(w,0,s),$subslice(new DO(aw.$array),aw.$offset,aw.$offset+aw.$length)),$subslice(new DO(o.$array),o.$offset,o.$offset+o.$length),ah,0));az=N((ax=$subslice(m,ag,(ag+w.$length>>0)),$subslice(new DO(ax.$array),ax.$offset,ax.$offset+ax.$length)),(ay=$subslice(m,ag),$subslice(new DO(ay.$array),ay.$offset,ay.$offset+ay.$length)),$subslice(new DO(w.$array),w.$offset,w.$offset+w.$length));if(!((az===0))){bc=M((ba=$subslice(m,ag,(ag+s>>0)),$subslice(new DO(ba.$array),ba.$offset,ba.$offset+ba.$length)),(bb=$subslice(m,ag),$subslice(new DO(bb.$array),bb.$offset,bb.$offset+bb.$length)),$subslice(new DO(o.$array),o.$offset,o.$offset+o.$length));bd=ag+s>>0;((bd<0||bd>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+bd]=(((bd<0||bd>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+bd])+(bc)>>>0));ah=ah-(1)>>>0;}((ag<0||ag>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+ag]=ah);ag=ag-(1)>>0;}if(!(x===DS.nil)){CL(x);}CL(v);p=p.norm();R($subslice(new DO(m.$array),m.$offset,m.$offset+m.$length),$subslice(new DO(m.$array),m.$offset,m.$offset+m.$length),z);q=m.norm();be=p;bf=q;p=be;q=bf;$s=-1;return[p,q];}return;}if($f===undefined){$f={$blk:BX.prototype.divLarge};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$f.bf=bf;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.divLarge=function(m,n,o){return this.$get().divLarge(m,n,o);};BX.prototype.bitLen=function(){var $ptr,m,n;m=this;n=m.$length-1>>0;if(n>=0){return($imul(n,32))+V(((n<0||n>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+n]))>>0;}return 0;};$ptrType(BX).prototype.bitLen=function(){return this.$get().bitLen();};CP=function(m){var $ptr,m,n,o,p;n=32;if(n===(32)){return((o=(($imul((((m&(-m>>>0))>>>0)),125613361)>>>0))>>>27>>>0,((o<0||o>=CN.length)?($throwRuntimeError("index out of range"),undefined):CN[o]))>>>0);}else if(n===(64)){return((p=0,((p<0||p>=CO.length)?($throwRuntimeError("index out of range"),undefined):CO[p]))>>>0);}else{$panic(new $String("unknown word size"));}};BX.prototype.trailingZeroBits=function(){var $ptr,m,n;m=this;if(m.$length===0){return 0;}n=0;while(true){if(!(((n<0||n>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+n])===0)){break;}n=n+(1)>>>0;}return(n*32>>>0)+CP(((n<0||n>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+n]))>>>0;};$ptrType(BX).prototype.trailingZeroBits=function(){return this.$get().trailingZeroBits();};BX.prototype.shl=function(m,n){var $ptr,m,n,o,p,q,r,s,t;o=this;p=m.$length;if(p===0){return $subslice(o,0,0);}r=p+((q=n/32,(q===q&&q!==1/0&&q!==-1/0)?q>>>0:$throwRuntimeError("integer divide by zero"))>>0)>>0;o=o.make(r+1>>0);((r<0||r>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+r]=Q((s=$subslice(o,(r-p>>0),r),$subslice(new DO(s.$array),s.$offset,s.$offset+s.$length)),$subslice(new DO(m.$array),m.$offset,m.$offset+m.$length),(t=n%32,t===t?t:$throwRuntimeError("integer divide by zero"))));$subslice(o,0,(r-p>>0)).clear();return o.norm();};$ptrType(BX).prototype.shl=function(m,n){return this.$get().shl(m,n);};BX.prototype.shr=function(m,n){var $ptr,m,n,o,p,q,r,s,t;o=this;p=m.$length;r=p-((q=n/32,(q===q&&q!==1/0&&q!==-1/0)?q>>>0:$throwRuntimeError("integer divide by zero"))>>0)>>0;if(r<=0){return $subslice(o,0,0);}o=o.make(r);R($subslice(new DO(o.$array),o.$offset,o.$offset+o.$length),(s=$subslice(m,(p-r>>0)),$subslice(new DO(s.$array),s.$offset,s.$offset+s.$length)),(t=n%32,t===t?t:$throwRuntimeError("integer divide by zero")));return o.norm();};$ptrType(BX).prototype.shr=function(m,n){return this.$get().shr(m,n);};BX.prototype.setBit=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,u,v,w;p=this;r=((q=n/32,(q===q&&q!==1/0&&q!==-1/0)?q>>>0:$throwRuntimeError("integer divide by zero"))>>0);u=(s=((t=n%32,t===t?t:$throwRuntimeError("integer divide by zero"))),s<32?(1<<s):0)>>>0;v=m.$length;w=o;if(w===(0)){p=p.make(v);$copySlice(p,m);if(r>=v){return p;}((r<0||r>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+r]=((((r<0||r>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+r])&~(u))>>>0));return p.norm();}else if(w===(1)){if(r>=v){p=p.make(r+1>>0);$subslice(p,v).clear();}else{p=p.make(v);}$copySlice(p,m);((r<0||r>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+r]=((((r<0||r>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+r])|(u))>>>0));return p;}$panic(new $String("set bit is not 0 or 1"));};$ptrType(BX).prototype.setBit=function(m,n,o){return this.$get().setBit(m,n,o);};BX.prototype.bit=function(m){var $ptr,m,n,o,p,q,r;n=this;p=(o=m/32,(o===o&&o!==1/0&&o!==-1/0)?o>>>0:$throwRuntimeError("integer divide by zero"));if(p>=(n.$length>>>0)){return 0;}return(((((q=((r=m%32,r===r?r:$throwRuntimeError("integer divide by zero"))),q<32?(((p<0||p>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+p])>>>q):0)>>>0)&1)>>>0)>>>0);};$ptrType(BX).prototype.bit=function(m){return this.$get().bit(m);};BX.prototype.and=function(m,n){var $ptr,m,n,o,p,q,r;o=this;p=m.$length;q=n.$length;if(p>q){p=q;}o=o.make(p);r=0;while(true){if(!(r<p)){break;}((r<0||r>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+r]=((((r<0||r>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+r])&((r<0||r>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+r]))>>>0));r=r+(1)>>0;}return o.norm();};$ptrType(BX).prototype.and=function(m,n){return this.$get().and(m,n);};BX.prototype.andNot=function(m,n){var $ptr,m,n,o,p,q,r;o=this;p=m.$length;q=n.$length;if(q>p){q=p;}o=o.make(p);r=0;while(true){if(!(r<q)){break;}((r<0||r>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+r]=((((r<0||r>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+r])&~((r<0||r>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+r]))>>>0));r=r+(1)>>0;}$copySlice($subslice(o,q,p),$subslice(m,q,p));return o.norm();};$ptrType(BX).prototype.andNot=function(m,n){return this.$get().andNot(m,n);};BX.prototype.or=function(m,n){var $ptr,m,n,o,p,q,r,s,t,u;o=this;p=m.$length;q=n.$length;r=m;if(p<q){s=p;t=q;q=s;p=t;r=n;}o=o.make(p);u=0;while(true){if(!(u<q)){break;}((u<0||u>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+u]=((((u<0||u>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+u])|((u<0||u>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+u]))>>>0));u=u+(1)>>0;}$copySlice($subslice(o,q,p),$subslice(r,q,p));return o.norm();};$ptrType(BX).prototype.or=function(m,n){return this.$get().or(m,n);};BX.prototype.xor=function(m,n){var $ptr,m,n,o,p,q,r,s,t,u;o=this;p=m.$length;q=n.$length;r=m;if(p<q){s=p;t=q;q=s;p=t;r=n;}o=o.make(p);u=0;while(true){if(!(u<q)){break;}((u<0||u>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+u]=((((u<0||u>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+u])^((u<0||u>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+u]))>>>0));u=u+(1)>>0;}$copySlice($subslice(o,q,p),$subslice(r,q,p));return o.norm();};$ptrType(BX).prototype.xor=function(m,n){return this.$get().xor(m,n);};CQ=function(m,n,o,p){var $ptr,m,n,o,p;return m>o||(m===o)&&n>p;};BX.prototype.modW=function(m){var $ptr,m,n,o,p;n=0;o=this;p=BX.nil;p=p.make(o.$length);n=U($subslice(new DO(p.$array),p.$offset,p.$offset+p.$length),0,$subslice(new DO(o.$array),o.$offset,o.$offset+o.$length),m);return n;};$ptrType(BX).prototype.modW=function(m){return this.$get().modW(m);};BX.prototype.random=function(m,n,o){var $ptr,aa,ab,ac,ad,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;if(CG(p,n)){p=BX.nil;}p=p.make(n.$length);r=((q=o%32,q===q?q:$throwRuntimeError("integer divide by zero"))>>>0);if(r===0){r=32;}t=((((s=r,s<32?(1<<s):0)>>>0))-1>>>0);case 1:u=32;if(u===(32)){$s=4;continue;}if(u===(64)){$s=5;continue;}$s=6;continue;case 4:v=p;w=0;case 8:if(!(w<v.$length)){$s=9;continue;}x=w;y=m.Uint32();$s=10;case 10:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}((x<0||x>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+x]=(y>>>0));w++;$s=8;continue;case 9:$s=7;continue;case 5:z=p;aa=0;case 11:if(!(aa<z.$length)){$s=12;continue;}ab=aa;ac=m.Uint32();$s=13;case 13:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}((ab<0||ab>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+ab]=(((ac>>>0)|0)>>>0));aa++;$s=11;continue;case 12:$s=7;continue;case 6:$panic(new $String("unknown word size"));case 7:case 3:ad=n.$length-1>>0;((ad<0||ad>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+ad]=((((ad<0||ad>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+ad])&(t))>>>0));if(p.cmp(n)<0){$s=2;continue;}$s=1;continue;case 2:$s=-1;return p.norm();}return;}if($f===undefined){$f={$blk:BX.prototype.random};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.random=function(m,n,o){return this.$get().random(m,n,o);};BX.prototype.expNN=function(m,n,o){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;if(CG(p,m)||CG(p,n)){p=BX.nil;}if((o.$length===1)&&((0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0])===1)){$s=-1;return p.setWord(0);}if(n.$length===0){$s=-1;return p.setWord(1);}if((n.$length===1)&&((0>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+0])===1)&&!((o.$length===0))){$s=1;continue;}$s=2;continue;case 1:r=p.div(p,m,o);$s=3;case 3:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=r;p=q[1];$s=-1;return p;case 2:if(!((o.$length===0))){p=p.make(o.$length);}p=p.set(m);if(m.cmp(BY)>0&&n.$length>1&&o.$length>0){$s=4;continue;}$s=5;continue;case 4:if((((0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0])&1)>>>0)===1){$s=6;continue;}$s=7;continue;case 6:s=p.expNNMontgomery(m,n,o);$s=8;case 8:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}$s=-1;return s;case 7:t=p.expNNWindowed(m,n,o);$s=9;case 9:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}$s=-1;return t;case 5:v=(u=n.$length-1>>0,((u<0||u>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+u]));w=AE(v)+1>>>0;v=(x=(w),x<32?(v<<x):0)>>>0;y=BX.nil;z=32-(w>>0)>>0;aa=BX.nil;ab=BX.nil;ac=aa;ad=ab;ae=0;case 10:if(!(ae<z)){$s=11;continue;}ac=ac.mul(p,p);af=p;ag=ac;ac=af;p=ag;if(!((((v&2147483648)>>>0)===0))){ac=ac.mul(p,m);ah=p;ai=ac;ac=ah;p=ai;}if(!((o.$length===0))){$s=12;continue;}$s=13;continue;case 12:ak=ac.div(ad,p,o);$s=14;case 14:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}aj=ak;ac=aj[0];ad=aj[1];al=y;am=p;an=ac;ao=ad;ac=al;ad=am;y=an;p=ao;case 13:v=(ap=(1),ap<32?(v<<ap):0)>>>0;ae=ae+(1)>>0;$s=10;continue;case 11:aq=n.$length-2>>0;case 15:if(!(aq>=0)){$s=16;continue;}v=((aq<0||aq>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+aq]);ar=0;case 17:if(!(ar<32)){$s=18;continue;}ac=ac.mul(p,p);as=p;at=ac;ac=as;p=at;if(!((((v&2147483648)>>>0)===0))){ac=ac.mul(p,m);au=p;av=ac;ac=au;p=av;}if(!((o.$length===0))){$s=19;continue;}$s=20;continue;case 19:ax=ac.div(ad,p,o);$s=21;case 21:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}aw=ax;ac=aw[0];ad=aw[1];ay=y;az=p;ba=ac;bb=ad;ac=ay;ad=az;y=ba;p=bb;case 20:v=(bc=(1),bc<32?(v<<bc):0)>>>0;ar=ar+(1)>>0;$s=17;continue;case 18:aq=aq-(1)>>0;$s=15;continue;case 16:$s=-1;return p.norm();}return;}if($f===undefined){$f={$blk:BX.prototype.expNN};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.expNN=function(m,n,o){return this.$get().expNN(m,n,o);};BX.prototype.expNNWindowed=function(m,n,o){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;bf=$f.bf;bg=$f.bg;bh=$f.bh;bi=$f.bi;bj=$f.bj;bk=$f.bk;bl=$f.bl;bm=$f.bm;bn=$f.bn;bo=$f.bo;bp=$f.bp;bq=$f.bq;br=$f.br;bs=$f.bs;bt=$f.bt;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;q=BX.nil;r=BX.nil;s=q;t=r;u=DT.zero();u[0]=BY;u[1]=m;v=2;case 1:if(!(v<16)){$s=2;continue;}w=$indexPtr(u,(x=v/2,(x===x&&x!==1/0&&x!==-1/0)?x>>0:$throwRuntimeError("integer divide by zero")),DS);y=$indexPtr(u,v,DS);z=$indexPtr(u,(v+1>>0),DS);aa=w;ab=y;ac=z;ab.$set(ab.mul(aa.$get(),aa.$get()));ae=s.div(t,ab.$get(),o);$s=3;case 3:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}ad=ae;s=ad[0];t=ad[1];af=t;ag=ab.$get();ab.$set(af);t=ag;ac.$set(ac.mul(ab.$get(),m));ai=s.div(t,ac.$get(),o);$s=4;case 4:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ah=ai;s=ah[0];t=ah[1];aj=t;ak=ac.$get();ac.$set(aj);t=ak;v=v+(2)>>0;$s=1;continue;case 2:p=p.setWord(1);al=n.$length-1>>0;case 5:if(!(al>=0)){$s=6;continue;}am=((al<0||al>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+al]);an=0;case 7:if(!(an<32)){$s=8;continue;}if(!((al===(n.$length-1>>0)))||!((an===0))){$s=9;continue;}$s=10;continue;case 9:s=s.mul(p,p);ao=p;ap=s;s=ao;p=ap;ar=s.div(t,p,o);$s=11;case 11:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}aq=ar;s=aq[0];t=aq[1];as=t;at=p;p=as;t=at;s=s.mul(p,p);au=p;av=s;s=au;p=av;ax=s.div(t,p,o);$s=12;case 12:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}aw=ax;s=aw[0];t=aw[1];ay=t;az=p;p=ay;t=az;s=s.mul(p,p);ba=p;bb=s;s=ba;p=bb;bd=s.div(t,p,o);$s=13;case 13:if($c){$c=false;bd=bd.$blk();}if(bd&&bd.$blk!==undefined){break s;}bc=bd;s=bc[0];t=bc[1];be=t;bf=p;p=be;t=bf;s=s.mul(p,p);bg=p;bh=s;s=bg;p=bh;bj=s.div(t,p,o);$s=14;case 14:if($c){$c=false;bj=bj.$blk();}if(bj&&bj.$blk!==undefined){break s;}bi=bj;s=bi[0];t=bi[1];bk=t;bl=p;p=bk;t=bl;case 10:s=s.mul(p,(bm=am>>>28>>>0,((bm<0||bm>=u.length)?($throwRuntimeError("index out of range"),undefined):u[bm])));bn=p;bo=s;s=bn;p=bo;bq=s.div(t,p,o);$s=15;case 15:if($c){$c=false;bq=bq.$blk();}if(bq&&bq.$blk!==undefined){break s;}bp=bq;s=bp[0];t=bp[1];br=t;bs=p;p=br;t=bs;am=(bt=(4),bt<32?(am<<bt):0)>>>0;an=an+(4)>>0;$s=7;continue;case 8:al=al-(1)>>0;$s=5;continue;case 6:$s=-1;return p.norm();}return;}if($f===undefined){$f={$blk:BX.prototype.expNNWindowed};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$f.bf=bf;$f.bg=bg;$f.bh=bh;$f.bi=bi;$f.bj=bj;$f.bk=bk;$f.bl=bl;$f.bm=bm;$f.bn=bn;$f.bo=bo;$f.bp=bp;$f.bq=bq;$f.br=br;$f.bs=bs;$f.bt=bt;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.expNNWindowed=function(m,n,o){return this.$get().expNNWindowed(m,n,o);};BX.prototype.expNNMontgomery=function(m,n,o){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;q=o.$length;if(m.$length>q){$s=1;continue;}$s=2;continue;case 1:s=BX.nil.div(BX.nil,m,o);$s=3;case 3:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;m=r[1];case 2:if(m.$length<q){t=$makeSlice(BX,q);$copySlice(t,m);m=t;}u=2-(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0])>>>0;v=(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0])-1>>>0;w=1;while(true){if(!(w<32)){break;}v=$imul(v,(v))>>>0;u=$imul(u,(((v+1>>>0))))>>>0;w=(x=(1),x<32?(w<<x):0)>>0;}u=-u>>>0;y=BX.nil.setWord(1);z=BX.nil.shl(y,(($imul(($imul(2,q)),32))>>>0));ab=y.div(y,z,o);$s=4;case 4:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}aa=ab;y=aa[1];if(y.$length<q){z=z.make(q);$copySlice(z,y);y=z;}ac=$makeSlice(BX,q);(0>=ac.$length?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+0]=1);ad=DT.zero();ad[0]=ad[0].montgomery(ac,y,o,u,q);ad[1]=ad[1].montgomery(m,y,o,u,q);ae=2;while(true){if(!(ae<16)){break;}((ae<0||ae>=ad.length)?($throwRuntimeError("index out of range"),undefined):ad[ae]=((ae<0||ae>=ad.length)?($throwRuntimeError("index out of range"),undefined):ad[ae]).montgomery((af=ae-1>>0,((af<0||af>=ad.length)?($throwRuntimeError("index out of range"),undefined):ad[af])),ad[1],o,u,q));ae=ae+(1)>>0;}p=p.make(q);$copySlice(p,ad[0]);z=z.make(q);ag=n.$length-1>>0;while(true){if(!(ag>=0)){break;}ah=((ag<0||ag>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+ag]);ai=0;while(true){if(!(ai<32)){break;}if(!((ag===(n.$length-1>>0)))||!((ai===0))){z=z.montgomery(p,p,o,u,q);p=p.montgomery(z,z,o,u,q);z=z.montgomery(p,p,o,u,q);p=p.montgomery(z,z,o,u,q);}z=z.montgomery(p,(aj=ah>>>28>>>0,((aj<0||aj>=ad.length)?($throwRuntimeError("index out of range"),undefined):ad[aj])),o,u,q);ak=z;al=p;p=ak;z=al;ah=(am=(4),am<32?(ah<<am):0)>>>0;ai=ai+(4)>>0;}ag=ag-(1)>>0;}z=z.montgomery(p,ac,o,u,q);if(z.cmp(o)>=0){$s=5;continue;}$s=6;continue;case 5:z=z.sub(z,o);if(z.cmp(o)>=0){$s=7;continue;}$s=8;continue;case 7:ao=BX.nil.div(BX.nil,z,o);$s=9;case 9:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}an=ao;z=an[1];case 8:case 6:$s=-1;return z.norm();}return;}if($f===undefined){$f={$blk:BX.prototype.expNNMontgomery};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.expNNMontgomery=function(m,n,o){return this.$get().expNNMontgomery(m,n,o);};BX.prototype.bytes=function(m){var $ptr,m,n,o,p,q,r,s,t;n=0;o=this;n=m.$length;p=o;q=0;while(true){if(!(q<p.$length)){break;}r=((q<0||q>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+q]);s=0;while(true){if(!(s<4)){break;}n=n-(1)>>0;((n<0||n>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+n]=(r<<24>>>24));r=(t=(8),t<32?(r>>>t):0)>>>0;s=s+(1)>>0;}q++;}while(true){if(!(n<m.$length&&(((n<0||n>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+n])===0))){break;}n=n+(1)>>0;}return n;};$ptrType(BX).prototype.bytes=function(m){return this.$get().bytes(m);};BX.prototype.setBytes=function(m){var $ptr,m,n,o,p,q,r,s,t,u;n=this;n=n.make((o=(((m.$length+4>>0)-1>>0))/4,(o===o&&o!==1/0&&o!==-1/0)?o>>0:$throwRuntimeError("integer divide by zero")));p=0;q=0;r=0;s=m.$length;while(true){if(!(s>0)){break;}r=(r|(((t=q,t<32?(((u=s-1>>0,((u<0||u>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+u]))>>>0)<<t):0)>>>0)))>>>0;q=q+(8)>>>0;if(q===32){((p<0||p>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+p]=r);p=p+(1)>>0;q=0;r=0;}s=s-(1)>>0;}if(p<n.$length){((p<0||p>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+p]=r);}return n.norm();};$ptrType(BX).prototype.setBytes=function(m){return this.$get().setBytes(m);};BX.prototype.sqrt=function(m){var $ptr,m,n,o,p,q,r,s,t,u,v,w,x,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;if(m.cmp(BY)<=0){$s=-1;return n.set(m);}if(CG(n,m)){n=BX.nil;}o=BX.nil;p=BX.nil;q=o;r=p;q=n;q=q.setUint64(new $Uint64(0,1));q=q.shl(q,(((s=m.bitLen()/2,(s===s&&s!==1/0&&s!==-1/0)?s>>0:$throwRuntimeError("integer divide by zero"))+1>>0)>>>0));t=0;case 1:v=r.div(BX.nil,m,q);$s=3;case 3:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}u=v;r=u[0];r=r.add(r,q);r=r.shr(r,1);if(r.cmp(q)>=0){if((t&1)===0){$s=-1;return q;}$s=-1;return n.set(q);}w=r;x=q;q=w;r=x;t=t+(1)>>0;$s=1;continue;case 2:$s=-1;return BX.nil;}return;}if($f===undefined){$f={$blk:BX.prototype.sqrt};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.sqrt=function(m){return this.$get().sqrt(m);};CR=function(m){var $ptr,m,n,o,p,q,r,s;n=0;o=0;p=m;q=1;n=p;o=q;s=(r=4294967295/m,(r===r&&r!==1/0&&r!==-1/0)?r>>>0:$throwRuntimeError("integer divide by zero"));while(true){if(!(n<=s)){break;}n=$imul(n,(m))>>>0;o=o+(1)>>0;}return[n,o];};CS=function(m,n){var $ptr,m,n,o;o=0;o=1;while(true){if(!(n>0)){break;}if(!(((n&1)===0))){o=$imul(o,(m))>>>0;}m=$imul(m,(m))>>>0;n=(n>>$min((1),31))>>0;}return o;};BX.prototype.scan=function(m,n,o){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=BX.nil;q=0;r=0;s=$ifaceNil;t=this;u=(n===0)||!o&&2<=n&&n<=36||o&&((n===2)||(n===10)||(n===16));if(!u){$s=1;continue;}$s=2;continue;case 1:v=A.Sprintf("illegal number base %d",new DI([new $Int(n)]));$s=3;case 3:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}$panic(new $String(v));case 2:x=m.ReadByte();$s=4;case 4:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}w=x;y=w[0];s=w[1];if(!($interfaceIsEqual(s,$ifaceNil))){$s=-1;return[p,q,r,s];}q=n;if(n===0){$s=5;continue;}$s=6;continue;case 5:q=10;if(y===48){$s=7;continue;}$s=8;continue;case 7:r=1;aa=m.ReadByte();$s=10;case 10:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}z=aa;y=z[0];s=z[1];ab=s;if($interfaceIsEqual(ab,$ifaceNil)){$s=11;continue;}if($interfaceIsEqual(ab,(C.EOF))){$s=12;continue;}$s=13;continue;case 11:if(!o){q=8;}ac=y;if((ac===(120))||(ac===(88))){q=16;}else if((ac===(98))||(ac===(66))){q=2;}ad=q;if((ad===(16))||(ad===(2))){$s=16;continue;}if(ad===(8)){$s=17;continue;}$s=18;continue;case 16:r=0;af=m.ReadByte();$s=19;case 19:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}ae=af;y=ae[0];s=ae[1];if(!($interfaceIsEqual(s,$ifaceNil))){$s=-1;return[p,q,r,s];}$s=18;continue;case 17:r=0;case 18:case 15:$s=14;continue;case 12:p=$subslice(t,0,0);s=$ifaceNil;$s=-1;return[p,q,r,s];case 13:$s=-1;return[p,q,r,s];case 14:case 9:case 8:case 6:t=$subslice(t,0,0);ag=(q>>>0);ah=CR(ag);ai=ah[0];aj=ah[1];ak=0;al=0;am=-1;case 20:if(o&&(y===46)){$s=22;continue;}$s=23;continue;case 22:o=false;am=r;ao=m.ReadByte();$s=24;case 24:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}an=ao;y=an[0];s=an[1];if(!($interfaceIsEqual(s,$ifaceNil))){if($interfaceIsEqual(s,C.EOF)){s=$ifaceNil;$s=21;continue;}$s=-1;return[p,q,r,s];}case 23:ap=0;if(48<=y&&y<=57){ap=((y-48<<24>>>24)>>>0);}else if(97<=y&&y<=122){ap=(((y-97<<24>>>24)+10<<24>>>24)>>>0);}else if(65<=y&&y<=90){ap=(((y-65<<24>>>24)+10<<24>>>24)>>>0);}else{ap=37;}if(ap>=ag){$s=25;continue;}$s=26;continue;case 25:aq=m.UnreadByte();$s=27;case 27:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}aq;$s=21;continue;case 26:r=r+(1)>>0;ak=($imul(ak,ag)>>>0)+ap>>>0;al=al+(1)>>0;if(al===aj){t=t.mulAddWW(t,ai,ak);ak=0;al=0;}as=m.ReadByte();$s=28;case 28:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}ar=as;y=ar[0];s=ar[1];if(!($interfaceIsEqual(s,$ifaceNil))){if($interfaceIsEqual(s,C.EOF)){s=$ifaceNil;$s=21;continue;}$s=-1;return[p,q,r,s];}$s=20;continue;case 21:if(r===0){if((n===0)&&(q===8)){r=1;q=10;}else if(!((n===0))||!((q===8))){s=I.New("syntax error scanning number");}$s=-1;return[p,q,r,s];}if(al>0){t=t.mulAddWW(t,CS(ag,al),ak);}p=t.norm();if(am>=0){r=am-r>>0;}$s=-1;return[p,q,r,s];}return;}if($f===undefined){$f={$blk:BX.prototype.scan};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.scan=function(m,n,o){return this.$get().scan(m,n,o);};BX.prototype.utoa=function(m){var $ptr,m,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;o=n.itoa(false,m);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$s=-1;return o;}return;}if($f===undefined){$f={$blk:BX.prototype.utoa};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.utoa=function(m){return this.$get().utoa(m);};BX.prototype.itoa=function(m,n){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;if(n<2||n>36){$panic(new $String("invalid base"));}if(o.$length===0){$s=-1;return new DM($stringToBytes("0"));}p=(o.bitLen()/B.Log2(n)>>0)+1>>0;if(m){p=p+(1)>>0;}q=$makeSlice(DM,p);r=(n>>>0);if(r===((r&(-r>>>0))>>>0)){$s=1;continue;}$s=2;continue;case 1:s=CP(r);u=(((t=s,t<32?(1<<t):0)>>>0)-1>>>0);v=(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0]);w=32;x=1;while(true){if(!(x<o.$length)){break;}while(true){if(!(w>=s)){break;}p=p-(1)>>0;((p<0||p>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+p]="0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt(((v&u)>>>0)));v=(y=(s),y<32?(v>>>y):0)>>>0;w=w-(s)>>>0;}if(w===0){v=((x<0||x>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+x]);w=32;}else{v=(v|(((z=w,z<32?(((x<0||x>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+x])<<z):0)>>>0)))>>>0;p=p-(1)>>0;((p<0||p>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+p]="0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt(((v&u)>>>0)));v=(aa=((s-w>>>0)),aa<32?(((x<0||x>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+x])>>>aa):0)>>>0;w=32-((s-w>>>0))>>>0;}x=x+(1)>>0;}while(true){if(!(!((v===0)))){break;}p=p-(1)>>0;((p<0||p>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+p]="0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt(((v&u)>>>0)));v=(ab=(s),ab<32?(v>>>ab):0)>>>0;}$s=3;continue;case 2:ac=CR(r);ad=ac[0];ae=ac[1];af=CW(o.$length,r,ae,ad);$s=4;case 4:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}ag=af;ah=BX.nil.set(o);$r=ah.convertWords(q,r,ae,ad,ag);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}p=0;while(true){if(!(((p<0||p>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+p])===48)){break;}p=p+(1)>>0;}case 3:if(m){p=p-(1)>>0;((p<0||p>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+p]=45);}$s=-1;return $subslice(q,p);}return;}if($f===undefined){$f={$blk:BX.prototype.itoa};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.itoa=function(m,n){return this.$get().itoa(m,n);};BX.prototype.convertWords=function(m,n,o,p,q){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:r=this;if(!(q===DU.nil)){$s=1;continue;}$s=2;continue;case 1:s=BX.nil;t=q.$length-1>>0;case 3:if(!(r.$length>CT)){$s=4;continue;}u=r.bitLen();v=u>>1>>0;while(true){if(!(t>0&&(w=t-1>>0,((w<0||w>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+w])).nbits>v)){break;}t=t-(1)>>0;}if(((t<0||t>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+t]).nbits>=u&&((t<0||t>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+t]).bbb.cmp(r)>=0){t=t-(1)>>0;if(t<0){$panic(new $String("internal inconsistency"));}}y=r.div(s,r,((t<0||t>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+t]).bbb);$s=5;case 5:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}x=y;r=x[0];s=x[1];z=m.$length-((t<0||t>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+t]).ndigits>>0;$r=s.convertWords($subslice(m,z),n,o,p,$subslice(q,0,t));$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}m=$subslice(m,0,z);$s=3;continue;case 4:case 2:aa=m.$length;ab=0;if(n===10){while(true){if(!(r.$length>0)){break;}ac=r.divW(r,p);r=ac[0];ab=ac[1];ad=0;while(true){if(!(ad<o&&aa>0)){break;}aa=aa-(1)>>0;af=(ae=ab/10,(ae===ae&&ae!==1/0&&ae!==-1/0)?ae>>>0:$throwRuntimeError("integer divide by zero"));((aa<0||aa>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+aa]=(48+((ab-($imul(af,10)>>>0)>>>0)<<24>>>24)<<24>>>24));ab=af;ad=ad+(1)>>0;}}}else{while(true){if(!(r.$length>0)){break;}ag=r.divW(r,p);r=ag[0];ab=ag[1];ah=0;while(true){if(!(ah<o&&aa>0)){break;}aa=aa-(1)>>0;((aa<0||aa>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+aa]="0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt((ai=ab%n,ai===ai?ai:$throwRuntimeError("integer divide by zero"))));ab=(aj=ab/(n),(aj===aj&&aj!==1/0&&aj!==-1/0)?aj>>>0:$throwRuntimeError("integer divide by zero"));ah=ah+(1)>>0;}}}while(true){if(!(aa>0)){break;}aa=aa-(1)>>0;((aa<0||aa>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+aa]=48);}$s=-1;return;}return;}if($f===undefined){$f={$blk:BX.prototype.convertWords};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.convertWords=function(m,n,o,p,q){return this.$get().convertWords(m,n,o,p,q);};BX.prototype.expWW=function(m,n){var $ptr,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;p=o.expNN(BX.nil.setWord(m),BX.nil.setWord(n),BX.nil);$s=1;case 1:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}$s=-1;return p;}return;}if($f===undefined){$f={$blk:BX.prototype.expWW};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.expWW=function(m,n){return this.$get().expWW(m,n);};CW=function(m,n,o,p){var $ptr,aa,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if((CT===0)||m<=CT){$s=-1;return DU.nil;}q=1;r=CT;while(true){if(!(r<(m>>1>>0)&&q<64)){break;}q=q+(1)>>0;r=(s=(1),s<32?(r<<s):0)>>0;}t=DU.nil;if(n===10){CV.Mutex.Lock();t=$subslice(new DU(CV.table),0,q);}else{t=$makeSlice(DU,q);}if((u=q-1>>0,((u<0||u>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+u])).ndigits===0){$s=1;continue;}$s=2;continue;case 1:v=BX.nil;w=0;case 3:if(!(w<q)){$s=4;continue;}if(((w<0||w>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+w]).ndigits===0){$s=5;continue;}$s=6;continue;case 5:if(w===0){$s=7;continue;}$s=8;continue;case 7:x=BX.nil.expWW(p,(CT>>>0));$s=10;case 10:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}(0>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+0]).bbb=x;(0>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+0]).ndigits=$imul(o,CT);$s=9;continue;case 8:((w<0||w>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+w]).bbb=BX.nil.mul((y=w-1>>0,((y<0||y>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+y])).bbb,(z=w-1>>0,((z<0||z>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+z])).bbb);((w<0||w>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+w]).ndigits=$imul(2,(aa=w-1>>0,((aa<0||aa>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+aa])).ndigits);case 9:v=BX.nil.set(((w<0||w>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+w]).bbb);while(true){if(!(S($subslice(new DO(v.$array),v.$offset,v.$offset+v.$length),$subslice(new DO(v.$array),v.$offset,v.$offset+v.$length),n,0)===0)){break;}((w<0||w>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+w]).bbb=((w<0||w>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+w]).bbb.set(v);((w<0||w>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+w]).ndigits=((w<0||w>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+w]).ndigits+(1)>>0;}((w<0||w>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+w]).nbits=((w<0||w>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+w]).bbb.bitLen();case 6:w=w+(1)>>0;$s=3;continue;case 4:case 2:if(n===10){CV.Mutex.Unlock();}$s=-1;return t;}return;}if($f===undefined){$f={$blk:CW};}$f.$ptr=$ptr;$f.aa=aa;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BO.ptr.prototype.ProbablyPrime=function(m){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;if(m<0){$panic(new $String("negative n for ProbablyPrime"));}if(n.neg||(n.abs.$length===0)){$s=-1;return false;}p=(o=n.abs,(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0]));if((n.abs.$length===1)&&p<64){$s=-1;return!((q=(r=$shiftLeft64(new $Uint64(0,1),p),new $Uint64(673221152&r.$high,(2693408940&r.$low)>>>0)),(q.$high===0&&q.$low===0)));}if(((p&1)>>>0)===0){$s=-1;return false;}s=0;t=0;u=s;v=t;w=32;if(w===(32)){u=(n.abs.modW(4127218095)>>>0);v=(n.abs.modW(3948078067)>>>0);}else if(w===(64)){x=n.abs.modW(820596253);u=((y=x%4127218095,y===y?y:$throwRuntimeError("integer divide by zero"))>>>0);v=((z=x%3948078067,z===z?z:$throwRuntimeError("integer divide by zero"))>>>0);}else{$panic(new $String("math/big: invalid word size"));}if(((aa=u%3,aa===aa?aa:$throwRuntimeError("integer divide by zero"))===0)||((ab=u%5,ab===ab?ab:$throwRuntimeError("integer divide by zero"))===0)||((ac=u%7,ac===ac?ac:$throwRuntimeError("integer divide by zero"))===0)||((ad=u%11,ad===ad?ad:$throwRuntimeError("integer divide by zero"))===0)||((ae=u%13,ae===ae?ae:$throwRuntimeError("integer divide by zero"))===0)||((af=u%17,af===af?af:$throwRuntimeError("integer divide by zero"))===0)||((ag=u%19,ag===ag?ag:$throwRuntimeError("integer divide by zero"))===0)||((ah=u%23,ah===ah?ah:$throwRuntimeError("integer divide by zero"))===0)||((ai=u%37,ai===ai?ai:$throwRuntimeError("integer divide by zero"))===0)||((aj=v%29,aj===aj?aj:$throwRuntimeError("integer divide by zero"))===0)||((ak=v%31,ak===ak?ak:$throwRuntimeError("integer divide by zero"))===0)||((al=v%41,al===al?al:$throwRuntimeError("integer divide by zero"))===0)||((am=v%43,am===am?am:$throwRuntimeError("integer divide by zero"))===0)||((an=v%47,an===an?an:$throwRuntimeError("integer divide by zero"))===0)||((ao=v%53,ao===ao?ao:$throwRuntimeError("integer divide by zero"))===0)){$s=-1;return false;}aq=n.abs.probablyPrimeMillerRabin(m+1>>0,true);$s=2;case 2:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}if(!(aq)){ap=false;$s=1;continue s;}ar=n.abs.probablyPrimeLucas();$s=3;case 3:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}ap=ar;case 1:$s=-1;return ap;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.ProbablyPrime};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.ProbablyPrime=function(m){return this.$val.ProbablyPrime(m);};BX.prototype.probablyPrimeMillerRabin=function(m,n){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;p=BX.nil.sub(o,BY);q=p.trailingZeroBits();r=BX.nil.shr(p,q);s=BX.nil.sub(p,BZ);u=H.New(H.NewSource((t=(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0]),new $Int64(0,t.constructor===Number?t:1))));v=BX.nil;w=BX.nil;x=BX.nil;y=v;z=w;aa=x;ab=s.bitLen();ac=0;case 1:if(!(ac<m)){$s=2;continue;}if((ac===(m-1>>0))&&n){$s=3;continue;}$s=4;continue;case 3:y=y.set(BZ);$s=5;continue;case 4:ad=y.random(u,s,ab);$s=6;case 6:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}y=ad;y=y.add(y,BZ);case 5:ae=z.expNN(y,r,o);$s=7;case 7:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}z=ae;if((z.cmp(BY)===0)||(z.cmp(p)===0)){$s=8;continue;}$s=9;continue;case 8:ac=ac+(1)>>0;$s=1;continue;case 9:af=1;case 10:if(!(af<q)){$s=11;continue;}z=z.mul(z,z);ah=aa.div(z,z,o);$s=12;case 12:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ag=ah;aa=ag[0];z=ag[1];if(z.cmp(p)===0){ac=ac+(1)>>0;$s=1;continue s;}if(z.cmp(BY)===0){$s=-1;return false;}af=af+(1)>>>0;$s=10;continue;case 11:$s=-1;return false;$s=1;continue;case 2:$s=-1;return true;}return;}if($f===undefined){$f={$blk:BX.prototype.probablyPrimeMillerRabin};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.probablyPrimeMillerRabin=function(m,n){return this.$get().probablyPrimeMillerRabin(m,n);};BX.prototype.probablyPrimeLucas=function(){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;if((m.$length===0)||(m.cmp(BY)===0)){$s=-1;return false;}if((((0>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+0])&1)>>>0)===0){$s=-1;return m.cmp(BZ)===0;}n=3;o=new BX([1]);p=BX.nil;q=new BO.ptr(false,o);r=new BO.ptr(false,m);case 1:if(n>10000){$s=3;continue;}$s=4;continue;case 3:s=r.String();$s=5;case 5:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}$panic(new $String("math/big: internal error: cannot find (D/n) = -1 for "+s));case 4:(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0]=(($imul(n,n)>>>0)-4>>>0));t=BT(q,r);$s=6;case 6:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}u=t;if(u===-1){$s=2;continue;}if(u===0){$s=-1;return(m.$length===1)&&((0>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+0])===(n+2>>>0));}if(n===40){$s=7;continue;}$s=8;continue;case 7:v=p.sqrt(m);$s=9;case 9:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}p=v;p=p.mul(p,p);if(p.cmp(m)===0){$s=-1;return false;}case 8:n=n+(1)>>>0;$s=1;continue;case 2:w=BX.nil.add(m,BY);x=(w.trailingZeroBits()>>0);w=w.shr(w,(x>>>0));y=BX.nil.sub(m,BZ);z=BX.nil.setWord(n);aa=BX.nil.setWord(2);ab=BX.nil.setWord(n);ac=BX.nil;ad=w.bitLen();case 10:if(!(ad>=0)){$s=11;continue;}if(!((w.bit((ad>>>0))===0))){$s=12;continue;}$s=13;continue;case 12:p=p.mul(aa,ab);p=p.add(p,m);p=p.sub(p,z);af=ac.div(aa,p,m);$s=15;case 15:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}ae=af;ac=ae[0];aa=ae[1];p=p.mul(ab,ab);p=p.add(p,y);ah=ac.div(ab,p,m);$s=16;case 16:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ag=ah;ac=ag[0];ab=ag[1];$s=14;continue;case 13:p=p.mul(aa,ab);p=p.add(p,m);p=p.sub(p,z);aj=ac.div(ab,p,m);$s=17;case 17:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ai=aj;ac=ai[0];ab=ai[1];p=p.mul(aa,aa);p=p.add(p,y);al=ac.div(aa,p,m);$s=18;case 18:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}ak=al;ac=ak[0];aa=ak[1];case 14:ad=ad-(1)>>0;$s=10;continue;case 11:if((aa.cmp(BZ)===0)||(aa.cmp(y)===0)){$s=19;continue;}$s=20;continue;case 19:am=p.mul(aa,z);an=ac.shl(ab,1);if(am.cmp(an)<0){ao=an;ap=am;am=ao;an=ap;}am=am.sub(am,an);aq=ab;ab=BX.nil;$unused(ab);as=an.div(aq,am,m);$s=21;case 21:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}ar=as;an=ar[0];aq=ar[1];if(aq.$length===0){$s=-1;return true;}case 20:at=0;case 22:if(!(at<(x-1>>0))){$s=23;continue;}if(aa.$length===0){$s=-1;return true;}if((aa.$length===1)&&((0>=aa.$length?($throwRuntimeError("index out of range"),undefined):aa.$array[aa.$offset+0])===2)){$s=-1;return false;}p=p.mul(aa,aa);p=p.sub(p,BZ);av=ac.div(aa,p,m);$s=24;case 24:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}au=av;ac=au[0];aa=au[1];at=at+(1)>>0;$s=22;continue;case 23:$s=-1;return false;}return;}if($f===undefined){$f={$blk:BX.prototype.probablyPrimeLucas};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.probablyPrimeLucas=function(){return this.$get().probablyPrimeLucas();};DP.methods=[{prop:"Sign",name:"Sign",pkg:"",typ:$funcType([],[$Int],false)},{prop:"SetInt64",name:"SetInt64",pkg:"",typ:$funcType([$Int64],[DP],false)},{prop:"SetUint64",name:"SetUint64",pkg:"",typ:$funcType([$Uint64],[DP],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([DP],[DP],false)},{prop:"Bits",name:"Bits",pkg:"",typ:$funcType([],[DO],false)},{prop:"SetBits",name:"SetBits",pkg:"",typ:$funcType([DO],[DP],false)},{prop:"Abs",name:"Abs",pkg:"",typ:$funcType([DP],[DP],false)},{prop:"Neg",name:"Neg",pkg:"",typ:$funcType([DP],[DP],false)},{prop:"Add",name:"Add",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"Sub",name:"Sub",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"Mul",name:"Mul",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"MulRange",name:"MulRange",pkg:"",typ:$funcType([$Int64,$Int64],[DP],false)},{prop:"Binomial",name:"Binomial",pkg:"",typ:$funcType([$Int64,$Int64],[DP],false)},{prop:"Quo",name:"Quo",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"Rem",name:"Rem",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"QuoRem",name:"QuoRem",pkg:"",typ:$funcType([DP,DP,DP],[DP,DP],false)},{prop:"Div",name:"Div",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"Mod",name:"Mod",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"DivMod",name:"DivMod",pkg:"",typ:$funcType([DP,DP,DP],[DP,DP],false)},{prop:"Cmp",name:"Cmp",pkg:"",typ:$funcType([DP],[$Int],false)},{prop:"Int64",name:"Int64",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Uint64",name:"Uint64",pkg:"",typ:$funcType([],[$Uint64],false)},{prop:"SetString",name:"SetString",pkg:"",typ:$funcType([$String,$Int],[DP,$Bool],false)},{prop:"SetBytes",name:"SetBytes",pkg:"",typ:$funcType([DM],[DP],false)},{prop:"Bytes",name:"Bytes",pkg:"",typ:$funcType([],[DM],false)},{prop:"BitLen",name:"BitLen",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Exp",name:"Exp",pkg:"",typ:$funcType([DP,DP,DP],[DP],false)},{prop:"GCD",name:"GCD",pkg:"",typ:$funcType([DP,DP,DP,DP],[DP],false)},{prop:"binaryGCD",name:"binaryGCD",pkg:"math/big",typ:$funcType([DP,DP],[DP],false)},{prop:"Rand",name:"Rand",pkg:"",typ:$funcType([DW,DP],[DP],false)},{prop:"ModInverse",name:"ModInverse",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"modSqrt3Mod4Prime",name:"modSqrt3Mod4Prime",pkg:"math/big",typ:$funcType([DP,DP],[DP],false)},{prop:"modSqrtTonelliShanks",name:"modSqrtTonelliShanks",pkg:"math/big",typ:$funcType([DP,DP],[DP],false)},{prop:"ModSqrt",name:"ModSqrt",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"Lsh",name:"Lsh",pkg:"",typ:$funcType([DP,$Uint],[DP],false)},{prop:"Rsh",name:"Rsh",pkg:"",typ:$funcType([DP,$Uint],[DP],false)},{prop:"Bit",name:"Bit",pkg:"",typ:$funcType([$Int],[$Uint],false)},{prop:"SetBit",name:"SetBit",pkg:"",typ:$funcType([DP,$Int,$Uint],[DP],false)},{prop:"And",name:"And",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"AndNot",name:"AndNot",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"Or",name:"Or",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"Xor",name:"Xor",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"Not",name:"Not",pkg:"",typ:$funcType([DP],[DP],false)},{prop:"Sqrt",name:"Sqrt",pkg:"",typ:$funcType([DP],[DP],false)},{prop:"Text",name:"Text",pkg:"",typ:$funcType([$Int],[$String],false)},{prop:"Append",name:"Append",pkg:"",typ:$funcType([DM,$Int],[DM],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Format",name:"Format",pkg:"",typ:$funcType([A.State,$Int32],[],false)},{prop:"scan",name:"scan",pkg:"math/big",typ:$funcType([C.ByteScanner,$Int],[DP,$Int,$error],false)},{prop:"Scan",name:"Scan",pkg:"",typ:$funcType([A.ScanState,$Int32],[$error],false)},{prop:"GobEncode",name:"GobEncode",pkg:"",typ:$funcType([],[DM,$error],false)},{prop:"GobDecode",name:"GobDecode",pkg:"",typ:$funcType([DM],[$error],false)},{prop:"MarshalText",name:"MarshalText",pkg:"",typ:$funcType([],[DM,$error],false)},{prop:"UnmarshalText",name:"UnmarshalText",pkg:"",typ:$funcType([DM],[$error],false)},{prop:"MarshalJSON",name:"MarshalJSON",pkg:"",typ:$funcType([],[DM,$error],false)},{prop:"UnmarshalJSON",name:"UnmarshalJSON",pkg:"",typ:$funcType([DM],[$error],false)},{prop:"ProbablyPrime",name:"ProbablyPrime",pkg:"",typ:$funcType([$Int],[$Bool],false)}];BW.methods=[{prop:"ReadByte",name:"ReadByte",pkg:"",typ:$funcType([],[$Uint8,$error],false)},{prop:"UnreadByte",name:"UnreadByte",pkg:"",typ:$funcType([],[$error],false)}];BX.methods=[{prop:"clear",name:"clear",pkg:"math/big",typ:$funcType([],[],false)},{prop:"norm",name:"norm",pkg:"math/big",typ:$funcType([],[BX],false)},{prop:"make",name:"make",pkg:"math/big",typ:$funcType([$Int],[BX],false)},{prop:"setWord",name:"setWord",pkg:"math/big",typ:$funcType([X],[BX],false)},{prop:"setUint64",name:"setUint64",pkg:"math/big",typ:$funcType([$Uint64],[BX],false)},{prop:"set",name:"set",pkg:"math/big",typ:$funcType([BX],[BX],false)},{prop:"add",name:"add",pkg:"math/big",typ:$funcType([BX,BX],[BX],false)},{prop:"sub",name:"sub",pkg:"math/big",typ:$funcType([BX,BX],[BX],false)},{prop:"cmp",name:"cmp",pkg:"math/big",typ:$funcType([BX],[$Int],false)},{prop:"mulAddWW",name:"mulAddWW",pkg:"math/big",typ:$funcType([BX,X,X],[BX],false)},{prop:"montgomery",name:"montgomery",pkg:"math/big",typ:$funcType([BX,BX,BX,X,$Int],[BX],false)},{prop:"mul",name:"mul",pkg:"math/big",typ:$funcType([BX,BX],[BX],false)},{prop:"mulRange",name:"mulRange",pkg:"math/big",typ:$funcType([$Uint64,$Uint64],[BX],false)},{prop:"divW",name:"divW",pkg:"math/big",typ:$funcType([BX,X],[BX,X],false)},{prop:"div",name:"div",pkg:"math/big",typ:$funcType([BX,BX,BX],[BX,BX],false)},{prop:"divLarge",name:"divLarge",pkg:"math/big",typ:$funcType([BX,BX,BX],[BX,BX],false)},{prop:"bitLen",name:"bitLen",pkg:"math/big",typ:$funcType([],[$Int],false)},{prop:"trailingZeroBits",name:"trailingZeroBits",pkg:"math/big",typ:$funcType([],[$Uint],false)},{prop:"shl",name:"shl",pkg:"math/big",typ:$funcType([BX,$Uint],[BX],false)},{prop:"shr",name:"shr",pkg:"math/big",typ:$funcType([BX,$Uint],[BX],false)},{prop:"setBit",name:"setBit",pkg:"math/big",typ:$funcType([BX,$Uint,$Uint],[BX],false)},{prop:"bit",name:"bit",pkg:"math/big",typ:$funcType([$Uint],[$Uint],false)},{prop:"sticky",name:"sticky",pkg:"math/big",typ:$funcType([$Uint],[$Uint],false)},{prop:"and",name:"and",pkg:"math/big",typ:$funcType([BX,BX],[BX],false)},{prop:"andNot",name:"andNot",pkg:"math/big",typ:$funcType([BX,BX],[BX],false)},{prop:"or",name:"or",pkg:"math/big",typ:$funcType([BX,BX],[BX],false)},{prop:"xor",name:"xor",pkg:"math/big",typ:$funcType([BX,BX],[BX],false)},{prop:"modW",name:"modW",pkg:"math/big",typ:$funcType([X],[X],false)},{prop:"random",name:"random",pkg:"math/big",typ:$funcType([DW,BX,$Int],[BX],false)},{prop:"expNN",name:"expNN",pkg:"math/big",typ:$funcType([BX,BX,BX],[BX],false)},{prop:"expNNWindowed",name:"expNNWindowed",pkg:"math/big",typ:$funcType([BX,BX,BX],[BX],false)},{prop:"expNNMontgomery",name:"expNNMontgomery",pkg:"math/big",typ:$funcType([BX,BX,BX],[BX],false)},{prop:"bytes",name:"bytes",pkg:"math/big",typ:$funcType([DM],[$Int],false)},{prop:"setBytes",name:"setBytes",pkg:"math/big",typ:$funcType([DM],[BX],false)},{prop:"sqrt",name:"sqrt",pkg:"math/big",typ:$funcType([BX],[BX],false)},{prop:"scan",name:"scan",pkg:"math/big",typ:$funcType([C.ByteScanner,$Int,$Bool],[BX,$Int,$Int,$error],false)},{prop:"utoa",name:"utoa",pkg:"math/big",typ:$funcType([$Int],[DM],false)},{prop:"itoa",name:"itoa",pkg:"math/big",typ:$funcType([$Bool,$Int],[DM],false)},{prop:"convertWords",name:"convertWords",pkg:"math/big",typ:$funcType([DM,X,$Int,X,DU],[],false)},{prop:"expWW",name:"expWW",pkg:"math/big",typ:$funcType([X,X],[BX],false)},{prop:"probablyPrimeMillerRabin",name:"probablyPrimeMillerRabin",pkg:"math/big",typ:$funcType([$Int,$Bool],[$Bool],false)},{prop:"probablyPrimeLucas",name:"probablyPrimeLucas",pkg:"math/big",typ:$funcType([],[$Bool],false)}];BO.init("math/big",[{prop:"neg",name:"neg",exported:false,typ:$Bool,tag:""},{prop:"abs",name:"abs",exported:false,typ:BX,tag:""}]);BW.init("",[{prop:"ScanState",name:"",exported:true,typ:A.ScanState,tag:""}]);BX.init(X);CU.init("math/big",[{prop:"bbb",name:"bbb",exported:false,typ:BX,tag:""},{prop:"nbits",name:"nbits",exported:false,typ:$Int,tag:""},{prop:"ndigits",name:"ndigits",exported:false,typ:$Int,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=F.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}CM=new J.Pool.ptr(DI.nil,$throwNilPointerError);CV=new DK.ptr(new J.Mutex.ptr(false),DJ.zero());BY=new BX([1]);BP=new BO.ptr(false,BY);BZ=new BX([2]);CE=40;CN=$toNativeArray($kindUint8,[0,1,28,2,29,14,24,3,30,22,20,15,25,17,4,8,31,27,13,23,21,19,16,7,26,12,18,6,11,5,10,9]);CO=$toNativeArray($kindUint8,[0,1,56,2,57,49,28,3,61,58,42,50,38,29,17,4,62,47,59,36,45,43,51,22,53,39,33,30,24,18,12,5,63,55,48,27,60,41,37,16,46,35,44,21,52,32,23,11,54,26,40,15,34,20,31,10,25,14,19,9,13,8,7,6]);CT=8;}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["crypto/rand"]=(function(){var $pkg={},$init,A,B,C,D,F,L,N,I,E,G;A=$packages["errors"];B=$packages["github.com/gopherjs/gopherjs/js"];C=$packages["io"];D=$packages["math/big"];F=$pkg.rngReader=$newType(0,$kindStruct,"rand.rngReader",true,"crypto/rand",false,function(){this.$val=this;if(arguments.length===0){return;}});L=$sliceType($Uint8);N=$ptrType(F);E=function(){var $ptr;$pkg.Reader=new F.ptr();};F.ptr.prototype.Read=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;b=0;c=$ifaceNil;d=this;e=a.$array;f=$parseInt(a.$offset)>>0;g=$global.crypto;if(g===undefined){g=$global.msCrypto;}if(!(g===undefined)){if(!(g.getRandomValues===undefined)){b=a.$length;if(b>65536){b=65536;}g.getRandomValues(e.subarray(f,f+b>>0));h=b;i=$ifaceNil;b=h;c=i;return[b,c];}}j=$global.require;if(!(j===undefined)){k=j($externalize("crypto",$String)).randomBytes;if(!(k===undefined)){e.set(k(a.$length),f);l=a.$length;m=$ifaceNil;b=l;c=m;return[b,c];}}n=0;o=A.New("crypto/rand not available in this environment");b=n;c=o;return[b,c];};F.prototype.Read=function(a){return this.$val.Read(a);};G=function(a){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=0;c=$ifaceNil;e=C.ReadFull($pkg.Reader,a);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;b=d[0];c=d[1];$s=-1;return[b,c];}return;}if($f===undefined){$f={$blk:G};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Read=G;N.methods=[{prop:"Read",name:"Read",pkg:"",typ:$funcType([L],[$Int,$error],false)}];F.init("",[]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$pkg.Reader=$ifaceNil;I=new D.Int.ptr(false,D.nat.nil).SetUint64(new $Uint64(3793877372,820596253));E();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["gopkg.in/dedis/crypto.v0/random"]=(function(){var $pkg={},$init,A,B,C,D,O,P,Q,R,E,L,M,N;A=$packages["crypto/cipher"];B=$packages["crypto/rand"];C=$packages["encoding/binary"];D=$packages["math/big"];O=$pkg.randstream=$newType(0,$kindStruct,"random.randstream",true,"gopkg.in/dedis/crypto.v0/random",false,function(){this.$val=this;if(arguments.length===0){return;}});P=$sliceType($Uint8);Q=$ptrType(D.Int);R=$ptrType(O);E=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=$makeSlice(P,(d=((a+7>>>0))/8,(d===d&&d!==1/0&&d!==-1/0)?d>>>0:$throwRuntimeError("integer divide by zero")));$r=c.XORKeyStream(e,e);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=(a&7)>>>0;if(!((f===0))){(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]=(((0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0])&((~(((g=f,g<32?(255<<g):0)<<24>>>24))<<24>>>24)))>>>0));}if(b){if(!((f===0))){(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]=(((0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0])|(((h=((f-1>>>0)),h<32?(1<<h):0)<<24>>>24)))>>>0));}else{(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]=(((0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0])|(128))>>>0));}}$s=-1;return e;}return;}if($f===undefined){$f={$blk:E};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Bits=E;L=function(a,b){var $ptr,a,b,c,d,e,f,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=(a.BitLen()>>>0);d=new D.Int.ptr(false,D.nat.nil);case 1:e=E(c,false,b);$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=d.SetBytes(e);$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;if(d.Sign()>0&&d.Cmp(a)<0){$s=-1;return d;}$s=1;continue;case 2:$s=-1;return Q.nil;}return;}if($f===undefined){$f={$blk:L};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Int=L;M=function(a,b){var $ptr,a,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=$makeSlice(P,a);$r=b.XORKeyStream(c,c);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return c;}return;}if($f===undefined){$f={$blk:M};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Bytes=M;N=function(a,b){var $ptr,a,b,c,d,e,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=P.nil;case 1:d=M(a,b);$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;e=c;f=0;while(true){if(!(f<e.$length)){break;}g=((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]);if(!((g===0))){$s=-1;return c;}f++;}$s=1;continue;case 2:$s=-1;return c;}return;}if($f===undefined){$f={$blk:N};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};$pkg.NonZeroBytes=N;O.ptr.prototype.XORKeyStream=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;d=a.$length;if(!((b.$length===d))){$panic(new $String("XORKeyStream: mismatched buffer lengths"));}e=$makeSlice(P,d);g=B.Read(e);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;h=f[0];i=f[1];if(!($interfaceIsEqual(i,$ifaceNil))){$panic(i);}if(h<e.$length){$panic(new $String("short read on infinite random stream!?"));}j=0;while(true){if(!(j<d)){break;}((j<0||j>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+j]=((((j<0||j>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+j])^((j<0||j>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+j]))<<24>>>24));j=j+(1)>>0;}$s=-1;return;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.XORKeyStream};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};O.prototype.XORKeyStream=function(a,b){return this.$val.XORKeyStream(a,b);};R.methods=[{prop:"XORKeyStream",name:"XORKeyStream",pkg:"",typ:$funcType([P,P],[],false)}];O.init("",[]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$pkg.Stream=new O.ptr();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["regexp/syntax"]=(function(){var $pkg={},$init,E,B,F,C,A,D,G,H,I,M,N,O,P,Z,AM,BK,BL,BN,BQ,BW,BX,CB,CC,CD,CE,CF,CG,CH,CI,CJ,CK,CL,CM,CN,CO,CP,CQ,CR,CS,K,L,AA,AR,AS,AT,AU,AV,AW,AX,AY,AZ,BA,BB,BC,BD,BE,BF,BG,BH,BI,BJ,BM,J,Q,R,S,T,U,V,W,X,Y,AB,AC,AD,AE,AF,AG,AH,AI,AJ,AK,AL,AN,AO,AP,AQ,BO,BP,BR,BS,BT,BU,BV,BY,BZ,CA;E=$packages["bytes"];B=$packages["sort"];F=$packages["strconv"];C=$packages["strings"];A=$packages["unicode"];D=$packages["unicode/utf8"];G=$pkg.patchList=$newType(4,$kindUint32,"syntax.patchList",true,"regexp/syntax",false,null);H=$pkg.frag=$newType(0,$kindStruct,"syntax.frag",true,"regexp/syntax",false,function(i_,out_){this.$val=this;if(arguments.length===0){this.i=0;this.out=0;return;}this.i=i_;this.out=out_;});I=$pkg.compiler=$newType(0,$kindStruct,"syntax.compiler",true,"regexp/syntax",false,function(p_){this.$val=this;if(arguments.length===0){this.p=CF.nil;return;}this.p=p_;});M=$pkg.Error=$newType(0,$kindStruct,"syntax.Error",true,"regexp/syntax",true,function(Code_,Expr_){this.$val=this;if(arguments.length===0){this.Code="";this.Expr="";return;}this.Code=Code_;this.Expr=Expr_;});N=$pkg.ErrorCode=$newType(8,$kindString,"syntax.ErrorCode",true,"regexp/syntax",true,null);O=$pkg.Flags=$newType(2,$kindUint16,"syntax.Flags",true,"regexp/syntax",true,null);P=$pkg.parser=$newType(0,$kindStruct,"syntax.parser",true,"regexp/syntax",false,function(flags_,stack_,free_,numCap_,wholeRegexp_,tmpClass_){this.$val=this;if(arguments.length===0){this.flags=0;this.stack=CI.nil;this.free=CH.nil;this.numCap=0;this.wholeRegexp="";this.tmpClass=CB.nil;return;}this.flags=flags_;this.stack=stack_;this.free=free_;this.numCap=numCap_;this.wholeRegexp=wholeRegexp_;this.tmpClass=tmpClass_;});Z=$pkg.charGroup=$newType(0,$kindStruct,"syntax.charGroup",true,"regexp/syntax",false,function(sign_,class$1_){this.$val=this;if(arguments.length===0){this.sign=0;this.class$1=CB.nil;return;}this.sign=sign_;this.class$1=class$1_;});AM=$pkg.ranges=$newType(0,$kindStruct,"syntax.ranges",true,"regexp/syntax",false,function(p_){this.$val=this;if(arguments.length===0){this.p=CL.nil;return;}this.p=p_;});BK=$pkg.Prog=$newType(0,$kindStruct,"syntax.Prog",true,"regexp/syntax",true,function(Inst_,Start_,NumCap_){this.$val=this;if(arguments.length===0){this.Inst=CG.nil;this.Start=0;this.NumCap=0;return;}this.Inst=Inst_;this.Start=Start_;this.NumCap=NumCap_;});BL=$pkg.InstOp=$newType(1,$kindUint8,"syntax.InstOp",true,"regexp/syntax",true,null);BN=$pkg.EmptyOp=$newType(1,$kindUint8,"syntax.EmptyOp",true,"regexp/syntax",true,null);BQ=$pkg.Inst=$newType(0,$kindStruct,"syntax.Inst",true,"regexp/syntax",true,function(Op_,Out_,Arg_,Rune_){this.$val=this;if(arguments.length===0){this.Op=0;this.Out=0;this.Arg=0;this.Rune=CB.nil;return;}this.Op=Op_;this.Out=Out_;this.Arg=Arg_;this.Rune=Rune_;});BW=$pkg.Regexp=$newType(0,$kindStruct,"syntax.Regexp",true,"regexp/syntax",true,function(Op_,Flags_,Sub_,Sub0_,Rune_,Rune0_,Min_,Max_,Cap_,Name_){this.$val=this;if(arguments.length===0){this.Op=0;this.Flags=0;this.Sub=CI.nil;this.Sub0=CJ.zero();this.Rune=CB.nil;this.Rune0=CK.zero();this.Min=0;this.Max=0;this.Cap=0;this.Name="";return;}this.Op=Op_;this.Flags=Flags_;this.Sub=Sub_;this.Sub0=Sub0_;this.Rune=Rune_;this.Rune0=Rune0_;this.Min=Min_;this.Max=Max_;this.Cap=Cap_;this.Name=Name_;});BX=$pkg.Op=$newType(1,$kindUint8,"syntax.Op",true,"regexp/syntax",true,null);CB=$sliceType($Int32);CC=$sliceType(A.Range16);CD=$sliceType(A.Range32);CE=$sliceType($String);CF=$ptrType(BK);CG=$sliceType(BQ);CH=$ptrType(BW);CI=$sliceType(CH);CJ=$arrayType(CH,1);CK=$arrayType($Int32,2);CL=$ptrType(CB);CM=$ptrType(A.RangeTable);CN=$sliceType($Uint8);CO=$arrayType($Uint8,64);CP=$ptrType(I);CQ=$ptrType(M);CR=$ptrType(P);CS=$ptrType(BQ);G.prototype.next=function(a){var $ptr,a,b,c,d,e;b=this.$val;e=(c=a.Inst,d=b>>>1>>>0,((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]));if(((b&1)>>>0)===0){return(e.Out>>>0);}return(e.Arg>>>0);};$ptrType(G).prototype.next=function(a){return new G(this.$get()).next(a);};G.prototype.patch=function(a,b){var $ptr,a,b,c,d,e,f;c=this.$val;while(true){if(!(!((c===0)))){break;}f=(d=a.Inst,e=c>>>1>>>0,((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]));if(((c&1)>>>0)===0){c=(f.Out>>>0);f.Out=b;}else{c=(f.Arg>>>0);f.Arg=b;}}};$ptrType(G).prototype.patch=function(a,b){return new G(this.$get()).patch(a,b);};G.prototype.append=function(a,b){var $ptr,a,b,c,d,e,f,g,h;c=this.$val;if(c===0){return b;}if(b===0){return c;}d=c;while(true){e=new G(d).next(a);if(e===0){break;}d=e;}h=(f=a.Inst,g=d>>>1>>>0,((g<0||g>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+g]));if(((d&1)>>>0)===0){h.Out=(b>>>0);}else{h.Arg=(b>>>0);}return c;};$ptrType(G).prototype.append=function(a,b){return new G(this.$get()).append(a,b);};J=function(a){var $ptr,a,b,c;b=new I.ptr(CF.nil);b.init();c=$clone(b.compile(a),H);new G(c.out).patch(b.p,b.inst(4).i);b.p.Start=(c.i>>0);return[b.p,$ifaceNil];};$pkg.Compile=J;I.ptr.prototype.init=function(){var $ptr,a;a=this;a.p=new BK.ptr(CG.nil,0,0);a.p.NumCap=2;a.inst(5);};I.prototype.init=function(){return this.$val.init();};I.ptr.prototype.compile=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x;b=this;c=a.Op;if(c===(1)){return b.fail();}else if(c===(2)){return b.nop();}else if(c===(3)){if(a.Rune.$length===0){return b.nop();}d=new H.ptr(0,0);e=a.Rune;f=0;while(true){if(!(f<e.$length)){break;}g=f;h=$clone(b.rune($subslice(a.Rune,g,(g+1>>0)),a.Flags),H);if(g===0){H.copy(d,h);}else{H.copy(d,b.cat($clone(d,H),$clone(h,H)));}f++;}return d;}else if(c===(4)){return b.rune(a.Rune,a.Flags);}else if(c===(5)){return b.rune(K,0);}else if(c===(6)){return b.rune(L,0);}else if(c===(7)){return b.empty(1);}else if(c===(8)){return b.empty(2);}else if(c===(9)){return b.empty(4);}else if(c===(10)){return b.empty(8);}else if(c===(11)){return b.empty(16);}else if(c===(12)){return b.empty(32);}else if(c===(13)){i=$clone(b.cap(((a.Cap<<1>>0)>>>0)),H);k=$clone(b.compile((j=a.Sub,(0>=j.$length?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+0]))),H);l=$clone(b.cap((((a.Cap<<1>>0)|1)>>>0)),H);return b.cat($clone(b.cat($clone(i,H),$clone(k,H)),H),$clone(l,H));}else if(c===(14)){return b.star($clone(b.compile((m=a.Sub,(0>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+0]))),H),!((((a.Flags&32)>>>0)===0)));}else if(c===(15)){return b.plus($clone(b.compile((n=a.Sub,(0>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+0]))),H),!((((a.Flags&32)>>>0)===0)));}else if(c===(16)){return b.quest($clone(b.compile((o=a.Sub,(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0]))),H),!((((a.Flags&32)>>>0)===0)));}else if(c===(18)){if(a.Sub.$length===0){return b.nop();}p=new H.ptr(0,0);q=a.Sub;r=0;while(true){if(!(r<q.$length)){break;}s=r;t=((r<0||r>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+r]);if(s===0){H.copy(p,b.compile(t));}else{H.copy(p,b.cat($clone(p,H),$clone(b.compile(t),H)));}r++;}return p;}else if(c===(19)){u=new H.ptr(0,0);v=a.Sub;w=0;while(true){if(!(w<v.$length)){break;}x=((w<0||w>=v.$length)?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+w]);H.copy(u,b.alt($clone(u,H),$clone(b.compile(x),H)));w++;}return u;}$panic(new $String("regexp: unhandled case in compile"));};I.prototype.compile=function(a){return this.$val.compile(a);};I.ptr.prototype.inst=function(a){var $ptr,a,b,c;b=this;c=new H.ptr((b.p.Inst.$length>>>0),0);b.p.Inst=$append(b.p.Inst,new BQ.ptr(a,0,0,CB.nil));return c;};I.prototype.inst=function(a){return this.$val.inst(a);};I.ptr.prototype.nop=function(){var $ptr,a,b;a=this;b=$clone(a.inst(6),H);b.out=((b.i<<1>>>0)>>>0);return b;};I.prototype.nop=function(){return this.$val.nop();};I.ptr.prototype.fail=function(){var $ptr,a;a=this;return new H.ptr(0,0);};I.prototype.fail=function(){return this.$val.fail();};I.ptr.prototype.cap=function(a){var $ptr,a,b,c,d,e;b=this;c=$clone(b.inst(2),H);c.out=((c.i<<1>>>0)>>>0);(d=b.p.Inst,e=c.i,((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e])).Arg=a;if(b.p.NumCap<((a>>0)+1>>0)){b.p.NumCap=(a>>0)+1>>0;}return c;};I.prototype.cap=function(a){return this.$val.cap(a);};I.ptr.prototype.cat=function(a,b){var $ptr,a,b,c;c=this;if((a.i===0)||(b.i===0)){return new H.ptr(0,0);}new G(a.out).patch(c.p,b.i);return new H.ptr(a.i,b.out);};I.prototype.cat=function(a,b){return this.$val.cat(a,b);};I.ptr.prototype.alt=function(a,b){var $ptr,a,b,c,d,e,f,g;c=this;if(a.i===0){return b;}if(b.i===0){return a;}d=$clone(c.inst(0),H);g=(e=c.p.Inst,f=d.i,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]));g.Out=a.i;g.Arg=b.i;d.out=new G(a.out).append(c.p,b.out);return d;};I.prototype.alt=function(a,b){return this.$val.alt(a,b);};I.ptr.prototype.quest=function(a,b){var $ptr,a,b,c,d,e,f,g;c=this;d=$clone(c.inst(0),H);g=(e=c.p.Inst,f=d.i,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]));if(b){g.Arg=a.i;d.out=((d.i<<1>>>0)>>>0);}else{g.Out=a.i;d.out=((((d.i<<1>>>0)|1)>>>0)>>>0);}d.out=new G(d.out).append(c.p,a.out);return d;};I.prototype.quest=function(a,b){return this.$val.quest(a,b);};I.ptr.prototype.star=function(a,b){var $ptr,a,b,c,d,e,f,g;c=this;d=$clone(c.inst(0),H);g=(e=c.p.Inst,f=d.i,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]));if(b){g.Arg=a.i;d.out=((d.i<<1>>>0)>>>0);}else{g.Out=a.i;d.out=((((d.i<<1>>>0)|1)>>>0)>>>0);}new G(a.out).patch(c.p,d.i);return d;};I.prototype.star=function(a,b){return this.$val.star(a,b);};I.ptr.prototype.plus=function(a,b){var $ptr,a,b,c;c=this;return new H.ptr(a.i,c.star($clone(a,H),b).out);};I.prototype.plus=function(a,b){return this.$val.plus(a,b);};I.ptr.prototype.empty=function(a){var $ptr,a,b,c,d,e;b=this;c=$clone(b.inst(3),H);(d=b.p.Inst,e=c.i,((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e])).Arg=(a>>>0);c.out=((c.i<<1>>>0)>>>0);return c;};I.prototype.empty=function(a){return this.$val.empty(a);};I.ptr.prototype.rune=function(a,b){var $ptr,a,b,c,d,e,f,g;c=this;d=$clone(c.inst(7),H);g=(e=c.p.Inst,f=d.i,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]));g.Rune=a;b=(b&(1))>>>0;if(!((a.$length===1))||(A.SimpleFold((0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]))===(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]))){b=(b&~(1))<<16>>>16;}g.Arg=(b>>>0);d.out=((d.i<<1>>>0)>>>0);if((((b&1)>>>0)===0)&&((a.$length===1)||(a.$length===2)&&((0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0])===(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1])))){g.Op=8;}else if((a.$length===2)&&((0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0])===0)&&((1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1])===1114111)){g.Op=9;}else if((a.$length===4)&&((0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0])===0)&&((1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1])===9)&&((2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2])===11)&&((3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3])===1114111)){g.Op=10;}return d;};I.prototype.rune=function(a,b){return this.$val.rune(a,b);};M.ptr.prototype.Error=function(){var $ptr,a;a=this;return"error parsing regexp: "+new N(a.Code).String()+": `"+a.Expr+"`";};M.prototype.Error=function(){return this.$val.Error();};N.prototype.String=function(){var $ptr,a;a=this.$val;return a;};$ptrType(N).prototype.String=function(){return new N(this.$get()).String();};P.ptr.prototype.newRegexp=function(a){var $ptr,a,b,c;b=this;c=b.free;if(!(c===CH.nil)){b.free=c.Sub0[0];BW.copy(c,new BW.ptr(0,0,CI.nil,CJ.zero(),CB.nil,CK.zero(),0,0,0,""));}else{c=new BW.ptr(0,0,CI.nil,CJ.zero(),CB.nil,CK.zero(),0,0,0,"");}c.Op=a;return c;};P.prototype.newRegexp=function(a){return this.$val.newRegexp(a);};P.ptr.prototype.reuse=function(a){var $ptr,a,b;b=this;a.Sub0[0]=b.free;b.free=a;};P.prototype.reuse=function(a){return this.$val.reuse(a);};P.ptr.prototype.push=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t;b=this;if((a.Op===4)&&(a.Rune.$length===2)&&((c=a.Rune,(0>=c.$length?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+0]))===(d=a.Rune,(1>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+1])))){if(b.maybeConcat((s=a.Rune,(0>=s.$length?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+0])),(b.flags&~1)<<16>>>16)){return CH.nil;}a.Op=3;a.Rune=$subslice(a.Rune,0,1);a.Flags=(b.flags&~1)<<16>>>16;}else if((a.Op===4)&&(a.Rune.$length===4)&&((e=a.Rune,(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]))===(f=a.Rune,(1>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+1])))&&((g=a.Rune,(2>=g.$length?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+2]))===(h=a.Rune,(3>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+3])))&&(A.SimpleFold((i=a.Rune,(0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0])))===(j=a.Rune,(2>=j.$length?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+2])))&&(A.SimpleFold((k=a.Rune,(2>=k.$length?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+2])))===(l=a.Rune,(0>=l.$length?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+0])))||(a.Op===4)&&(a.Rune.$length===2)&&(((m=a.Rune,(0>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+0]))+1>>0)===(n=a.Rune,(1>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+1])))&&(A.SimpleFold((o=a.Rune,(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0])))===(p=a.Rune,(1>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+1])))&&(A.SimpleFold((q=a.Rune,(1>=q.$length?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+1])))===(r=a.Rune,(0>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+0])))){if(b.maybeConcat((t=a.Rune,(0>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+0])),(b.flags|1)>>>0)){return CH.nil;}a.Op=3;a.Rune=$subslice(a.Rune,0,1);a.Flags=(b.flags|1)>>>0;}else{b.maybeConcat(-1,0);}b.stack=$append(b.stack,a);return a;};P.prototype.push=function(a){return this.$val.push(a);};P.ptr.prototype.maybeConcat=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k;c=this;d=c.stack.$length;if(d<2){return false;}g=(e=c.stack,f=d-1>>0,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]));j=(h=c.stack,i=d-2>>0,((i<0||i>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+i]));if(!((g.Op===3))||!((j.Op===3))||!((((g.Flags&1)>>>0)===((j.Flags&1)>>>0)))){return false;}j.Rune=$appendSlice(j.Rune,g.Rune);if(a>=0){g.Rune=$subslice(new CB(g.Rune0),0,1);(k=g.Rune,(0>=k.$length?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+0]=a));g.Flags=b;return true;}c.stack=$subslice(c.stack,0,(d-1>>0));c.reuse(g);return false;};P.prototype.maybeConcat=function(a,b){return this.$val.maybeConcat(a,b);};P.ptr.prototype.newLiteral=function(a,b){var $ptr,a,b,c,d;c=this;d=c.newRegexp(3);d.Flags=b;if(!((((b&1)>>>0)===0))){a=Q(a);}d.Rune0[0]=a;d.Rune=$subslice(new CB(d.Rune0),0,1);return d;};P.prototype.newLiteral=function(a,b){return this.$val.newLiteral(a,b);};Q=function(a){var $ptr,a,b,c;if(a<65||a>125251){return a;}b=a;c=a;a=A.SimpleFold(a);while(true){if(!(!((a===c)))){break;}if(b>a){b=a;}a=A.SimpleFold(a);}return b;};P.ptr.prototype.literal=function(a){var $ptr,a,b;b=this;b.push(b.newLiteral(a,b.flags));};P.prototype.literal=function(a){return this.$val.literal(a);};P.ptr.prototype.op=function(a){var $ptr,a,b,c;b=this;c=b.newRegexp(a);c.Flags=b.flags;return b.push(c);};P.prototype.op=function(a){return this.$val.op(a);};P.ptr.prototype.repeat=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p;g=this;h=g.flags;if(!((((g.flags&64)>>>0)===0))){if(e.length>0&&(e.charCodeAt(0)===63)){e=$substring(e,1);h=(h^(32))<<16>>>16;}if(!(f==="")){return["",new M.ptr("invalid nested repetition operator",$substring(f,0,(f.length-e.length>>0)))];}}i=g.stack.$length;if(i===0){return["",new M.ptr("missing argument to repetition operator",$substring(d,0,(d.length-e.length>>0)))];}l=(j=g.stack,k=i-1>>0,((k<0||k>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+k]));if(l.Op>=128){return["",new M.ptr("missing argument to repetition operator",$substring(d,0,(d.length-e.length>>0)))];}m=g.newRegexp(a);m.Min=b;m.Max=c;m.Flags=h;m.Sub=$subslice(new CI(m.Sub0),0,1);(n=m.Sub,(0>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+0]=l));(o=g.stack,p=i-1>>0,((p<0||p>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+p]=m));if((a===17)&&(b>=2||c>=2)&&!R(m,1000)){return["",new M.ptr("invalid repeat count",$substring(d,0,(d.length-e.length>>0)))];}return[e,$ifaceNil];};P.prototype.repeat=function(a,b,c,d,e,f){return this.$val.repeat(a,b,c,d,e,f);};R=function(a,b){var $ptr,a,b,c,d,e,f,g;if(a.Op===17){c=a.Max;if(c===0){return true;}if(c<0){c=a.Min;}if(c>b){return false;}if(c>0){b=(d=b/(c),(d===d&&d!==1/0&&d!==-1/0)?d>>0:$throwRuntimeError("integer divide by zero"));}}e=a.Sub;f=0;while(true){if(!(f<e.$length)){break;}g=((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]);if(!R(g,b)){return false;}f++;}return true;};P.ptr.prototype.concat=function(){var $ptr,a,b,c,d,e,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;a.maybeConcat(-1,0);b=a.stack.$length;while(true){if(!(b>0&&(c=a.stack,d=b-1>>0,((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d])).Op<128)){break;}b=b-(1)>>0;}e=$subslice(a.stack,b);a.stack=$subslice(a.stack,0,b);if(e.$length===0){$s=-1;return a.push(a.newRegexp(2));}f=a.collapse(e,18);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=a.push(f);$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$s=-1;return g;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.concat};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.concat=function(){return this.$val.concat();};P.ptr.prototype.alternate=function(){var $ptr,a,b,c,d,e,f,g,h,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.stack.$length;while(true){if(!(b>0&&(c=a.stack,d=b-1>>0,((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d])).Op<128)){break;}b=b-(1)>>0;}e=$subslice(a.stack,b);a.stack=$subslice(a.stack,0,b);if(e.$length>0){$s=1;continue;}$s=2;continue;case 1:$r=S((f=e.$length-1>>0,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f])));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:if(e.$length===0){$s=-1;return a.push(a.newRegexp(1));}g=a.collapse(e,19);$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=a.push(g);$s=5;case 5:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=-1;return h;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.alternate};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.alternate=function(){return this.$val.alternate();};S=function(a){var $ptr,a,b,c,d,e,f,g,h,i,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=a.Op;if(b===(4)){$s=2;continue;}$s=3;continue;case 2:c=AC((a.$ptr_Rune||(a.$ptr_Rune=new CL(function(){return this.$target.Rune;},function($v){this.$target.Rune=$v;},a))));$s=4;case 4:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}a.Rune=c;if((a.Rune.$length===2)&&((d=a.Rune,(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0]))===0)&&((e=a.Rune,(1>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+1]))===1114111)){a.Rune=CB.nil;a.Op=6;$s=-1;return;}if((a.Rune.$length===4)&&((f=a.Rune,(0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0]))===0)&&((g=a.Rune,(1>=g.$length?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+1]))===9)&&((h=a.Rune,(2>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+2]))===11)&&((i=a.Rune,(3>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+3]))===1114111)){a.Rune=CB.nil;a.Op=5;$s=-1;return;}if((a.Rune.$capacity-a.Rune.$length>>0)>100){a.Rune=$appendSlice($subslice(new CB(a.Rune0),0,0),a.Rune);}case 3:case 1:$s=-1;return;}return;}if($f===undefined){$f={$blk:S};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};P.ptr.prototype.collapse=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;if(a.$length===1){$s=-1;return(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]);}d=c.newRegexp(b);d.Sub=$subslice(new CI(d.Sub0),0,0);e=a;f=0;while(true){if(!(f<e.$length)){break;}g=((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]);if(g.Op===b){d.Sub=$appendSlice(d.Sub,g.Sub);c.reuse(g);}else{d.Sub=$append(d.Sub,g);}f++;}if(b===19){$s=1;continue;}$s=2;continue;case 1:h=c.factor(d.Sub,d.Flags);$s=3;case 3:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}d.Sub=h;if(d.Sub.$length===1){i=d;d=(j=d.Sub,(0>=j.$length?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+0]));c.reuse(i);}case 2:$s=-1;return d;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.collapse};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.collapse=function(a,b){return this.$val.collapse(a,b);};P.ptr.prototype.factor=function(a,b){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;if(a.$length<2){$s=-1;return a;}d=CB.nil;e=0;f=0;g=$subslice(a,0,0);h=0;case 1:if(!(h<=a.$length)){$s=2;continue;}i=CB.nil;j=0;if(h<a.$length){$s=3;continue;}$s=4;continue;case 3:k=c.leadingString(((h<0||h>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+h]));i=k[0];j=k[1];if(j===e){l=0;while(true){if(!(l<d.$length&&l<i.$length&&(((l<0||l>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+l])===((l<0||l>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+l])))){break;}l=l+(1)>>0;}if(l>0){d=$subslice(d,0,l);h=h+(1)>>0;$s=1;continue;}}case 4:if(h===f){$s=5;continue;}if(h===(f+1>>0)){$s=6;continue;}$s=7;continue;case 5:$s=8;continue;case 6:g=$append(g,((f<0||f>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+f]));$s=8;continue;case 7:m=c.newRegexp(3);m.Flags=e;m.Rune=$appendSlice($subslice(m.Rune,0,0),d);n=f;while(true){if(!(n<h)){break;}((n<0||n>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+n]=c.removeLeadingString(((n<0||n>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+n]),d.$length));n=n+(1)>>0;}o=c.collapse($subslice(a,f,h),19);$s=9;case 9:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=o;q=c.newRegexp(18);q.Sub=$append($subslice(q.Sub,0,0),m,p);g=$append(g,q);case 8:f=h;d=i;e=j;h=h+(1)>>0;$s=1;continue;case 2:a=g;f=0;g=$subslice(a,0,0);r=CH.nil;s=0;case 10:if(!(s<=a.$length)){$s=11;continue;}t=CH.nil;if(s<a.$length){$s=12;continue;}$s=13;continue;case 12:t=c.leadingRegexp(((s<0||s>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+s]));if(!(r===CH.nil)&&r.Equal(t)&&(W(r)||((r.Op===17)&&(r.Min===r.Max)&&W((u=r.Sub,(0>=u.$length?($throwRuntimeError("index out of range"),undefined):u.$array[u.$offset+0])))))){s=s+(1)>>0;$s=10;continue;}case 13:if(s===f){$s=14;continue;}if(s===(f+1>>0)){$s=15;continue;}$s=16;continue;case 14:$s=17;continue;case 15:g=$append(g,((f<0||f>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+f]));$s=17;continue;case 16:v=r;w=f;while(true){if(!(w<s)){break;}x=!((w===f));((w<0||w>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+w]=c.removeLeadingRegexp(((w<0||w>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+w]),x));w=w+(1)>>0;}y=c.collapse($subslice(a,f,s),19);$s=18;case 18:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}z=y;aa=c.newRegexp(18);aa.Sub=$append($subslice(aa.Sub,0,0),v,z);g=$append(g,aa);case 17:f=s;r=t;s=s+(1)>>0;$s=10;continue;case 11:a=g;f=0;g=$subslice(a,0,0);ab=0;case 19:if(!(ab<=a.$length)){$s=20;continue;}if(ab<a.$length&&W(((ab<0||ab>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ab]))){$s=21;continue;}$s=22;continue;case 21:ab=ab+(1)>>0;$s=19;continue;case 22:if(ab===f){$s=23;continue;}if(ab===(f+1>>0)){$s=24;continue;}$s=25;continue;case 23:$s=26;continue;case 24:g=$append(g,((f<0||f>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+f]));$s=26;continue;case 25:ac=f;ad=f+1>>0;while(true){if(!(ad<ab)){break;}if(((ac<0||ac>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ac]).Op<((ad<0||ad>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ad]).Op||(((ac<0||ac>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ac]).Op===((ad<0||ad>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ad]).Op)&&((ac<0||ac>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ac]).Rune.$length<((ad<0||ad>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ad]).Rune.$length){ac=ad;}ad=ad+(1)>>0;}ae=((ac<0||ac>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ac]);af=((f<0||f>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+f]);((f<0||f>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+f]=ae);((ac<0||ac>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ac]=af);ag=f+1>>0;while(true){if(!(ag<ab)){break;}Y(((f<0||f>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+f]),((ag<0||ag>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ag]));c.reuse(((ag<0||ag>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ag]));ag=ag+(1)>>0;}$r=S(((f<0||f>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+f]));$s=27;case 27:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}g=$append(g,((f<0||f>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+f]));case 26:if(ab<a.$length){g=$append(g,((ab<0||ab>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ab]));}f=ab+1>>0;ab=ab+(1)>>0;$s=19;continue;case 20:a=g;f=0;g=$subslice(a,0,0);ah=a;ai=0;while(true){if(!(ai<ah.$length)){break;}aj=ai;if((aj+1>>0)<a.$length&&(((aj<0||aj>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+aj]).Op===2)&&((ak=aj+1>>0,((ak<0||ak>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ak])).Op===2)){ai++;continue;}g=$append(g,((aj<0||aj>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+aj]));ai++;}a=g;$s=-1;return a;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.factor};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.factor=function(a,b){return this.$val.factor(a,b);};P.ptr.prototype.leadingString=function(a){var $ptr,a,b,c;b=this;if((a.Op===18)&&a.Sub.$length>0){a=(c=a.Sub,(0>=c.$length?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+0]));}if(!((a.Op===3))){return[CB.nil,0];}return[a.Rune,(a.Flags&1)>>>0];};P.prototype.leadingString=function(a){return this.$val.leadingString(a);};P.ptr.prototype.removeLeadingString=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i;c=this;if((a.Op===18)&&a.Sub.$length>0){e=(d=a.Sub,(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0]));e=c.removeLeadingString(e,b);(f=a.Sub,(0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0]=e));if(e.Op===2){c.reuse(e);g=a.Sub.$length;if((g===(0))||(g===(1))){a.Op=2;a.Sub=CI.nil;}else if(g===(2)){h=a;a=(i=a.Sub,(1>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+1]));c.reuse(h);}else{$copySlice(a.Sub,$subslice(a.Sub,1));a.Sub=$subslice(a.Sub,0,(a.Sub.$length-1>>0));}}return a;}if(a.Op===3){a.Rune=$subslice(a.Rune,0,$copySlice(a.Rune,$subslice(a.Rune,b)));if(a.Rune.$length===0){a.Op=2;}}return a;};P.prototype.removeLeadingString=function(a,b){return this.$val.removeLeadingString(a,b);};P.ptr.prototype.leadingRegexp=function(a){var $ptr,a,b,c,d;b=this;if(a.Op===2){return CH.nil;}if((a.Op===18)&&a.Sub.$length>0){d=(c=a.Sub,(0>=c.$length?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+0]));if(d.Op===2){return CH.nil;}return d;}return a;};P.prototype.leadingRegexp=function(a){return this.$val.leadingRegexp(a);};P.ptr.prototype.removeLeadingRegexp=function(a,b){var $ptr,a,b,c,d,e,f,g;c=this;if((a.Op===18)&&a.Sub.$length>0){if(b){c.reuse((d=a.Sub,(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0])));}a.Sub=$subslice(a.Sub,0,$copySlice(a.Sub,$subslice(a.Sub,1)));e=a.Sub.$length;if(e===(0)){a.Op=2;a.Sub=CI.nil;}else if(e===(1)){f=a;a=(g=a.Sub,(0>=g.$length?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+0]));c.reuse(f);}return a;}if(b){c.reuse(a);}return c.newRegexp(2);};P.prototype.removeLeadingRegexp=function(a,b){return this.$val.removeLeadingRegexp(a,b);};T=function(a,b){var $ptr,a,b,c,d,e,f,g;c=new BW.ptr(3,0,CI.nil,CJ.zero(),CB.nil,CK.zero(),0,0,0,"");c.Flags=b;c.Rune=$subslice(new CB(c.Rune0),0,0);d=a;e=0;while(true){if(!(e<d.length)){break;}f=$decodeRune(d,e);g=f[0];if(c.Rune.$length>=c.Rune.$capacity){c.Rune=new CB($stringToRunes(a));break;}c.Rune=$append(c.Rune,g);e+=f[1];}return c;};U=function(a,b){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if(!((((b&2)>>>0)===0))){c=AN(a);if(!($interfaceIsEqual(c,$ifaceNil))){$s=-1;return[CH.nil,c];}$s=-1;return[T(a,b),$ifaceNil];}d=new P.ptr(0,CI.nil,CH.nil,0,"",CB.nil);e=$ifaceNil;f=0;g=0;h="";d.flags=b;d.wholeRegexp=a;i=a;case 1:if(!(!(i===""))){$s=2;continue;}j="";k=i.charCodeAt(0);if(k===(40)){$s=4;continue;}if(k===(124)){$s=5;continue;}if(k===(41)){$s=6;continue;}if(k===(94)){$s=7;continue;}if(k===(36)){$s=8;continue;}if(k===(46)){$s=9;continue;}if(k===(91)){$s=10;continue;}if((k===(42))||(k===(43))||(k===(63))){$s=11;continue;}if(k===(123)){$s=12;continue;}if(k===(92)){$s=13;continue;}$s=14;continue;case 4:if(!((((d.flags&64)>>>0)===0))&&i.length>=2&&(i.charCodeAt(1)===63)){l=d.parsePerlFlags(i);i=l[0];e=l[1];if(!($interfaceIsEqual(e,$ifaceNil))){$s=-1;return[CH.nil,e];}$s=3;continue;}d.numCap=d.numCap+(1)>>0;d.op(128).Cap=d.numCap;i=$substring(i,1);$s=15;continue;case 5:m=d.parseVerticalBar();$s=16;case 16:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}e=m;if(!($interfaceIsEqual(e,$ifaceNil))){$s=-1;return[CH.nil,e];}i=$substring(i,1);$s=15;continue;case 6:n=d.parseRightParen();$s=17;case 17:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}e=n;if(!($interfaceIsEqual(e,$ifaceNil))){$s=-1;return[CH.nil,e];}i=$substring(i,1);$s=15;continue;case 7:if(!((((d.flags&16)>>>0)===0))){d.op(9);}else{d.op(7);}i=$substring(i,1);$s=15;continue;case 8:if(!((((d.flags&16)>>>0)===0))){o=d.op(10);o.Flags=(o.Flags|(256))>>>0;}else{d.op(8);}i=$substring(i,1);$s=15;continue;case 9:if(!((((d.flags&8)>>>0)===0))){d.op(6);}else{d.op(5);}i=$substring(i,1);$s=15;continue;case 10:q=d.parseClass(i);$s=18;case 18:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;i=p[0];e=p[1];if(!($interfaceIsEqual(e,$ifaceNil))){$s=-1;return[CH.nil,e];}$s=15;continue;case 11:r=i;s=i.charCodeAt(0);if(s===(42)){g=14;}else if(s===(43)){g=15;}else if(s===(63)){g=16;}t=$substring(i,1);u=d.repeat(g,0,0,r,t,h);t=u[0];e=u[1];if(!($interfaceIsEqual(e,$ifaceNil))){$s=-1;return[CH.nil,e];}j=r;i=t;$s=15;continue;case 12:g=17;v=i;w=d.parseRepeat(i);x=w[0];y=w[1];z=w[2];aa=w[3];if(!aa){d.literal(123);i=$substring(i,1);$s=3;continue;}if(x<0||x>1000||y>1000||y>=0&&x>y){$s=-1;return[CH.nil,new M.ptr("invalid repeat count",$substring(v,0,(v.length-z.length>>0)))];}ab=d.repeat(g,x,y,v,z,h);z=ab[0];e=ab[1];if(!($interfaceIsEqual(e,$ifaceNil))){$s=-1;return[CH.nil,e];}j=v;i=z;$s=15;continue;case 13:if(!((((d.flags&64)>>>0)===0))&&i.length>=2){ac=i.charCodeAt(1);if(ac===(65)){d.op(9);i=$substring(i,2);$s=3;continue s;}else if(ac===(98)){d.op(11);i=$substring(i,2);$s=3;continue s;}else if(ac===(66)){d.op(12);i=$substring(i,2);$s=3;continue s;}else if(ac===(67)){$s=-1;return[CH.nil,new M.ptr("invalid escape sequence",$substring(i,0,2))];}else if(ac===(81)){ad="";ae=C.Index(i,"\\E");if(ae<0){ad=$substring(i,2);i="";}else{ad=$substring(i,2,ae);i=$substring(i,(ae+2>>0));}while(true){if(!(!(ad===""))){break;}af=AO(ad);ag=af[0];ah=af[1];ai=af[2];if(!($interfaceIsEqual(ai,$ifaceNil))){$s=-1;return[CH.nil,ai];}d.literal(ag);ad=ah;}$s=3;continue s;}else if(ac===(122)){d.op(10);i=$substring(i,2);$s=3;continue s;}}aj=d.newRegexp(4);aj.Flags=d.flags;if(i.length>=2&&((i.charCodeAt(1)===112)||(i.charCodeAt(1)===80))){$s=19;continue;}$s=20;continue;case 19:al=d.parseUnicodeClass(i,$subslice(new CB(aj.Rune0),0,0));$s=21;case 21:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}ak=al;am=ak[0];an=ak[1];ao=ak[2];if(!($interfaceIsEqual(ao,$ifaceNil))){$s=-1;return[CH.nil,ao];}if(!(am===CB.nil)){aj.Rune=am;i=an;d.push(aj);$s=3;continue s;}case 20:aq=d.parsePerlClassEscape(i,$subslice(new CB(aj.Rune0),0,0));$s=22;case 22:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ap=aq;ar=ap[0];as=ap[1];if(!(ar===CB.nil)){aj.Rune=ar;i=as;d.push(aj);$s=3;continue s;}d.reuse(aj);at=d.parseEscape(i);f=at[0];i=at[1];e=at[2];if(!($interfaceIsEqual(e,$ifaceNil))){$s=-1;return[CH.nil,e];}d.literal(f);$s=15;continue;case 14:au=AO(i);f=au[0];i=au[1];e=au[2];if(!($interfaceIsEqual(e,$ifaceNil))){$s=-1;return[CH.nil,e];}d.literal(f);case 15:case 3:h=j;$s=1;continue;case 2:av=d.concat();$s=23;case 23:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}av;aw=d.swapVerticalBar();$s=26;case 26:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}if(aw){$s=24;continue;}$s=25;continue;case 24:d.stack=$subslice(d.stack,0,(d.stack.$length-1>>0));case 25:ax=d.alternate();$s=27;case 27:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}ax;ay=d.stack.$length;if(!((ay===1))){$s=-1;return[CH.nil,new M.ptr("missing closing )",a)];}$s=-1;return[(az=d.stack,(0>=az.$length?($throwRuntimeError("index out of range"),undefined):az.$array[az.$offset+0])),$ifaceNil];}return;}if($f===undefined){$f={$blk:U};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Parse=U;P.ptr.prototype.parseRepeat=function(a){var $ptr,a,b,c,d,e,f,g,h,i;b=0;c=0;d="";e=false;f=this;if(a===""||!((a.charCodeAt(0)===123))){return[b,c,d,e];}a=$substring(a,1);g=false;h=f.parseInt(a);b=h[0];a=h[1];g=h[2];if(!g){return[b,c,d,e];}if(a===""){return[b,c,d,e];}if(!((a.charCodeAt(0)===44))){c=b;}else{a=$substring(a,1);if(a===""){return[b,c,d,e];}if(a.charCodeAt(0)===125){c=-1;}else{i=f.parseInt(a);c=i[0];a=i[1];g=i[2];if(!g){return[b,c,d,e];}else if(c<0){b=-1;}}}if(a===""||!((a.charCodeAt(0)===125))){return[b,c,d,e];}d=$substring(a,1);e=true;return[b,c,d,e];};P.prototype.parseRepeat=function(a){return this.$val.parseRepeat(a);};P.ptr.prototype.parsePerlFlags=function(a){var $ptr,a,aa,ab,ac,ad,ae,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;b="";c=$ifaceNil;d=this;e=a;if(e.length>4&&(e.charCodeAt(2)===80)&&(e.charCodeAt(3)===60)){f=C.IndexRune(e,62);if(f<0){c=AN(e);if(!($interfaceIsEqual(c,$ifaceNil))){g="";h=c;b=g;c=h;return[b,c];}i="";j=new M.ptr("invalid named capture",a);b=i;c=j;return[b,c];}k=$substring(e,0,(f+1>>0));l=$substring(e,4,f);c=AN(l);if(!($interfaceIsEqual(c,$ifaceNil))){m="";n=c;b=m;c=n;return[b,c];}if(!V(l)){o="";p=new M.ptr("invalid named capture",k);b=o;c=p;return[b,c];}d.numCap=d.numCap+(1)>>0;q=d.op(128);q.Cap=d.numCap;q.Name=l;r=$substring(e,(f+1>>0));s=$ifaceNil;b=r;c=s;return[b,c];}t=0;e=$substring(e,2);u=d.flags;v=1;w=false;Loop:while(true){if(!(!(e===""))){break;}x=AO(e);t=x[0];e=x[1];c=x[2];if(!($interfaceIsEqual(c,$ifaceNil))){y="";z=c;b=y;c=z;return[b,c];}aa=t;if(aa===(105)){u=(u|(1))>>>0;w=true;}else if(aa===(109)){u=(u&~(16))<<16>>>16;w=true;}else if(aa===(115)){u=(u|(8))>>>0;w=true;}else if(aa===(85)){u=(u|(32))>>>0;w=true;}else if(aa===(45)){if(v<0){break Loop;}v=-1;u=~u<<16>>>16;w=false;}else if((aa===(58))||(aa===(41))){if(v<0){if(!w){break Loop;}u=~u<<16>>>16;}if(t===58){d.op(128);}d.flags=u;ab=e;ac=$ifaceNil;b=ab;c=ac;return[b,c];}else{break Loop;}}ad="";ae=new M.ptr("invalid or unsupported Perl syntax",$substring(a,0,(a.length-e.length>>0)));b=ad;c=ae;return[b,c];};P.prototype.parsePerlFlags=function(a){return this.$val.parsePerlFlags(a);};V=function(a){var $ptr,a,b,c,d,e;if(a===""){return false;}b=a;c=0;while(true){if(!(c<b.length)){break;}d=$decodeRune(b,c);e=d[0];if(!((e===95))&&!AP(e)){return false;}c+=d[1];}return true;};P.ptr.prototype.parseInt=function(a){var $ptr,a,b,c,d,e,f,g;b=0;c="";d=false;e=this;if(a===""||a.charCodeAt(0)<48||57<a.charCodeAt(0)){return[b,c,d];}if(a.length>=2&&(a.charCodeAt(0)===48)&&48<=a.charCodeAt(1)&&a.charCodeAt(1)<=57){return[b,c,d];}f=a;while(true){if(!(!(a==="")&&48<=a.charCodeAt(0)&&a.charCodeAt(0)<=57)){break;}a=$substring(a,1);}c=a;d=true;f=$substring(f,0,(f.length-a.length>>0));g=0;while(true){if(!(g<f.length)){break;}if(b>=100000000){b=-1;break;}b=(($imul(b,10))+(f.charCodeAt(g)>>0)>>0)-48>>0;g=g+(1)>>0;}return[b,c,d];};P.prototype.parseInt=function(a){return this.$val.parseInt(a);};W=function(a){var $ptr,a;return(a.Op===3)&&(a.Rune.$length===1)||(a.Op===4)||(a.Op===5)||(a.Op===6);};X=function(a,b){var $ptr,a,b,c,d,e,f,g,h;c=a.Op;if(c===(3)){return(a.Rune.$length===1)&&((d=a.Rune,(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0]))===b);}else if(c===(4)){e=0;while(true){if(!(e<a.Rune.$length)){break;}if((f=a.Rune,((e<0||e>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+e]))<=b&&b<=(g=a.Rune,h=e+1>>0,((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h]))){return true;}e=e+(2)>>0;}return false;}else if(c===(5)){return!((b===10));}else if(c===(6)){return true;}return false;};P.ptr.prototype.parseVerticalBar=function(){var $ptr,a,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.concat();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}b;c=a.swapVerticalBar();$s=4;case 4:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}if(!c){$s=2;continue;}$s=3;continue;case 2:a.op(129);case 3:$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.parseVerticalBar};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.parseVerticalBar=function(){return this.$val.parseVerticalBar();};Y=function(a,b){var $ptr,a,b,c,d,e,f,g,h;switch(0){default:c=a.Op;if(c===(6)){}else if(c===(5)){if(X(b,10)){a.Op=6;}}else if(c===(4)){if(b.Op===3){a.Rune=AD(a.Rune,(d=b.Rune,(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0])),b.Flags);}else{a.Rune=AG(a.Rune,b.Rune);}}else if(c===(3)){if(((e=b.Rune,(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]))===(f=a.Rune,(0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0])))&&(b.Flags===a.Flags)){break;}a.Op=4;a.Rune=AD($subslice(a.Rune,0,0),(g=a.Rune,(0>=g.$length?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+0])),a.Flags);a.Rune=AD(a.Rune,(h=b.Rune,(0>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+0])),b.Flags);}}};P.ptr.prototype.swapVerticalBar=function(){var $ptr,a,aa,ab,ac,ad,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.stack.$length;if(b>=3&&((c=a.stack,d=b-2>>0,((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d])).Op===129)&&W((e=a.stack,f=b-1>>0,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f])))&&W((g=a.stack,h=b-3>>0,((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h])))){k=(i=a.stack,j=b-1>>0,((j<0||j>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+j]));n=(l=a.stack,m=b-3>>0,((m<0||m>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+m]));if(k.Op>n.Op){o=n;p=k;k=o;n=p;(q=a.stack,r=b-3>>0,((r<0||r>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+r]=n));}Y(n,k);a.reuse(k);a.stack=$subslice(a.stack,0,(b-1>>0));$s=-1;return true;}if(b>=2){$s=1;continue;}$s=2;continue;case 1:u=(s=a.stack,t=b-1>>0,((t<0||t>=s.$length)?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+t]));x=(v=a.stack,w=b-2>>0,((w<0||w>=v.$length)?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+w]));if(x.Op===129){$s=3;continue;}$s=4;continue;case 3:if(b>=3){$s=5;continue;}$s=6;continue;case 5:$r=S((y=a.stack,z=b-3>>0,((z<0||z>=y.$length)?($throwRuntimeError("index out of range"),undefined):y.$array[y.$offset+z])));$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 6:(aa=a.stack,ab=b-2>>0,((ab<0||ab>=aa.$length)?($throwRuntimeError("index out of range"),undefined):aa.$array[aa.$offset+ab]=u));(ac=a.stack,ad=b-1>>0,((ad<0||ad>=ac.$length)?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+ad]=x));$s=-1;return true;case 4:case 2:$s=-1;return false;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.swapVerticalBar};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.swapVerticalBar=function(){return this.$val.swapVerticalBar();};P.ptr.prototype.parseRightParen=function(){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.concat();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}b;c=a.swapVerticalBar();$s=4;case 4:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}if(c){$s=2;continue;}$s=3;continue;case 2:a.stack=$subslice(a.stack,0,(a.stack.$length-1>>0));case 3:d=a.alternate();$s=5;case 5:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d;e=a.stack.$length;if(e<2){$s=-1;return new M.ptr("unexpected )",a.wholeRegexp);}h=(f=a.stack,g=e-1>>0,((g<0||g>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+g]));k=(i=a.stack,j=e-2>>0,((j<0||j>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+j]));a.stack=$subslice(a.stack,0,(e-2>>0));if(!((k.Op===128))){$s=-1;return new M.ptr("unexpected )",a.wholeRegexp);}a.flags=k.Flags;if(k.Cap===0){a.push(h);}else{k.Op=13;k.Sub=$subslice(new CI(k.Sub0),0,1);(l=k.Sub,(0>=l.$length?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+0]=h));a.push(k);}$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.parseRightParen};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.parseRightParen=function(){return this.$val.parseRightParen();};P.ptr.prototype.parseEscape=function(a){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;b=0;c="";d=$ifaceNil;e=this;f=$substring(a,1);if(f===""){g=0;h="";i=new M.ptr("trailing backslash at end of expression","");b=g;c=h;d=i;return[b,c,d];}j=AO(f);k=j[0];f=j[1];d=j[2];if(!($interfaceIsEqual(d,$ifaceNil))){l=0;m="";n=d;b=l;c=m;d=n;return[b,c,d];}Switch:switch(0){default:o=k;if((o===(49))||(o===(50))||(o===(51))||(o===(52))||(o===(53))||(o===(54))||(o===(55))){if(f===""||f.charCodeAt(0)<48||f.charCodeAt(0)>55){break;}b=k-48>>0;p=1;while(true){if(!(p<3)){break;}if(f===""||f.charCodeAt(0)<48||f.charCodeAt(0)>55){break;}b=(($imul(b,8))+(f.charCodeAt(0)>>0)>>0)-48>>0;f=$substring(f,1);p=p+(1)>>0;}q=b;r=f;s=$ifaceNil;b=q;c=r;d=s;return[b,c,d];}else if(o===(48)){b=k-48>>0;p=1;while(true){if(!(p<3)){break;}if(f===""||f.charCodeAt(0)<48||f.charCodeAt(0)>55){break;}b=(($imul(b,8))+(f.charCodeAt(0)>>0)>>0)-48>>0;f=$substring(f,1);p=p+(1)>>0;}t=b;u=f;v=$ifaceNil;b=t;c=u;d=v;return[b,c,d];}else if(o===(120)){if(f===""){break;}w=AO(f);k=w[0];f=w[1];d=w[2];if(!($interfaceIsEqual(d,$ifaceNil))){x=0;y="";z=d;b=x;c=y;d=z;return[b,c,d];}if(k===123){aa=0;b=0;while(true){if(f===""){break Switch;}ab=AO(f);k=ab[0];f=ab[1];d=ab[2];if(!($interfaceIsEqual(d,$ifaceNil))){ac=0;ad="";ae=d;b=ac;c=ad;d=ae;return[b,c,d];}if(k===125){break;}af=AQ(k);if(af<0){break Switch;}b=($imul(b,16))+af>>0;if(b>1114111){break Switch;}aa=aa+(1)>>0;}if(aa===0){break Switch;}ag=b;ah=f;ai=$ifaceNil;b=ag;c=ah;d=ai;return[b,c,d];}aj=AQ(k);ak=AO(f);k=ak[0];f=ak[1];d=ak[2];if(!($interfaceIsEqual(d,$ifaceNil))){al=0;am="";an=d;b=al;c=am;d=an;return[b,c,d];}ao=AQ(k);if(aj<0||ao<0){break;}ap=($imul(aj,16))+ao>>0;aq=f;ar=$ifaceNil;b=ap;c=aq;d=ar;return[b,c,d];}else if(o===(97)){as=7;at=f;au=d;b=as;c=at;d=au;return[b,c,d];}else if(o===(102)){av=12;aw=f;ax=d;b=av;c=aw;d=ax;return[b,c,d];}else if(o===(110)){ay=10;az=f;ba=d;b=ay;c=az;d=ba;return[b,c,d];}else if(o===(114)){bb=13;bc=f;bd=d;b=bb;c=bc;d=bd;return[b,c,d];}else if(o===(116)){be=9;bf=f;bg=d;b=be;c=bf;d=bg;return[b,c,d];}else if(o===(118)){bh=11;bi=f;bj=d;b=bh;c=bi;d=bj;return[b,c,d];}else if(k<128&&!AP(k)){bk=k;bl=f;bm=$ifaceNil;b=bk;c=bl;d=bm;return[b,c,d];}}bn=0;bo="";bp=new M.ptr("invalid escape sequence",$substring(a,0,(a.length-f.length>>0)));b=bn;c=bo;d=bp;return[b,c,d];};P.prototype.parseEscape=function(a){return this.$val.parseEscape(a);};P.ptr.prototype.parseClassChar=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k;c=0;d="";e=$ifaceNil;f=this;if(a===""){g=0;h="";i=new M.ptr("missing closing ]",b);c=g;d=h;e=i;return[c,d,e];}if(a.charCodeAt(0)===92){j=f.parseEscape(a);c=j[0];d=j[1];e=j[2];return[c,d,e];}k=AO(a);c=k[0];d=k[1];e=k[2];return[c,d,e];};P.prototype.parseClassChar=function(a,b){return this.$val.parseClassChar(a,b);};P.ptr.prototype.parsePerlClassEscape=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=CB.nil;d="";e=this;if((((e.flags&64)>>>0)===0)||a.length<2||!((a.charCodeAt(0)===92))){$s=-1;return[c,d];}g=$clone((f=AU[$String.keyFor($substring(a,0,2))],f!==undefined?f.v:new Z.ptr(0,CB.nil)),Z);if(g.sign===0){$s=-1;return[c,d];}i=e.appendGroup(b,$clone(g,Z));$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;j=$substring(a,2);c=h;d=j;$s=-1;return[c,d];}return;}if($f===undefined){$f={$blk:P.ptr.prototype.parsePerlClassEscape};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.parsePerlClassEscape=function(a,b){return this.$val.parsePerlClassEscape(a,b);};P.ptr.prototype.parseNamedClass=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=CB.nil;d="";e=$ifaceNil;f=this;if(a.length<2||!((a.charCodeAt(0)===91))||!((a.charCodeAt(1)===58))){$s=-1;return[c,d,e];}g=C.Index($substring(a,2),":]");if(g<0){$s=-1;return[c,d,e];}g=g+(2)>>0;h=$substring(a,0,(g+2>>0));i=$substring(a,(g+2>>0));j=h;a=i;l=$clone((k=BJ[$String.keyFor(j)],k!==undefined?k.v:new Z.ptr(0,CB.nil)),Z);if(l.sign===0){m=CB.nil;n="";o=new M.ptr("invalid character class range",j);c=m;d=n;e=o;$s=-1;return[c,d,e];}q=f.appendGroup(b,$clone(l,Z));$s=1;case 1:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;r=a;s=$ifaceNil;c=p;d=r;e=s;$s=-1;return[c,d,e];}return;}if($f===undefined){$f={$blk:P.ptr.prototype.parseNamedClass};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.parseNamedClass=function(a,b){return this.$val.parseNamedClass(a,b);};P.ptr.prototype.appendGroup=function(a,b){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;if(((c.flags&1)>>>0)===0){$s=1;continue;}$s=2;continue;case 1:if(b.sign<0){a=AI(a,b.class$1);}else{a=AG(a,b.class$1);}$s=3;continue;case 2:d=$subslice(c.tmpClass,0,0);d=AH(d,b.class$1);c.tmpClass=d;e=AC((c.$ptr_tmpClass||(c.$ptr_tmpClass=new CL(function(){return this.$target.tmpClass;},function($v){this.$target.tmpClass=$v;},c))));$s=4;case 4:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;if(b.sign<0){a=AI(a,d);}else{a=AG(a,d);}case 3:$s=-1;return a;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.appendGroup};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.appendGroup=function(a,b){return this.$val.appendGroup(a,b);};AB=function(a){var $ptr,a,b,c,d,e,f,g;if(a==="Any"){return[AA,AA];}c=(b=A.Categories[$String.keyFor(a)],b!==undefined?b.v:CM.nil);if(!(c===CM.nil)){return[c,(d=A.FoldCategory[$String.keyFor(a)],d!==undefined?d.v:CM.nil)];}f=(e=A.Scripts[$String.keyFor(a)],e!==undefined?e.v:CM.nil);if(!(f===CM.nil)){return[f,(g=A.FoldScript[$String.keyFor(a)],g!==undefined?g.v:CM.nil)];}return[CM.nil,CM.nil];};P.ptr.prototype.parseUnicodeClass=function(a,b){var $ptr,a,aa,ab,ac,ad,ae,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=CB.nil;d="";e=$ifaceNil;f=this;if((((f.flags&128)>>>0)===0)||a.length<2||!((a.charCodeAt(0)===92))||!((a.charCodeAt(1)===112))&&!((a.charCodeAt(1)===80))){$s=-1;return[c,d,e];}g=1;if(a.charCodeAt(1)===80){g=-1;}h=$substring(a,2);i=AO(h);j=i[0];h=i[1];e=i[2];if(!($interfaceIsEqual(e,$ifaceNil))){$s=-1;return[c,d,e];}k="";l="";m=k;n=l;if(!((j===123))){m=$substring(a,0,(a.length-h.length>>0));n=$substring(m,2);}else{o=C.IndexRune(a,125);if(o<0){e=AN(a);if(!($interfaceIsEqual(e,$ifaceNil))){$s=-1;return[c,d,e];}p=CB.nil;q="";r=new M.ptr("invalid character class range",a);c=p;d=q;e=r;$s=-1;return[c,d,e];}s=$substring(a,0,(o+1>>0));t=$substring(a,(o+1>>0));m=s;h=t;n=$substring(a,3,o);e=AN(n);if(!($interfaceIsEqual(e,$ifaceNil))){$s=-1;return[c,d,e];}}if(!(n==="")&&(n.charCodeAt(0)===94)){g=-g;n=$substring(n,1);}u=AB(n);v=u[0];w=u[1];if(v===CM.nil){x=CB.nil;y="";z=new M.ptr("invalid character class range",m);c=x;d=y;e=z;$s=-1;return[c,d,e];}if((((f.flags&1)>>>0)===0)||w===CM.nil){$s=1;continue;}$s=2;continue;case 1:if(g>0){b=AJ(b,v);}else{b=AK(b,v);}$s=3;continue;case 2:aa=$subslice(f.tmpClass,0,0);aa=AJ(aa,v);aa=AJ(aa,w);f.tmpClass=aa;ab=AC((f.$ptr_tmpClass||(f.$ptr_tmpClass=new CL(function(){return this.$target.tmpClass;},function($v){this.$target.tmpClass=$v;},f))));$s=4;case 4:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}aa=ab;if(g>0){b=AG(b,aa);}else{b=AI(b,aa);}case 3:ac=b;ad=h;ae=$ifaceNil;c=ac;d=ad;e=ae;$s=-1;return[c,d,e];}return;}if($f===undefined){$f={$blk:P.ptr.prototype.parseUnicodeClass};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.parseUnicodeClass=function(a,b){return this.$val.parseUnicodeClass(a,b);};P.ptr.prototype.parseClass=function(a){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;b=$f.b;ba=$f.ba;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b="";c=$ifaceNil;d=this;e=$substring(a,1);f=d.newRegexp(4);f.Flags=d.flags;f.Rune=$subslice(new CB(f.Rune0),0,0);g=1;if(!(e==="")&&(e.charCodeAt(0)===94)){g=-1;e=$substring(e,1);if(((d.flags&4)>>>0)===0){f.Rune=$append(f.Rune,10,10);}}h=f.Rune;i=true;case 1:if(!(e===""||!((e.charCodeAt(0)===93))||i)){$s=2;continue;}if(!(e==="")&&(e.charCodeAt(0)===45)&&(((d.flags&64)>>>0)===0)&&!i&&((e.length===1)||!((e.charCodeAt(1)===93)))){j=D.DecodeRuneInString($substring(e,1));k=j[1];l="";m=new M.ptr("invalid character class range",$substring(e,0,(1+k>>0)));b=l;c=m;$s=-1;return[b,c];}i=false;if(e.length>2&&(e.charCodeAt(0)===91)&&(e.charCodeAt(1)===58)){$s=3;continue;}$s=4;continue;case 3:o=d.parseNamedClass(e,h);$s=5;case 5:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n[0];q=n[1];r=n[2];if(!($interfaceIsEqual(r,$ifaceNil))){s="";t=r;b=s;c=t;$s=-1;return[b,c];}if(!(p===CB.nil)){u=p;v=q;h=u;e=v;$s=1;continue;}case 4:x=d.parseUnicodeClass(e,h);$s=6;case 6:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}w=x;y=w[0];z=w[1];aa=w[2];if(!($interfaceIsEqual(aa,$ifaceNil))){ab="";ac=aa;b=ab;c=ac;$s=-1;return[b,c];}if(!(y===CB.nil)){$s=7;continue;}$s=8;continue;case 7:ad=y;ae=z;h=ad;e=ae;$s=1;continue;case 8:ag=d.parsePerlClassEscape(e,h);$s=9;case 9:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}af=ag;ah=af[0];ai=af[1];if(!(ah===CB.nil)){aj=ah;ak=ai;h=aj;e=ak;$s=1;continue;}al=e;am=0;an=0;ao=am;ap=an;aq=d.parseClassChar(e,a);ao=aq[0];e=aq[1];aa=aq[2];if(!($interfaceIsEqual(aa,$ifaceNil))){ar="";as=aa;b=ar;c=as;$s=-1;return[b,c];}ap=ao;if(e.length>=2&&(e.charCodeAt(0)===45)&&!((e.charCodeAt(1)===93))){e=$substring(e,1);at=d.parseClassChar(e,a);ap=at[0];e=at[1];aa=at[2];if(!($interfaceIsEqual(aa,$ifaceNil))){au="";av=aa;b=au;c=av;$s=-1;return[b,c];}if(ap<ao){al=$substring(al,0,(al.length-e.length>>0));aw="";ax=new M.ptr("invalid character class range",al);b=aw;c=ax;$s=-1;return[b,c];}}if(((d.flags&1)>>>0)===0){h=AE(h,ao,ap);}else{h=AF(h,ao,ap);}$s=1;continue;case 2:e=$substring(e,1);f.Rune=h;ay=AC((f.$ptr_Rune||(f.$ptr_Rune=new CL(function(){return this.$target.Rune;},function($v){this.$target.Rune=$v;},f))));$s=10;case 10:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}h=ay;if(g<0){h=AL(h);}f.Rune=h;d.push(f);az=e;ba=$ifaceNil;b=az;c=ba;$s=-1;return[b,c];}return;}if($f===undefined){$f={$blk:P.ptr.prototype.parseClass};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.b=b;$f.ba=ba;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.parseClass=function(a){return this.$val.parseClass(a);};AC=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=B.Sort((b=new AM.ptr(a),new b.constructor.elem(b)));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}c=a.$get();if(c.$length<2){$s=-1;return c;}d=2;e=2;while(true){if(!(e<c.$length)){break;}f=((e<0||e>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+e]);g=(h=e+1>>0,((h<0||h>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+h]));i=f;j=g;if(i<=((k=d-1>>0,((k<0||k>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+k]))+1>>0)){if(j>(l=d-1>>0,((l<0||l>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+l]))){(m=d-1>>0,((m<0||m>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+m]=j));}e=e+(2)>>0;continue;}((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]=i);(n=d+1>>0,((n<0||n>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+n]=j));d=d+(2)>>0;e=e+(2)>>0;}$s=-1;return $subslice(c,0,d);}return;}if($f===undefined){$f={$blk:AC};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.$s=$s;$f.$r=$r;return $f;};AD=function(a,b,c){var $ptr,a,b,c;if(!((((c&1)>>>0)===0))){return AF(a,b,b);}return AE(a,b,b);};AE=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m;d=a.$length;e=2;while(true){if(!(e<=4)){break;}if(d>=e){f=(g=d-e>>0,((g<0||g>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+g]));h=(i=(d-e>>0)+1>>0,((i<0||i>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+i]));j=f;k=h;if(b<=(k+1>>0)&&j<=(c+1>>0)){if(b<j){(l=d-e>>0,((l<0||l>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+l]=b));}if(c>k){(m=(d-e>>0)+1>>0,((m<0||m>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+m]=c));}return a;}}e=e+(2)>>0;}return $append(a,b,c);};AF=function(a,b,c){var $ptr,a,b,c,d,e;if(b<=65&&c>=125251){return AE(a,b,c);}if(c<65||b>125251){return AE(a,b,c);}if(b<65){a=AE(a,b,64);b=65;}if(c>125251){a=AE(a,125252,c);c=125251;}d=b;while(true){if(!(d<=c)){break;}a=AE(a,d,d);e=A.SimpleFold(d);while(true){if(!(!((e===d)))){break;}a=AE(a,e,e);e=A.SimpleFold(e);}d=d+(1)>>0;}return a;};AG=function(a,b){var $ptr,a,b,c,d;c=0;while(true){if(!(c<b.$length)){break;}a=AE(a,((c<0||c>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+c]),(d=c+1>>0,((d<0||d>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+d])));c=c+(2)>>0;}return a;};AH=function(a,b){var $ptr,a,b,c,d;c=0;while(true){if(!(c<b.$length)){break;}a=AF(a,((c<0||c>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+c]),(d=c+1>>0,((d<0||d>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+d])));c=c+(2)>>0;}return a;};AI=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i;c=0;d=0;while(true){if(!(d<b.$length)){break;}e=((d<0||d>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+d]);f=(g=d+1>>0,((g<0||g>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+g]));h=e;i=f;if(c<=(h-1>>0)){a=AE(a,c,h-1>>0);}c=i+1>>0;d=d+(2)>>0;}if(c<=1114111){a=AE(a,c,1114111);}return a;};AJ=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v;c=b.R16;d=0;while(true){if(!(d<c.$length)){break;}e=$clone(((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]),A.Range16);f=(e.Lo>>0);g=(e.Hi>>0);h=(e.Stride>>0);i=f;j=g;k=h;if(k===1){a=AE(a,i,j);d++;continue;}l=i;while(true){if(!(l<=j)){break;}a=AE(a,l,l);l=l+(k)>>0;}d++;}m=b.R32;n=0;while(true){if(!(n<m.$length)){break;}o=$clone(((n<0||n>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+n]),A.Range32);p=(o.Lo>>0);q=(o.Hi>>0);r=(o.Stride>>0);s=p;t=q;u=r;if(u===1){a=AE(a,s,t);n++;continue;}v=s;while(true){if(!(v<=t)){break;}a=AE(a,v,v);v=v+(u)>>0;}n++;}return a;};AK=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w;c=0;d=b.R16;e=0;while(true){if(!(e<d.$length)){break;}f=$clone(((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]),A.Range16);g=(f.Lo>>0);h=(f.Hi>>0);i=(f.Stride>>0);j=g;k=h;l=i;if(l===1){if(c<=(j-1>>0)){a=AE(a,c,j-1>>0);}c=k+1>>0;e++;continue;}m=j;while(true){if(!(m<=k)){break;}if(c<=(m-1>>0)){a=AE(a,c,m-1>>0);}c=m+1>>0;m=m+(l)>>0;}e++;}n=b.R32;o=0;while(true){if(!(o<n.$length)){break;}p=$clone(((o<0||o>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+o]),A.Range32);q=(p.Lo>>0);r=(p.Hi>>0);s=(p.Stride>>0);t=q;u=r;v=s;if(v===1){if(c<=(t-1>>0)){a=AE(a,c,t-1>>0);}c=u+1>>0;o++;continue;}w=t;while(true){if(!(w<=u)){break;}if(c<=(w-1>>0)){a=AE(a,c,w-1>>0);}c=w+1>>0;w=w+(v)>>0;}o++;}if(c<=1114111){a=AE(a,c,1114111);}return a;};AL=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j;b=0;c=0;d=0;while(true){if(!(d<a.$length)){break;}e=((d<0||d>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+d]);f=(g=d+1>>0,((g<0||g>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+g]));h=e;i=f;if(b<=(h-1>>0)){((c<0||c>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+c]=b);(j=c+1>>0,((j<0||j>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+j]=(h-1>>0)));c=c+(2)>>0;}b=i+1>>0;d=d+(2)>>0;}a=$subslice(a,0,c);if(b<=1114111){a=$append(a,b,1114111);}return a;};AM.ptr.prototype.Less=function(a,b){var $ptr,a,b,c,d,e,f;c=this;d=c.p.$get();a=$imul(a,(2));b=$imul(b,(2));return((a<0||a>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+a])<((b<0||b>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+b])||(((a<0||a>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+a])===((b<0||b>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+b]))&&(e=a+1>>0,((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]))>(f=b+1>>0,((f<0||f>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+f]));};AM.prototype.Less=function(a,b){return this.$val.Less(a,b);};AM.ptr.prototype.Len=function(){var $ptr,a,b;a=this;return(b=a.p.$get().$length/2,(b===b&&b!==1/0&&b!==-1/0)?b>>0:$throwRuntimeError("integer divide by zero"));};AM.prototype.Len=function(){return this.$val.Len();};AM.ptr.prototype.Swap=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l;c=this;d=c.p.$get();a=$imul(a,(2));b=$imul(b,(2));e=((b<0||b>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+b]);f=(g=b+1>>0,((g<0||g>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+g]));h=((a<0||a>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+a]);i=(j=a+1>>0,((j<0||j>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+j]));((a<0||a>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+a]=e);(k=a+1>>0,((k<0||k>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+k]=f));((b<0||b>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+b]=h);(l=b+1>>0,((l<0||l>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+l]=i));};AM.prototype.Swap=function(a,b){return this.$val.Swap(a,b);};AN=function(a){var $ptr,a,b,c,d;while(true){if(!(!(a===""))){break;}b=D.DecodeRuneInString(a);c=b[0];d=b[1];if((c===65533)&&(d===1)){return new M.ptr("invalid UTF-8",a);}a=$substring(a,d);}return $ifaceNil;};AO=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l;b=0;c="";d=$ifaceNil;e=D.DecodeRuneInString(a);b=e[0];f=e[1];if((b===65533)&&(f===1)){g=0;h="";i=new M.ptr("invalid UTF-8",a);b=g;c=h;d=i;return[b,c,d];}j=b;k=$substring(a,f);l=$ifaceNil;b=j;c=k;d=l;return[b,c,d];};AP=function(a){var $ptr,a;return 48<=a&&a<=57||65<=a&&a<=90||97<=a&&a<=122;};AQ=function(a){var $ptr,a;if(48<=a&&a<=57){return a-48>>0;}if(97<=a&&a<=102){return(a-97>>0)+10>>0;}if(65<=a&&a<=70){return(a-65>>0)+10>>0;}return-1;};BL.prototype.String=function(){var $ptr,a;a=this.$val;if((a>>>0)>=(BM.$length>>>0)){return"";}return((a<0||a>=BM.$length)?($throwRuntimeError("index out of range"),undefined):BM.$array[BM.$offset+a]);};$ptrType(BL).prototype.String=function(){return new BL(this.$get()).String();};BO=function(a,b){var $ptr,a,b,c,d;c=32;d=0;if(BP(a)){d=1;}else if((a===10)){c=(c|(1))>>>0;}else if(a<0){c=(c|(5))>>>0;}if(BP(b)){d=(d^(1))<<24>>>24;}else if((b===10)){c=(c|(2))>>>0;}else if(b<0){c=(c|(10))>>>0;}if(!((d===0))){c=(c^(48))<<24>>>24;}return c;};$pkg.EmptyOpContext=BO;BP=function(a){var $ptr,a;return 65<=a&&a<=90||97<=a&&a<=122||48<=a&&a<=57||(a===95);};$pkg.IsWordChar=BP;BK.ptr.prototype.String=function(){var $ptr,a,b;a=this;b=new E.Buffer.ptr(CN.nil,0,CO.zero(),0);BT(b,a);return b.String();};BK.prototype.String=function(){return this.$val.String();};BK.ptr.prototype.skipNop=function(a){var $ptr,a,b,c,d,e;b=this;d=(c=b.Inst,((a<0||a>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+a]));while(true){if(!((d.Op===6)||(d.Op===2))){break;}a=d.Out;d=(e=b.Inst,((a<0||a>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+a]));}return[d,a];};BK.prototype.skipNop=function(a){return this.$val.skipNop(a);};BQ.ptr.prototype.op=function(){var $ptr,a,b,c;a=this;b=a.Op;c=b;if((c===(8))||(c===(9))||(c===(10))){b=7;}return b;};BQ.prototype.op=function(){return this.$val.op();};BK.ptr.prototype.Prefix=function(){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l;a="";b=false;c=this;d=c.skipNop((c.Start>>>0));e=d[0];if(!((e.op()===7))||!((e.Rune.$length===1))){f="";g=e.Op===4;a=f;b=g;return[a,b];}h=new E.Buffer.ptr(CN.nil,0,CO.zero(),0);while(true){if(!((e.op()===7)&&(e.Rune.$length===1)&&((((e.Arg<<16>>>16)&1)>>>0)===0))){break;}h.WriteRune((i=e.Rune,(0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0])));j=c.skipNop(e.Out);e=j[0];}k=h.String();l=e.Op===4;a=k;b=l;return[a,b];};BK.prototype.Prefix=function(){return this.$val.Prefix();};BK.ptr.prototype.StartCond=function(){var $ptr,a,b,c,d,e,f,g;a=this;b=0;c=(a.Start>>>0);e=(d=a.Inst,((c<0||c>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+c]));Loop:while(true){f=e.Op;if(f===(3)){b=(b|((e.Arg<<24>>>24)))>>>0;}else if(f===(5)){return 255;}else if((f===(2))||(f===(6))){}else{break Loop;}c=e.Out;e=(g=a.Inst,((c<0||c>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+c]));}return b;};BK.prototype.StartCond=function(){return this.$val.StartCond();};BQ.ptr.prototype.MatchRune=function(a){var $ptr,a,b;b=this;return!((b.MatchRunePos(a)===-1));};BQ.prototype.MatchRune=function(a){return this.$val.MatchRune(a);};BQ.ptr.prototype.MatchRunePos=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p;b=this;c=b.Rune;if(c.$length===1){d=(0>=c.$length?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+0]);if(a===d){return 0;}if(!(((((b.Arg<<16>>>16)&1)>>>0)===0))){e=A.SimpleFold(d);while(true){if(!(!((e===d)))){break;}if(a===e){return 0;}e=A.SimpleFold(e);}}return-1;}f=0;while(true){if(!(f<c.$length&&f<=8)){break;}if(a<((f<0||f>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+f])){return-1;}if(a<=(g=f+1>>0,((g<0||g>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+g]))){return(h=f/2,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero"));}f=f+(2)>>0;}i=0;k=(j=c.$length/2,(j===j&&j!==1/0&&j!==-1/0)?j>>0:$throwRuntimeError("integer divide by zero"));while(true){if(!(i<k)){break;}m=i+(l=((k-i>>0))/2,(l===l&&l!==1/0&&l!==-1/0)?l>>0:$throwRuntimeError("integer divide by zero"))>>0;o=(n=$imul(2,m),((n<0||n>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+n]));if(o<=a){if(a<=(p=($imul(2,m))+1>>0,((p<0||p>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+p]))){return m;}i=m+1>>0;}else{k=m;}}return-1;};BQ.prototype.MatchRunePos=function(a){return this.$val.MatchRunePos(a);};BR=function(a){var $ptr,a;return(a===95)||(65<=a&&a<=90)||(97<=a&&a<=122)||(48<=a&&a<=57);};BQ.ptr.prototype.MatchEmptyWidth=function(a,b){var $ptr,a,b,c,d;c=this;d=(c.Arg<<24>>>24);if(d===(1)){return(a===10)||(a===-1);}else if(d===(2)){return(b===10)||(b===-1);}else if(d===(4)){return a===-1;}else if(d===(8)){return b===-1;}else if(d===(16)){return!(BR(a)===BR(b));}else if(d===(32)){return BR(a)===BR(b);}$panic(new $String("unknown empty width arg"));};BQ.prototype.MatchEmptyWidth=function(a,b){return this.$val.MatchEmptyWidth(a,b);};BQ.ptr.prototype.String=function(){var $ptr,a,b;a=this;b=new E.Buffer.ptr(CN.nil,0,CO.zero(),0);BV(b,a);return b.String();};BQ.prototype.String=function(){return this.$val.String();};BS=function(a,b){var $ptr,a,b,c,d,e;c=b;d=0;while(true){if(!(d<c.$length)){break;}e=((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]);a.WriteString(e);d++;}};BT=function(a,b){var $ptr,a,b,c,d,e,f,g,h;c=b.Inst;d=0;while(true){if(!(d<c.$length)){break;}e=d;g=(f=b.Inst,((e<0||e>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+e]));h=F.Itoa(e);if(h.length<3){a.WriteString($substring(" ",h.length));}if(e===b.Start){h=h+("*");}BS(a,new CE([h,"\t"]));BV(a,g);BS(a,new CE(["\n"]));d++;}};BU=function(a){var $ptr,a;return F.FormatUint(new $Uint64(0,a),10);};BV=function(a,b){var $ptr,a,b,c;c=b.Op;if(c===(0)){BS(a,new CE(["alt -> ",BU(b.Out),", ",BU(b.Arg)]));}else if(c===(1)){BS(a,new CE(["altmatch -> ",BU(b.Out),", ",BU(b.Arg)]));}else if(c===(2)){BS(a,new CE(["cap ",BU(b.Arg)," -> ",BU(b.Out)]));}else if(c===(3)){BS(a,new CE(["empty ",BU(b.Arg)," -> ",BU(b.Out)]));}else if(c===(4)){BS(a,new CE(["match"]));}else if(c===(5)){BS(a,new CE(["fail"]));}else if(c===(6)){BS(a,new CE(["nop -> ",BU(b.Out)]));}else if(c===(7)){if(b.Rune===CB.nil){BS(a,new CE(["rune <nil>"]));}BS(a,new CE(["rune ",F.QuoteToASCII($runesToString(b.Rune))]));if(!(((((b.Arg<<16>>>16)&1)>>>0)===0))){BS(a,new CE(["/i"]));}BS(a,new CE([" -> ",BU(b.Out)]));}else if(c===(8)){BS(a,new CE(["rune1 ",F.QuoteToASCII($runesToString(b.Rune))," -> ",BU(b.Out)]));}else if(c===(9)){BS(a,new CE(["any -> ",BU(b.Out)]));}else if(c===(10)){BS(a,new CE(["anynotnl -> ",BU(b.Out)]));}};BW.ptr.prototype.Equal=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s;b=this;if(b===CH.nil||a===CH.nil){return b===a;}if(!((b.Op===a.Op))){return false;}c=b.Op;if(c===(10)){if(!((((b.Flags&256)>>>0)===((a.Flags&256)>>>0)))){return false;}}else if((c===(3))||(c===(4))){if(!((b.Rune.$length===a.Rune.$length))){return false;}d=b.Rune;e=0;while(true){if(!(e<d.$length)){break;}f=e;g=((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]);if(!((g===(h=a.Rune,((f<0||f>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+f]))))){return false;}e++;}}else if((c===(19))||(c===(18))){if(!((b.Sub.$length===a.Sub.$length))){return false;}i=b.Sub;j=0;while(true){if(!(j<i.$length)){break;}k=j;l=((j<0||j>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+j]);if(!l.Equal((m=a.Sub,((k<0||k>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+k])))){return false;}j++;}}else if((c===(14))||(c===(15))||(c===(16))){if(!((((b.Flags&32)>>>0)===((a.Flags&32)>>>0)))||!(n=b.Sub,(0>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+0])).Equal((o=a.Sub,(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0])))){return false;}}else if(c===(17)){if(!((((b.Flags&32)>>>0)===((a.Flags&32)>>>0)))||!((b.Min===a.Min))||!((b.Max===a.Max))||!(p=b.Sub,(0>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+0])).Equal((q=a.Sub,(0>=q.$length?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+0])))){return false;}}else if(c===(13)){if(!((b.Cap===a.Cap))||!(b.Name===a.Name)||!(r=b.Sub,(0>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+0])).Equal((s=a.Sub,(0>=s.$length?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+0])))){return false;}}return true;};BW.prototype.Equal=function(a){return this.$val.Equal(a);};BY=function(a,b){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;switch(0){default:c=b.Op;if(c===(1)){a.WriteString("[^\\x00-\\x{10FFFF}]");}else if(c===(2)){a.WriteString("(?:)");}else if(c===(3)){if(!((((b.Flags&1)>>>0)===0))){a.WriteString("(?i:");}d=b.Rune;e=0;while(true){if(!(e<d.$length)){break;}f=((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]);BZ(a,f,false);e++;}if(!((((b.Flags&1)>>>0)===0))){a.WriteString(")");}}else if(c===(4)){if(!(((g=b.Rune.$length%2,g===g?g:$throwRuntimeError("integer divide by zero"))===0))){a.WriteString("[invalid char class]");break;}a.WriteRune(91);if(b.Rune.$length===0){a.WriteString("^\\x00-\\x{10FFFF}");}else if(((h=b.Rune,(0>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+0]))===0)&&((i=b.Rune,j=b.Rune.$length-1>>0,((j<0||j>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+j]))===1114111)){a.WriteRune(94);k=1;while(true){if(!(k<(b.Rune.$length-1>>0))){break;}l=(m=b.Rune,((k<0||k>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+k]))+1>>0;n=(o=b.Rune,p=k+1>>0,((p<0||p>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+p]))-1>>0;q=l;r=n;BZ(a,q,q===45);if(!((q===r))){a.WriteRune(45);BZ(a,r,r===45);}k=k+(2)>>0;}}else{s=0;while(true){if(!(s<b.Rune.$length)){break;}t=(u=b.Rune,((s<0||s>=u.$length)?($throwRuntimeError("index out of range"),undefined):u.$array[u.$offset+s]));v=(w=b.Rune,x=s+1>>0,((x<0||x>=w.$length)?($throwRuntimeError("index out of range"),undefined):w.$array[w.$offset+x]));y=t;z=v;BZ(a,y,y===45);if(!((y===z))){a.WriteRune(45);BZ(a,z,z===45);}s=s+(2)>>0;}}a.WriteRune(93);}else if(c===(5)){a.WriteString("(?-s:.)");}else if(c===(6)){a.WriteString("(?s:.)");}else if(c===(7)){a.WriteString("(?m:^)");}else if(c===(8)){a.WriteString("(?m:$)");}else if(c===(9)){a.WriteString("\\A");}else if(c===(10)){if(!((((b.Flags&256)>>>0)===0))){a.WriteString("(?-m:$)");}else{a.WriteString("\\z");}}else if(c===(11)){a.WriteString("\\b");}else if(c===(12)){a.WriteString("\\B");}else if(c===(13)){if(!(b.Name==="")){a.WriteString("(?P<");a.WriteString(b.Name);a.WriteRune(62);}else{a.WriteRune(40);}if(!(((aa=b.Sub,(0>=aa.$length?($throwRuntimeError("index out of range"),undefined):aa.$array[aa.$offset+0])).Op===2))){BY(a,(ab=b.Sub,(0>=ab.$length?($throwRuntimeError("index out of range"),undefined):ab.$array[ab.$offset+0])));}a.WriteRune(41);}else if((c===(14))||(c===(15))||(c===(16))||(c===(17))){ad=(ac=b.Sub,(0>=ac.$length?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+0]));if(ad.Op>13||(ad.Op===3)&&ad.Rune.$length>1){a.WriteString("(?:");BY(a,ad);a.WriteString(")");}else{BY(a,ad);}ae=b.Op;if(ae===(14)){a.WriteRune(42);}else if(ae===(15)){a.WriteRune(43);}else if(ae===(16)){a.WriteRune(63);}else if(ae===(17)){a.WriteRune(123);a.WriteString(F.Itoa(b.Min));if(!((b.Max===b.Min))){a.WriteRune(44);if(b.Max>=0){a.WriteString(F.Itoa(b.Max));}}a.WriteRune(125);}if(!((((b.Flags&32)>>>0)===0))){a.WriteRune(63);}}else if(c===(18)){af=b.Sub;ag=0;while(true){if(!(ag<af.$length)){break;}ah=((ag<0||ag>=af.$length)?($throwRuntimeError("index out of range"),undefined):af.$array[af.$offset+ag]);if(ah.Op===19){a.WriteString("(?:");BY(a,ah);a.WriteString(")");}else{BY(a,ah);}ag++;}}else if(c===(19)){ai=b.Sub;aj=0;while(true){if(!(aj<ai.$length)){break;}ak=aj;al=((aj<0||aj>=ai.$length)?($throwRuntimeError("index out of range"),undefined):ai.$array[ai.$offset+aj]);if(ak>0){a.WriteRune(124);}BY(a,al);aj++;}}else{a.WriteString("<invalid op"+F.Itoa((b.Op>>0))+">");}}};BW.ptr.prototype.String=function(){var $ptr,a,b;a=this;b=new E.Buffer.ptr(CN.nil,0,CO.zero(),0);BY(b,a);return b.String();};BW.prototype.String=function(){return this.$val.String();};BZ=function(a,b,c){var $ptr,a,b,c,d,e;if(A.IsPrint(b)){if(C.ContainsRune("\\.+*?()|[]{}^$",b)||c){a.WriteRune(92);}a.WriteRune(b);return;}switch(0){default:d=b;if(d===(7)){a.WriteString("\\a");}else if(d===(12)){a.WriteString("\\f");}else if(d===(10)){a.WriteString("\\n");}else if(d===(13)){a.WriteString("\\r");}else if(d===(9)){a.WriteString("\\t");}else if(d===(11)){a.WriteString("\\v");}else{if(b<256){a.WriteString("\\x");e=F.FormatInt(new $Int64(0,b),16);if(e.length===1){a.WriteRune(48);}a.WriteString(e);break;}a.WriteString("\\x{");a.WriteString(F.FormatInt(new $Int64(0,b),16));a.WriteString("}");}}};BW.ptr.prototype.MaxCap=function(){var $ptr,a,b,c,d,e,f;a=this;b=0;if(a.Op===13){b=a.Cap;}c=a.Sub;d=0;while(true){if(!(d<c.$length)){break;}e=((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]);f=e.MaxCap();if(b<f){b=f;}d++;}return b;};BW.prototype.MaxCap=function(){return this.$val.MaxCap();};BW.ptr.prototype.CapNames=function(){var $ptr,a,b;a=this;b=$makeSlice(CE,(a.MaxCap()+1>>0));a.capNames(b);return b;};BW.prototype.CapNames=function(){return this.$val.CapNames();};BW.ptr.prototype.capNames=function(a){var $ptr,a,b,c,d,e,f;b=this;if(b.Op===13){(c=b.Cap,((c<0||c>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+c]=b.Name));}d=b.Sub;e=0;while(true){if(!(e<d.$length)){break;}f=((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]);f.capNames(a);e++;}};BW.prototype.capNames=function(a){return this.$val.capNames(a);};BW.ptr.prototype.Simplify=function(){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s;a=this;if(a===CH.nil){return CH.nil;}b=a.Op;if((b===(13))||(b===(18))||(b===(19))){c=a;d=a.Sub;e=0;while(true){if(!(e<d.$length)){break;}f=e;g=((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]);h=g.Simplify();if(c===a&&!(h===g)){c=new BW.ptr(0,0,CI.nil,CJ.zero(),CB.nil,CK.zero(),0,0,0,"");BW.copy(c,a);c.Rune=CB.nil;c.Sub=$appendSlice($subslice(new CI(c.Sub0),0,0),$subslice(a.Sub,0,f));}if(!(c===a)){c.Sub=$append(c.Sub,h);}e++;}return c;}else if((b===(14))||(b===(15))||(b===(16))){j=(i=a.Sub,(0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0])).Simplify();return CA(a.Op,a.Flags,j,a);}else if(b===(17)){if((a.Min===0)&&(a.Max===0)){return new BW.ptr(2,0,CI.nil,CJ.zero(),CB.nil,CK.zero(),0,0,0,"");}l=(k=a.Sub,(0>=k.$length?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+0])).Simplify();if(a.Max===-1){if(a.Min===0){return CA(14,a.Flags,l,CH.nil);}if(a.Min===1){return CA(15,a.Flags,l,CH.nil);}m=new BW.ptr(18,0,CI.nil,CJ.zero(),CB.nil,CK.zero(),0,0,0,"");m.Sub=$subslice(new CI(m.Sub0),0,0);n=0;while(true){if(!(n<(a.Min-1>>0))){break;}m.Sub=$append(m.Sub,l);n=n+(1)>>0;}m.Sub=$append(m.Sub,CA(15,a.Flags,l,CH.nil));return m;}if((a.Min===1)&&(a.Max===1)){return l;}o=CH.nil;if(a.Min>0){o=new BW.ptr(18,0,CI.nil,CJ.zero(),CB.nil,CK.zero(),0,0,0,"");o.Sub=$subslice(new CI(o.Sub0),0,0);p=0;while(true){if(!(p<a.Min)){break;}o.Sub=$append(o.Sub,l);p=p+(1)>>0;}}if(a.Max>a.Min){q=CA(16,a.Flags,l,CH.nil);r=a.Min+1>>0;while(true){if(!(r<a.Max)){break;}s=new BW.ptr(18,0,CI.nil,CJ.zero(),CB.nil,CK.zero(),0,0,0,"");s.Sub=$append($subslice(new CI(s.Sub0),0,0),l,q);q=CA(16,a.Flags,s,CH.nil);r=r+(1)>>0;}if(o===CH.nil){return q;}o.Sub=$append(o.Sub,q);}if(!(o===CH.nil)){return o;}return new BW.ptr(1,0,CI.nil,CJ.zero(),CB.nil,CK.zero(),0,0,0,"");}return a;};BW.prototype.Simplify=function(){return this.$val.Simplify();};CA=function(a,b,c,d){var $ptr,a,b,c,d,e;if(c.Op===2){return c;}if((a===c.Op)&&(((b&32)>>>0)===((c.Flags&32)>>>0))){return c;}if(!(d===CH.nil)&&(d.Op===a)&&(((d.Flags&32)>>>0)===((b&32)>>>0))&&c===(e=d.Sub,(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]))){return d;}d=new BW.ptr(a,b,CI.nil,CJ.zero(),CB.nil,CK.zero(),0,0,0,"");d.Sub=$append($subslice(new CI(d.Sub0),0,0),c);return d;};G.methods=[{prop:"next",name:"next",pkg:"regexp/syntax",typ:$funcType([CF],[G],false)},{prop:"patch",name:"patch",pkg:"regexp/syntax",typ:$funcType([CF,$Uint32],[],false)},{prop:"append",name:"append",pkg:"regexp/syntax",typ:$funcType([CF,G],[G],false)}];CP.methods=[{prop:"init",name:"init",pkg:"regexp/syntax",typ:$funcType([],[],false)},{prop:"compile",name:"compile",pkg:"regexp/syntax",typ:$funcType([CH],[H],false)},{prop:"inst",name:"inst",pkg:"regexp/syntax",typ:$funcType([BL],[H],false)},{prop:"nop",name:"nop",pkg:"regexp/syntax",typ:$funcType([],[H],false)},{prop:"fail",name:"fail",pkg:"regexp/syntax",typ:$funcType([],[H],false)},{prop:"cap",name:"cap",pkg:"regexp/syntax",typ:$funcType([$Uint32],[H],false)},{prop:"cat",name:"cat",pkg:"regexp/syntax",typ:$funcType([H,H],[H],false)},{prop:"alt",name:"alt",pkg:"regexp/syntax",typ:$funcType([H,H],[H],false)},{prop:"quest",name:"quest",pkg:"regexp/syntax",typ:$funcType([H,$Bool],[H],false)},{prop:"star",name:"star",pkg:"regexp/syntax",typ:$funcType([H,$Bool],[H],false)},{prop:"plus",name:"plus",pkg:"regexp/syntax",typ:$funcType([H,$Bool],[H],false)},{prop:"empty",name:"empty",pkg:"regexp/syntax",typ:$funcType([BN],[H],false)},{prop:"rune",name:"rune",pkg:"regexp/syntax",typ:$funcType([CB,O],[H],false)}];CQ.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];N.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];CR.methods=[{prop:"newRegexp",name:"newRegexp",pkg:"regexp/syntax",typ:$funcType([BX],[CH],false)},{prop:"reuse",name:"reuse",pkg:"regexp/syntax",typ:$funcType([CH],[],false)},{prop:"push",name:"push",pkg:"regexp/syntax",typ:$funcType([CH],[CH],false)},{prop:"maybeConcat",name:"maybeConcat",pkg:"regexp/syntax",typ:$funcType([$Int32,O],[$Bool],false)},{prop:"newLiteral",name:"newLiteral",pkg:"regexp/syntax",typ:$funcType([$Int32,O],[CH],false)},{prop:"literal",name:"literal",pkg:"regexp/syntax",typ:$funcType([$Int32],[],false)},{prop:"op",name:"op",pkg:"regexp/syntax",typ:$funcType([BX],[CH],false)},{prop:"repeat",name:"repeat",pkg:"regexp/syntax",typ:$funcType([BX,$Int,$Int,$String,$String,$String],[$String,$error],false)},{prop:"concat",name:"concat",pkg:"regexp/syntax",typ:$funcType([],[CH],false)},{prop:"alternate",name:"alternate",pkg:"regexp/syntax",typ:$funcType([],[CH],false)},{prop:"collapse",name:"collapse",pkg:"regexp/syntax",typ:$funcType([CI,BX],[CH],false)},{prop:"factor",name:"factor",pkg:"regexp/syntax",typ:$funcType([CI,O],[CI],false)},{prop:"leadingString",name:"leadingString",pkg:"regexp/syntax",typ:$funcType([CH],[CB,O],false)},{prop:"removeLeadingString",name:"removeLeadingString",pkg:"regexp/syntax",typ:$funcType([CH,$Int],[CH],false)},{prop:"leadingRegexp",name:"leadingRegexp",pkg:"regexp/syntax",typ:$funcType([CH],[CH],false)},{prop:"removeLeadingRegexp",name:"removeLeadingRegexp",pkg:"regexp/syntax",typ:$funcType([CH,$Bool],[CH],false)},{prop:"parseRepeat",name:"parseRepeat",pkg:"regexp/syntax",typ:$funcType([$String],[$Int,$Int,$String,$Bool],false)},{prop:"parsePerlFlags",name:"parsePerlFlags",pkg:"regexp/syntax",typ:$funcType([$String],[$String,$error],false)},{prop:"parseInt",name:"parseInt",pkg:"regexp/syntax",typ:$funcType([$String],[$Int,$String,$Bool],false)},{prop:"parseVerticalBar",name:"parseVerticalBar",pkg:"regexp/syntax",typ:$funcType([],[$error],false)},{prop:"swapVerticalBar",name:"swapVerticalBar",pkg:"regexp/syntax",typ:$funcType([],[$Bool],false)},{prop:"parseRightParen",name:"parseRightParen",pkg:"regexp/syntax",typ:$funcType([],[$error],false)},{prop:"parseEscape",name:"parseEscape",pkg:"regexp/syntax",typ:$funcType([$String],[$Int32,$String,$error],false)},{prop:"parseClassChar",name:"parseClassChar",pkg:"regexp/syntax",typ:$funcType([$String,$String],[$Int32,$String,$error],false)},{prop:"parsePerlClassEscape",name:"parsePerlClassEscape",pkg:"regexp/syntax",typ:$funcType([$String,CB],[CB,$String],false)},{prop:"parseNamedClass",name:"parseNamedClass",pkg:"regexp/syntax",typ:$funcType([$String,CB],[CB,$String,$error],false)},{prop:"appendGroup",name:"appendGroup",pkg:"regexp/syntax",typ:$funcType([CB,Z],[CB],false)},{prop:"parseUnicodeClass",name:"parseUnicodeClass",pkg:"regexp/syntax",typ:$funcType([$String,CB],[CB,$String,$error],false)},{prop:"parseClass",name:"parseClass",pkg:"regexp/syntax",typ:$funcType([$String],[$String,$error],false)}];AM.methods=[{prop:"Less",name:"Less",pkg:"",typ:$funcType([$Int,$Int],[$Bool],false)},{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Swap",name:"Swap",pkg:"",typ:$funcType([$Int,$Int],[],false)}];CF.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"skipNop",name:"skipNop",pkg:"regexp/syntax",typ:$funcType([$Uint32],[CS,$Uint32],false)},{prop:"Prefix",name:"Prefix",pkg:"",typ:$funcType([],[$String,$Bool],false)},{prop:"StartCond",name:"StartCond",pkg:"",typ:$funcType([],[BN],false)}];BL.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];CS.methods=[{prop:"op",name:"op",pkg:"regexp/syntax",typ:$funcType([],[BL],false)},{prop:"MatchRune",name:"MatchRune",pkg:"",typ:$funcType([$Int32],[$Bool],false)},{prop:"MatchRunePos",name:"MatchRunePos",pkg:"",typ:$funcType([$Int32],[$Int],false)},{prop:"MatchEmptyWidth",name:"MatchEmptyWidth",pkg:"",typ:$funcType([$Int32,$Int32],[$Bool],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];CH.methods=[{prop:"Equal",name:"Equal",pkg:"",typ:$funcType([CH],[$Bool],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"MaxCap",name:"MaxCap",pkg:"",typ:$funcType([],[$Int],false)},{prop:"CapNames",name:"CapNames",pkg:"",typ:$funcType([],[CE],false)},{prop:"capNames",name:"capNames",pkg:"regexp/syntax",typ:$funcType([CE],[],false)},{prop:"Simplify",name:"Simplify",pkg:"",typ:$funcType([],[CH],false)}];H.init("regexp/syntax",[{prop:"i",name:"i",exported:false,typ:$Uint32,tag:""},{prop:"out",name:"out",exported:false,typ:G,tag:""}]);I.init("regexp/syntax",[{prop:"p",name:"p",exported:false,typ:CF,tag:""}]);M.init("",[{prop:"Code",name:"Code",exported:true,typ:N,tag:""},{prop:"Expr",name:"Expr",exported:true,typ:$String,tag:""}]);P.init("regexp/syntax",[{prop:"flags",name:"flags",exported:false,typ:O,tag:""},{prop:"stack",name:"stack",exported:false,typ:CI,tag:""},{prop:"free",name:"free",exported:false,typ:CH,tag:""},{prop:"numCap",name:"numCap",exported:false,typ:$Int,tag:""},{prop:"wholeRegexp",name:"wholeRegexp",exported:false,typ:$String,tag:""},{prop:"tmpClass",name:"tmpClass",exported:false,typ:CB,tag:""}]);Z.init("regexp/syntax",[{prop:"sign",name:"sign",exported:false,typ:$Int,tag:""},{prop:"class$1",name:"class",exported:false,typ:CB,tag:""}]);AM.init("regexp/syntax",[{prop:"p",name:"p",exported:false,typ:CL,tag:""}]);BK.init("",[{prop:"Inst",name:"Inst",exported:true,typ:CG,tag:""},{prop:"Start",name:"Start",exported:true,typ:$Int,tag:""},{prop:"NumCap",name:"NumCap",exported:true,typ:$Int,tag:""}]);BQ.init("",[{prop:"Op",name:"Op",exported:true,typ:BL,tag:""},{prop:"Out",name:"Out",exported:true,typ:$Uint32,tag:""},{prop:"Arg",name:"Arg",exported:true,typ:$Uint32,tag:""},{prop:"Rune",name:"Rune",exported:true,typ:CB,tag:""}]);BW.init("",[{prop:"Op",name:"Op",exported:true,typ:BX,tag:""},{prop:"Flags",name:"Flags",exported:true,typ:O,tag:""},{prop:"Sub",name:"Sub",exported:true,typ:CI,tag:""},{prop:"Sub0",name:"Sub0",exported:true,typ:CJ,tag:""},{prop:"Rune",name:"Rune",exported:true,typ:CB,tag:""},{prop:"Rune0",name:"Rune0",exported:true,typ:CK,tag:""},{prop:"Min",name:"Min",exported:true,typ:$Int,tag:""},{prop:"Max",name:"Max",exported:true,typ:$Int,tag:""},{prop:"Cap",name:"Cap",exported:true,typ:$Int,tag:""},{prop:"Name",name:"Name",exported:true,typ:$String,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=E.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}K=new CB([0,9,11,1114111]);L=new CB([0,1114111]);AA=new A.RangeTable.ptr(new CC([new A.Range16.ptr(0,65535,1)]),new CD([new A.Range32.ptr(65536,1114111,1)]),0);AR=new CB([48,57]);AS=new CB([9,10,12,13,32,32]);AT=new CB([48,57,65,90,95,95,97,122]);AU=$makeMap($String.keyFor,[{k:"\\d",v:new Z.ptr(1,AR)},{k:"\\D",v:new Z.ptr(-1,AR)},{k:"\\s",v:new Z.ptr(1,AS)},{k:"\\S",v:new Z.ptr(-1,AS)},{k:"\\w",v:new Z.ptr(1,AT)},{k:"\\W",v:new Z.ptr(-1,AT)}]);AV=new CB([48,57,65,90,97,122]);AW=new CB([65,90,97,122]);AX=new CB([0,127]);AY=new CB([9,9,32,32]);AZ=new CB([0,31,127,127]);BA=new CB([48,57]);BB=new CB([33,126]);BC=new CB([97,122]);BD=new CB([32,126]);BE=new CB([33,47,58,64,91,96,123,126]);BF=new CB([9,13,32,32]);BG=new CB([65,90]);BH=new CB([48,57,65,90,95,95,97,122]);BI=new CB([48,57,65,70,97,102]);BJ=$makeMap($String.keyFor,[{k:"[:alnum:]",v:new Z.ptr(1,AV)},{k:"[:^alnum:]",v:new Z.ptr(-1,AV)},{k:"[:alpha:]",v:new Z.ptr(1,AW)},{k:"[:^alpha:]",v:new Z.ptr(-1,AW)},{k:"[:ascii:]",v:new Z.ptr(1,AX)},{k:"[:^ascii:]",v:new Z.ptr(-1,AX)},{k:"[:blank:]",v:new Z.ptr(1,AY)},{k:"[:^blank:]",v:new Z.ptr(-1,AY)},{k:"[:cntrl:]",v:new Z.ptr(1,AZ)},{k:"[:^cntrl:]",v:new Z.ptr(-1,AZ)},{k:"[:digit:]",v:new Z.ptr(1,BA)},{k:"[:^digit:]",v:new Z.ptr(-1,BA)},{k:"[:graph:]",v:new Z.ptr(1,BB)},{k:"[:^graph:]",v:new Z.ptr(-1,BB)},{k:"[:lower:]",v:new Z.ptr(1,BC)},{k:"[:^lower:]",v:new Z.ptr(-1,BC)},{k:"[:print:]",v:new Z.ptr(1,BD)},{k:"[:^print:]",v:new Z.ptr(-1,BD)},{k:"[:punct:]",v:new Z.ptr(1,BE)},{k:"[:^punct:]",v:new Z.ptr(-1,BE)},{k:"[:space:]",v:new Z.ptr(1,BF)},{k:"[:^space:]",v:new Z.ptr(-1,BF)},{k:"[:upper:]",v:new Z.ptr(1,BG)},{k:"[:^upper:]",v:new Z.ptr(-1,BG)},{k:"[:word:]",v:new Z.ptr(1,BH)},{k:"[:^word:]",v:new Z.ptr(-1,BH)},{k:"[:xdigit:]",v:new Z.ptr(1,BI)},{k:"[:^xdigit:]",v:new Z.ptr(-1,BI)}]);BM=new CE(["InstAlt","InstAltMatch","InstCapture","InstEmptyWidth","InstMatch","InstFail","InstNop","InstRune","InstRune1","InstRuneAny","InstRuneAnyNotNL"]);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["regexp"]=(function(){var $pkg={},$init,C,H,B,A,D,F,G,E,I,J,K,P,Q,R,S,V,W,AA,AH,AN,AO,AV,AW,AX,AY,BG,BH,BI,BJ,BK,BL,BM,BN,BO,BP,BQ,BR,BS,BT,BU,BV,BW,BX,BY,BZ,CA,CB,CC,CD,CE,CF,CG,CH,CI,CJ,CK,CL,CM,CN,CO,CP,CQ,CR,L,U,AC,AD,AI,AJ,AL,M,N,O,T,X,Y,Z,AB,AE,AF,AG,AK,AM,AP,AR,AS,AU,BA,BF;C=$packages["bytes"];H=$packages["github.com/gopherjs/gopherjs/nosync"];B=$packages["io"];A=$packages["regexp/syntax"];D=$packages["sort"];F=$packages["strconv"];G=$packages["strings"];E=$packages["unicode"];I=$packages["unicode/utf8"];J=$pkg.job=$newType(0,$kindStruct,"regexp.job",true,"regexp",false,function(pc_,arg_,pos_){this.$val=this;if(arguments.length===0){this.pc=0;this.arg=0;this.pos=0;return;}this.pc=pc_;this.arg=arg_;this.pos=pos_;});K=$pkg.bitState=$newType(0,$kindStruct,"regexp.bitState",true,"regexp",false,function(prog_,end_,cap_,jobs_,visited_){this.$val=this;if(arguments.length===0){this.prog=BM.nil;this.end=0;this.cap=BN.nil;this.jobs=BO.nil;this.visited=BJ.nil;return;}this.prog=prog_;this.end=end_;this.cap=cap_;this.jobs=jobs_;this.visited=visited_;});P=$pkg.queue=$newType(0,$kindStruct,"regexp.queue",true,"regexp",false,function(sparse_,dense_){this.$val=this;if(arguments.length===0){this.sparse=BJ.nil;this.dense=BQ.nil;return;}this.sparse=sparse_;this.dense=dense_;});Q=$pkg.entry=$newType(0,$kindStruct,"regexp.entry",true,"regexp",false,function(pc_,t_){this.$val=this;if(arguments.length===0){this.pc=0;this.t=BR.nil;return;}this.pc=pc_;this.t=t_;});R=$pkg.thread=$newType(0,$kindStruct,"regexp.thread",true,"regexp",false,function(inst_,cap_){this.$val=this;if(arguments.length===0){this.inst=BT.nil;this.cap=BN.nil;return;}this.inst=inst_;this.cap=cap_;});S=$pkg.machine=$newType(0,$kindStruct,"regexp.machine",true,"regexp",false,function(re_,p_,op_,maxBitStateLen_,b_,q0_,q1_,pool_,matched_,matchcap_,inputBytes_,inputString_,inputReader_){this.$val=this;if(arguments.length===0){this.re=BP.nil;this.p=BM.nil;this.op=BK.nil;this.maxBitStateLen=0;this.b=BH.nil;this.q0=new P.ptr(BJ.nil,BQ.nil);this.q1=new P.ptr(BJ.nil,BQ.nil);this.pool=BS.nil;this.matched=false;this.matchcap=BN.nil;this.inputBytes=new AX.ptr(BL.nil);this.inputString=new AW.ptr("");this.inputReader=new AY.ptr($ifaceNil,false,0);return;}this.re=re_;this.p=p_;this.op=op_;this.maxBitStateLen=maxBitStateLen_;this.b=b_;this.q0=q0_;this.q1=q1_;this.pool=pool_;this.matched=matched_;this.matchcap=matchcap_;this.inputBytes=inputBytes_;this.inputString=inputString_;this.inputReader=inputReader_;});V=$pkg.onePassProg=$newType(0,$kindStruct,"regexp.onePassProg",true,"regexp",false,function(Inst_,Start_,NumCap_){this.$val=this;if(arguments.length===0){this.Inst=BX.nil;this.Start=0;this.NumCap=0;return;}this.Inst=Inst_;this.Start=Start_;this.NumCap=NumCap_;});W=$pkg.onePassInst=$newType(0,$kindStruct,"regexp.onePassInst",true,"regexp",false,function(Inst_,Next_){this.$val=this;if(arguments.length===0){this.Inst=new A.Inst.ptr(0,0,0,BI.nil);this.Next=BJ.nil;return;}this.Inst=Inst_;this.Next=Next_;});AA=$pkg.queueOnePass=$newType(0,$kindStruct,"regexp.queueOnePass",true,"regexp",false,function(sparse_,dense_,size_,nextIndex_){this.$val=this;if(arguments.length===0){this.sparse=BJ.nil;this.dense=BJ.nil;this.size=0;this.nextIndex=0;return;}this.sparse=sparse_;this.dense=dense_;this.size=size_;this.nextIndex=nextIndex_;});AH=$pkg.runeSlice=$newType(12,$kindSlice,"regexp.runeSlice",true,"regexp",false,null);AN=$pkg.Regexp=$newType(0,$kindStruct,"regexp.Regexp",true,"regexp",true,function(regexpRO_,mu_,machine_){this.$val=this;if(arguments.length===0){this.regexpRO=new AO.ptr("",BM.nil,BK.nil,"",BL.nil,false,0,0,0,0,CB.nil,false);this.mu=new H.Mutex.ptr(false);this.machine=CD.nil;return;}this.regexpRO=regexpRO_;this.mu=mu_;this.machine=machine_;});AO=$pkg.regexpRO=$newType(0,$kindStruct,"regexp.regexpRO",true,"regexp",false,function(expr_,prog_,onepass_,prefix_,prefixBytes_,prefixComplete_,prefixRune_,prefixEnd_,cond_,numSubexp_,subexpNames_,longest_){this.$val=this;if(arguments.length===0){this.expr="";this.prog=BM.nil;this.onepass=BK.nil;this.prefix="";this.prefixBytes=BL.nil;this.prefixComplete=false;this.prefixRune=0;this.prefixEnd=0;this.cond=0;this.numSubexp=0;this.subexpNames=CB.nil;this.longest=false;return;}this.expr=expr_;this.prog=prog_;this.onepass=onepass_;this.prefix=prefix_;this.prefixBytes=prefixBytes_;this.prefixComplete=prefixComplete_;this.prefixRune=prefixRune_;this.prefixEnd=prefixEnd_;this.cond=cond_;this.numSubexp=numSubexp_;this.subexpNames=subexpNames_;this.longest=longest_;});AV=$pkg.input=$newType(8,$kindInterface,"regexp.input",true,"regexp",false,null);AW=$pkg.inputString=$newType(0,$kindStruct,"regexp.inputString",true,"regexp",false,function(str_){this.$val=this;if(arguments.length===0){this.str="";return;}this.str=str_;});AX=$pkg.inputBytes=$newType(0,$kindStruct,"regexp.inputBytes",true,"regexp",false,function(str_){this.$val=this;if(arguments.length===0){this.str=BL.nil;return;}this.str=str_;});AY=$pkg.inputReader=$newType(0,$kindStruct,"regexp.inputReader",true,"regexp",false,function(r_,atEOT_,pos_){this.$val=this;if(arguments.length===0){this.r=$ifaceNil;this.atEOT=false;this.pos=0;return;}this.r=r_;this.atEOT=atEOT_;this.pos=pos_;});BG=$arrayType($Int,0);BH=$ptrType(K);BI=$sliceType($Int32);BJ=$sliceType($Uint32);BK=$ptrType(V);BL=$sliceType($Uint8);BM=$ptrType(A.Prog);BN=$sliceType($Int);BO=$sliceType(J);BP=$ptrType(AN);BQ=$sliceType(Q);BR=$ptrType(R);BS=$sliceType(BR);BT=$ptrType(A.Inst);BU=$ptrType($Int);BV=$arrayType($Uint8,64);BW=$ptrType(AA);BX=$sliceType(W);BY=$ptrType($Uint32);BZ=$sliceType(BI);CA=$ptrType(BI);CB=$sliceType($String);CC=$ptrType(S);CD=$sliceType(CC);CE=$arrayType($Int,2);CF=$arrayType($Int,4);CG=$sliceType(BL);CH=$sliceType(BN);CI=$sliceType(CG);CJ=$sliceType(CB);CK=$ptrType(P);CL=$funcType([$String],[$String],false);CM=$funcType([BL,BN],[BL],false);CN=$funcType([BL],[BL],false);CO=$funcType([BN],[],false);CP=$ptrType(AW);CQ=$ptrType(AX);CR=$ptrType(AY);M=function(a){var $ptr,a,b;if(!O(a)){return 0;}return(b=262144/a.Inst.$length,(b===b&&b!==1/0&&b!==-1/0)?b>>0:$throwRuntimeError("integer divide by zero"));};N=function(a){var $ptr,a;if(!O(a)){return L;}return new K.ptr(a,0,BN.nil,BO.nil,BJ.nil);};O=function(a){var $ptr,a;return a.Inst.$length<=500;};K.ptr.prototype.reset=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m;c=this;c.end=a;if(c.jobs.$capacity===0){c.jobs=$makeSlice(BO,0,256);}else{c.jobs=$subslice(c.jobs,0,0);}e=(d=(((($imul(c.prog.Inst.$length,((a+1>>0))))+32>>0)-1>>0))/32,(d===d&&d!==1/0&&d!==-1/0)?d>>0:$throwRuntimeError("integer divide by zero"));if(c.visited.$capacity<e){c.visited=$makeSlice(BJ,e,8192);}else{c.visited=$subslice(c.visited,0,e);f=c.visited;g=0;while(true){if(!(g<f.$length)){break;}h=g;(i=c.visited,((h<0||h>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+h]=0));g++;}}if(c.cap.$capacity<b){c.cap=$makeSlice(BN,b);}else{c.cap=$subslice(c.cap,0,b);}j=c.cap;k=0;while(true){if(!(k<j.$length)){break;}l=k;(m=c.cap,((l<0||l>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+l]=-1));k++;}};K.prototype.reset=function(a,b){return this.$val.reset(a,b);};K.ptr.prototype.shouldVisit=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m;c=this;d=((($imul((a>>0),((c.end+1>>0))))+b>>0)>>>0);if(!(((((e=c.visited,f=(g=d/32,(g===g&&g!==1/0&&g!==-1/0)?g>>>0:$throwRuntimeError("integer divide by zero")),((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]))&(((h=(((d&31)>>>0)),h<32?(1<<h):0)>>>0)))>>>0)===0))){return false;}j=(i=d/32,(i===i&&i!==1/0&&i!==-1/0)?i>>>0:$throwRuntimeError("integer divide by zero"));(m=c.visited,((j<0||j>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+j]=(((k=c.visited,((j<0||j>=k.$length)?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+j]))|(((l=(((d&31)>>>0)),l<32?(1<<l):0)>>>0)))>>>0)));return true;};K.prototype.shouldVisit=function(a,b){return this.$val.shouldVisit(a,b);};K.ptr.prototype.push=function(a,b,c){var $ptr,a,b,c,d,e;d=this;if((e=d.prog.Inst,((a<0||a>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+a])).Op===5){return;}if((c===0)&&!d.shouldVisit(a,b)){return;}d.jobs=$append(d.jobs,new J.ptr(a,c,b));};K.prototype.push=function(a,b,c){return this.$val.push(a,b,c);};S.ptr.prototype.tryBacktrack=function(a,b,c,d){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=this;f=e.re.regexpRO.longest;e.matched=false;a.push(c,d,0);case 1:if(!(a.jobs.$length>0)){$s=2;continue;}g=a.jobs.$length-1>>0;i=(h=a.jobs,((g<0||g>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+g])).pc;k=(j=a.jobs,((g<0||g>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+g])).pos;m=(l=a.jobs,((g<0||g>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+g])).arg;a.jobs=$subslice(a.jobs,0,g);$s=3;continue;case 4:if(!a.shouldVisit(i,k)){$s=1;continue;}case 3:o=$clone((n=a.prog.Inst,((i<0||i>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+i])),A.Inst);p=o.Op;if(p===(5)){$s=6;continue;}if(p===(0)){$s=7;continue;}if(p===(1)){$s=8;continue;}if(p===(7)){$s=9;continue;}if(p===(8)){$s=10;continue;}if(p===(10)){$s=11;continue;}if(p===(9)){$s=12;continue;}if(p===(2)){$s=13;continue;}if(p===(3)){$s=14;continue;}if(p===(6)){$s=15;continue;}if(p===(4)){$s=16;continue;}$s=17;continue;case 6:$panic(new $String("unexpected InstFail"));$s=18;continue;case 7:q=m;if(q===(0)){$s=20;continue;}if(q===(1)){$s=21;continue;}$s=22;continue;case 20:a.push(i,k,1);i=o.Out;$s=4;continue;$s=22;continue;case 21:m=0;i=o.Arg;$s=4;continue;case 22:case 19:$panic(new $String("bad arg in InstAlt"));$s=18;continue;case 8:t=(r=a.prog.Inst,s=o.Out,((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s])).Op;if((t===(7))||(t===(8))||(t===(9))||(t===(10))){$s=24;continue;}$s=25;continue;case 24:a.push(o.Arg,k,0);i=o.Arg;k=a.end;$s=4;continue;case 25:case 23:a.push(o.Out,a.end,0);i=o.Out;$s=4;continue;$s=18;continue;case 9:v=b.step(k);$s=26;case 26:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}u=v;w=u[0];x=u[1];if(!o.MatchRune(w)){$s=27;continue;}$s=28;continue;case 27:$s=1;continue;case 28:k=k+(x)>>0;i=o.Out;$s=4;continue;$s=18;continue;case 10:z=b.step(k);$s=29;case 29:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}y=z;aa=y[0];ab=y[1];if(!((aa===(ac=o.Rune,(0>=ac.$length?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+0]))))){$s=30;continue;}$s=31;continue;case 30:$s=1;continue;case 31:k=k+(ab)>>0;i=o.Out;$s=4;continue;$s=18;continue;case 11:ae=b.step(k);$s=32;case 32:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}ad=ae;af=ad[0];ag=ad[1];if((af===10)||(af===-1)){$s=33;continue;}$s=34;continue;case 33:$s=1;continue;case 34:k=k+(ag)>>0;i=o.Out;$s=4;continue;$s=18;continue;case 12:ai=b.step(k);$s=35;case 35:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ah=ai;aj=ah[0];ak=ah[1];if(aj===-1){$s=36;continue;}$s=37;continue;case 36:$s=1;continue;case 37:k=k+(ak)>>0;i=o.Out;$s=4;continue;$s=18;continue;case 13:al=m;if(al===(0)){$s=39;continue;}if(al===(1)){$s=40;continue;}$s=41;continue;case 39:if(0<=o.Arg&&o.Arg<(a.cap.$length>>>0)){a.push(i,(am=a.cap,an=o.Arg,((an<0||an>=am.$length)?($throwRuntimeError("index out of range"),undefined):am.$array[am.$offset+an])),1);(ao=a.cap,ap=o.Arg,((ap<0||ap>=ao.$length)?($throwRuntimeError("index out of range"),undefined):ao.$array[ao.$offset+ap]=k));}i=o.Out;$s=4;continue;$s=41;continue;case 40:(aq=a.cap,ar=o.Arg,((ar<0||ar>=aq.$length)?($throwRuntimeError("index out of range"),undefined):aq.$array[aq.$offset+ar]=k));$s=1;continue;case 41:case 38:$panic(new $String("bad arg in InstCapture"));$s=18;continue;case 14:as=b.context(k);$s=44;case 44:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}if(!(((((o.Arg<<24>>>24)&~as)<<24>>>24)===0))){$s=42;continue;}$s=43;continue;case 42:$s=1;continue;case 43:i=o.Out;$s=4;continue;$s=18;continue;case 15:i=o.Out;$s=4;continue;$s=18;continue;case 16:if(a.cap.$length===0){e.matched=true;$s=-1;return e.matched;}if(a.cap.$length>1){(at=a.cap,(1>=at.$length?($throwRuntimeError("index out of range"),undefined):at.$array[at.$offset+1]=k));}if(!e.matched||(f&&k>0&&k>(au=e.matchcap,(1>=au.$length?($throwRuntimeError("index out of range"),undefined):au.$array[au.$offset+1])))){$copySlice(e.matchcap,a.cap);}e.matched=true;if(!f){$s=-1;return e.matched;}if(k===a.end){$s=-1;return e.matched;}$s=1;continue;$s=18;continue;case 17:$panic(new $String("bad inst"));case 18:case 5:$s=1;continue;case 2:$s=-1;return e.matched;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.tryBacktrack};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};S.prototype.tryBacktrack=function(a,b,c,d){return this.$val.tryBacktrack(a,b,c,d);};S.ptr.prototype.backtrack=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=this;f=a.canCheckPrefix();$s=3;case 3:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}if(!f){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("backtrack called for a RuneReader"));case 2:g=e.re.regexpRO.cond;if(g===255){$s=-1;return false;}if(!((((g&4)>>>0)===0))&&!((b===0))){$s=-1;return false;}h=e.b;h.reset(c,d);e.matchcap=$subslice(e.matchcap,0,d);i=e.matchcap;j=0;while(true){if(!(j<i.$length)){break;}k=j;(l=e.matchcap,((k<0||k>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+k]=-1));j++;}if(!((((g&4)>>>0)===0))){$s=4;continue;}$s=5;continue;case 4:if(h.cap.$length>0){(m=h.cap,(0>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+0]=b));}n=e.tryBacktrack(h,a,(e.p.Start>>>0),b);$s=6;case 6:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$s=-1;return n;case 5:o=-1;case 7:if(!(b<=c&&!((o===0)))){$s=8;continue;}if(e.re.regexpRO.prefix.length>0){$s=9;continue;}$s=10;continue;case 9:p=a.index(e.re,b);$s=11;case 11:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}q=p;if(q<0){$s=-1;return false;}b=b+(q)>>0;case 10:if(h.cap.$length>0){(r=h.cap,(0>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+0]=b));}s=e.tryBacktrack(h,a,(e.p.Start>>>0),b);$s=14;case 14:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}if(s){$s=12;continue;}$s=13;continue;case 12:$s=-1;return true;case 13:u=a.step(b);$s=15;case 15:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}t=u;o=t[1];b=b+(o)>>0;$s=7;continue;case 8:$s=-1;return false;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.backtrack};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.$s=$s;$f.$r=$r;return $f;};S.prototype.backtrack=function(a,b,c,d){return this.$val.backtrack(a,b,c,d);};S.ptr.prototype.newInputBytes=function(a){var $ptr,a,b;b=this;b.inputBytes.str=a;return b.inputBytes;};S.prototype.newInputBytes=function(a){return this.$val.newInputBytes(a);};S.ptr.prototype.newInputString=function(a){var $ptr,a,b;b=this;b.inputString.str=a;return b.inputString;};S.prototype.newInputString=function(a){return this.$val.newInputString(a);};S.ptr.prototype.newInputReader=function(a){var $ptr,a,b;b=this;b.inputReader.r=a;b.inputReader.atEOT=false;b.inputReader.pos=0;return b.inputReader;};S.prototype.newInputReader=function(a){return this.$val.newInputReader(a);};T=function(a,b){var $ptr,a,b,c,d,e;c=new S.ptr(BP.nil,a,b,0,BH.nil,new P.ptr(BJ.nil,BQ.nil),new P.ptr(BJ.nil,BQ.nil),BS.nil,false,BN.nil,new AX.ptr(BL.nil),new AW.ptr(""),new AY.ptr($ifaceNil,false,0));d=c.p.Inst.$length;P.copy(c.q0,new P.ptr($makeSlice(BJ,d),$makeSlice(BQ,0,d)));P.copy(c.q1,new P.ptr($makeSlice(BJ,d),$makeSlice(BQ,0,d)));e=a.NumCap;if(e<2){e=2;}if(b===AL){c.maxBitStateLen=M(a);}c.matchcap=$makeSlice(BN,e);return c;};S.ptr.prototype.init=function(a){var $ptr,a,b,c,d,e;b=this;c=b.pool;d=0;while(true){if(!(d<c.$length)){break;}e=((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]);e.cap=$subslice(e.cap,0,a);d++;}b.matchcap=$subslice(b.matchcap,0,a);};S.prototype.init=function(a){return this.$val.init(a);};S.ptr.prototype.alloc=function(a){var $ptr,a,b,c,d,e,f;b=this;c=BR.nil;d=b.pool.$length;if(d>0){c=(e=b.pool,f=d-1>>0,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]));b.pool=$subslice(b.pool,0,(d-1>>0));}else{c=new R.ptr(BT.nil,BN.nil);c.cap=$makeSlice(BN,b.matchcap.$length,b.matchcap.$capacity);}c.inst=a;return c;};S.prototype.alloc=function(a){return this.$val.alloc(a);};S.ptr.prototype.match=function(a,b){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;d=c.re.regexpRO.cond;if(d===255){$s=-1;return false;}c.matched=false;e=c.matchcap;f=0;while(true){if(!(f<e.$length)){break;}g=f;(h=c.matchcap,((g<0||g>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+g]=-1));f++;}i=c.q0;j=c.q1;k=i;l=j;m=-1;n=-1;o=m;p=n;q=0;r=0;s=q;t=r;v=a.step(b);$s=1;case 1:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}u=v;o=u[0];s=u[1];if(!((o===-1))){$s=2;continue;}$s=3;continue;case 2:x=a.step(b+s>>0);$s=4;case 4:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}w=x;p=w[0];t=w[1];case 3:y=0;if(b===0){$s=5;continue;}$s=6;continue;case 5:y=A.EmptyOpContext(-1,o);$s=7;continue;case 6:z=a.context(b);$s=8;case 8:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}y=z;case 7:case 9:if(k.dense.$length===0){$s=11;continue;}$s=12;continue;case 11:if(!((((d&4)>>>0)===0))&&!((b===0))){$s=10;continue;}if(c.matched){$s=10;continue;}if(!(c.re.regexpRO.prefix.length>0&&!((p===c.re.regexpRO.prefixRune)))){aa=false;$s=15;continue s;}ab=a.canCheckPrefix();$s=16;case 16:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}aa=ab;case 15:if(aa){$s=13;continue;}$s=14;continue;case 13:ac=a.index(c.re,b);$s=17;case 17:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ad=ac;if(ad<0){$s=10;continue;}b=b+(ad)>>0;af=a.step(b);$s=18;case 18:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}ae=af;o=ae[0];s=ae[1];ah=a.step(b+s>>0);$s=19;case 19:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ag=ah;p=ag[0];t=ag[1];case 14:case 12:if(!c.matched){if(c.matchcap.$length>0){(ai=c.matchcap,(0>=ai.$length?($throwRuntimeError("index out of range"),undefined):ai.$array[ai.$offset+0]=b));}c.add(k,(c.p.Start>>>0),b,c.matchcap,y,BR.nil);}y=A.EmptyOpContext(o,p);c.step(k,l,b,b+s>>0,o,y);if(s===0){$s=10;continue;}if((c.matchcap.$length===0)&&c.matched){$s=10;continue;}b=b+(s)>>0;aj=p;ak=t;o=aj;s=ak;if(!((o===-1))){$s=20;continue;}$s=21;continue;case 20:am=a.step(b+s>>0);$s=22;case 22:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}al=am;p=al[0];t=al[1];case 21:an=l;ao=k;k=an;l=ao;$s=9;continue;case 10:c.clear(l);$s=-1;return c.matched;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.match};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};S.prototype.match=function(a,b){return this.$val.match(a,b);};S.ptr.prototype.clear=function(a){var $ptr,a,b,c,d,e;b=this;c=a.dense;d=0;while(true){if(!(d<c.$length)){break;}e=$clone(((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]),Q);if(!(e.t===BR.nil)){b.pool=$append(b.pool,e.t);}d++;}a.dense=$subslice(a.dense,0,0);};S.prototype.clear=function(a){return this.$val.clear(a);};S.ptr.prototype.step=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w;g=this;h=g.re.regexpRO.longest;i=0;while(true){if(!(i<a.dense.$length)){break;}k=(j=a.dense,((i<0||i>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+i]));l=k.t;if(l===BR.nil){i=i+(1)>>0;continue;}if(h&&g.matched&&l.cap.$length>0&&(m=g.matchcap,(0>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+0]))<(n=l.cap,(0>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+0]))){g.pool=$append(g.pool,l);i=i+(1)>>0;continue;}o=l.inst;p=false;q=o.Op;if(q===(4)){if(l.cap.$length>0&&(!h||!g.matched||(r=g.matchcap,(1>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+1]))<c)){(s=l.cap,(1>=s.$length?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+1]=c));$copySlice(g.matchcap,l.cap);}if(!h){t=$subslice(a.dense,(i+1>>0));u=0;while(true){if(!(u<t.$length)){break;}v=$clone(((u<0||u>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+u]),Q);if(!(v.t===BR.nil)){g.pool=$append(g.pool,v.t);}u++;}a.dense=$subslice(a.dense,0,0);}g.matched=true;}else if(q===(7)){p=o.MatchRune(e);}else if(q===(8)){p=e===(w=o.Rune,(0>=w.$length?($throwRuntimeError("index out of range"),undefined):w.$array[w.$offset+0]));}else if(q===(9)){p=true;}else if(q===(10)){p=!((e===10));}else{$panic(new $String("bad inst"));}if(p){l=g.add(b,o.Out,d,l.cap,f,l);}if(!(l===BR.nil)){g.pool=$append(g.pool,l);}i=i+(1)>>0;}a.dense=$subslice(a.dense,0,0);};S.prototype.step=function(a,b,c,d,e,f){return this.$val.step(a,b,c,d,e,f);};S.ptr.prototype.add=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v;g=this;if(b===0){return f;}i=(h=a.sparse,((b<0||b>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+b]));if(i<(a.dense.$length>>>0)&&((j=a.dense,((i<0||i>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+i])).pc===b)){return f;}k=a.dense.$length;a.dense=$subslice(a.dense,0,(k+1>>0));m=(l=a.dense,((k<0||k>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+k]));m.t=BR.nil;m.pc=b;(n=a.sparse,((b<0||b>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+b]=(k>>>0)));p=(o=g.p.Inst,((b<0||b>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+b]));q=p.Op;if(q===(5)){}else if((q===(0))||(q===(1))){f=g.add(a,p.Out,c,d,e,f);f=g.add(a,p.Arg,c,d,e,f);}else if(q===(3)){if((((p.Arg<<24>>>24)&~e)<<24>>>24)===0){f=g.add(a,p.Out,c,d,e,f);}}else if(q===(6)){f=g.add(a,p.Out,c,d,e,f);}else if(q===(2)){if((p.Arg>>0)<d.$length){s=(r=p.Arg,((r<0||r>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+r]));(t=p.Arg,((t<0||t>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+t]=c));g.add(a,p.Out,c,d,e,BR.nil);(u=p.Arg,((u<0||u>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+u]=s));}else{f=g.add(a,p.Out,c,d,e,f);}}else if((q===(4))||(q===(7))||(q===(8))||(q===(9))||(q===(10))){if(f===BR.nil){f=g.alloc(p);}else{f.inst=p;}if(d.$length>0&&!((v=f.cap,$indexPtr(v.$array,v.$offset+0,BU))===$indexPtr(d.$array,d.$offset+0,BU))){$copySlice(f.cap,d);}m.t=f;f=BR.nil;}else{$panic(new $String("unhandled"));}return f;};S.prototype.add=function(a,b,c,d,e,f){return this.$val.add(a,b,c,d,e,f);};S.ptr.prototype.onepass=function(a,b){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=[c];d=this;e=d.re.regexpRO.cond;if(e===255){$s=-1;return false;}d.matched=false;f=d.matchcap;g=0;while(true){if(!(g<f.$length)){break;}h=g;(i=d.matchcap,((h<0||h>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+h]=-1));g++;}j=-1;k=-1;l=j;m=k;n=0;o=0;p=n;q=o;s=a.step(b);$s=1;case 1:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;l=r[0];p=r[1];if(!((l===-1))){$s=2;continue;}$s=3;continue;case 2:u=a.step(b+p>>0);$s=4;case 4:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}t=u;m=t[0];q=t[1];case 3:v=0;if(b===0){$s=5;continue;}$s=6;continue;case 5:v=A.EmptyOpContext(-1,l);$s=7;continue;case 6:w=a.context(b);$s=8;case 8:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}v=w;case 7:x=d.op.Start;c[0]=$clone((y=d.op.Inst,((x<0||x>=y.$length)?($throwRuntimeError("index out of range"),undefined):y.$array[y.$offset+x])),W);if(!((b===0)&&((((c[0].Inst.Arg<<24>>>24)&~v)<<24>>>24)===0)&&d.re.regexpRO.prefix.length>0)){z=false;$s=11;continue s;}aa=a.canCheckPrefix();$s=12;case 12:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}z=aa;case 11:if(z){$s=9;continue;}$s=10;continue;case 9:ab=a.hasPrefix(d.re);$s=16;case 16:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}if(ab){$s=13;continue;}$s=14;continue;case 13:b=b+(d.re.regexpRO.prefix.length)>>0;ad=a.step(b);$s=17;case 17:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}ac=ad;l=ac[0];p=ac[1];af=a.step(b+p>>0);$s=18;case 18:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}ae=af;m=ae[0];q=ae[1];ag=a.context(b);$s=19;case 19:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}v=ag;x=(d.re.regexpRO.prefixEnd>>0);$s=15;continue;case 14:$s=-1;return d.matched;case 15:case 10:case 20:W.copy(c[0],(ah=d.op.Inst,((x<0||x>=ah.$length)?($throwRuntimeError("index out of range"),undefined):ah.$array[ah.$offset+x])));x=(c[0].Inst.Out>>0);ai=c[0].Inst.Op;if(ai===(4)){$s=23;continue;}if(ai===(7)){$s=24;continue;}if(ai===(8)){$s=25;continue;}if(ai===(9)){$s=26;continue;}if(ai===(10)){$s=27;continue;}if((ai===(0))||(ai===(1))){$s=28;continue;}if(ai===(5)){$s=29;continue;}if(ai===(6)){$s=30;continue;}if(ai===(3)){$s=31;continue;}if(ai===(2)){$s=32;continue;}$s=33;continue;case 23:d.matched=true;if(d.matchcap.$length>0){(aj=d.matchcap,(0>=aj.$length?($throwRuntimeError("index out of range"),undefined):aj.$array[aj.$offset+0]=0));(ak=d.matchcap,(1>=ak.$length?($throwRuntimeError("index out of range"),undefined):ak.$array[ak.$offset+1]=b));}$s=-1;return d.matched;case 24:if(!c[0].Inst.MatchRune(l)){$s=-1;return d.matched;}$s=34;continue;case 25:if(!((l===(al=c[0].Inst.Rune,(0>=al.$length?($throwRuntimeError("index out of range"),undefined):al.$array[al.$offset+0]))))){$s=-1;return d.matched;}$s=34;continue;case 26:$s=34;continue;case 27:if(l===10){$s=-1;return d.matched;}$s=34;continue;case 28:x=(Y(c[0],l)>>0);$s=20;continue;$s=34;continue;case 29:$s=-1;return d.matched;case 30:$s=20;continue;$s=34;continue;case 31:if(!(((((c[0].Inst.Arg<<24>>>24)&~v)<<24>>>24)===0))){$s=-1;return d.matched;}$s=20;continue;$s=34;continue;case 32:if((c[0].Inst.Arg>>0)<d.matchcap.$length){(am=d.matchcap,an=c[0].Inst.Arg,((an<0||an>=am.$length)?($throwRuntimeError("index out of range"),undefined):am.$array[am.$offset+an]=b));}$s=20;continue;$s=34;continue;case 33:$panic(new $String("bad inst"));case 34:case 22:if(p===0){$s=21;continue;}v=A.EmptyOpContext(l,m);b=b+(p)>>0;ao=m;ap=q;l=ao;p=ap;if(!((l===-1))){$s=35;continue;}$s=36;continue;case 35:ar=a.step(b+p>>0);$s=37;case 37:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}aq=ar;m=aq[0];q=aq[1];case 36:$s=20;continue;case 21:$s=-1;return d.matched;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.onepass};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};S.prototype.onepass=function(a,b){return this.$val.onepass(a,b);};AN.ptr.prototype.doMatch=function(a,b,c){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:d=this;e=d.doExecute(a,b,c,0,0,BN.nil);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=-1;return!(e===BN.nil);}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.doMatch};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.doMatch=function(a,b,c){return this.$val.doMatch(a,b,c);};AN.ptr.prototype.doExecute=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=this;h=g.get();i=$ifaceNil;j=0;if(!($interfaceIsEqual(a,$ifaceNil))){i=h.newInputReader(a);}else if(!(b===BL.nil)){i=h.newInputBytes(b);j=b.$length;}else{i=h.newInputString(c);j=c.length;}if(!(h.op===AL)){$s=1;continue;}if(j<h.maxBitStateLen&&$interfaceIsEqual(a,$ifaceNil)){$s=2;continue;}$s=3;continue;case 1:k=h.onepass(i,d);$s=7;case 7:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}if(!k){$s=5;continue;}$s=6;continue;case 5:g.put(h);$s=-1;return BN.nil;case 6:$s=4;continue;case 2:if(h.b===BH.nil){h.b=N(h.p);}l=h.backtrack(i,d,j,e);$s=10;case 10:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}if(!l){$s=8;continue;}$s=9;continue;case 8:g.put(h);$s=-1;return BN.nil;case 9:$s=4;continue;case 3:h.init(e);m=h.match(i,d);$s=13;case 13:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}if(!m){$s=11;continue;}$s=12;continue;case 11:g.put(h);$s=-1;return BN.nil;case 12:case 4:f=$appendSlice(f,h.matchcap);if(f===BN.nil){f=$subslice(new BN(U),0,0);}g.put(h);$s=-1;return f;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.doExecute};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.doExecute=function(a,b,c,d,e,f){return this.$val.doExecute(a,b,c,d,e,f);};X=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;b="";c=false;d=0;g=(e=a.Inst,f=a.Start,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]));if(!((g.Op===3))||(((((g.Arg<<24>>>24))&4)>>>0)===0)){h="";i=g.Op===4;j=(a.Start>>>0);b=h;c=i;d=j;return[b,c,d];}d=g.Out;g=(k=a.Inst,((d<0||d>=k.$length)?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+d]));while(true){if(!(g.Op===6)){break;}d=g.Out;g=(l=a.Inst,((d<0||d>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+d]));}if(!((Z(g)===7))||!((g.Rune.$length===1))){m="";n=g.Op===4;o=(a.Start>>>0);b=m;c=n;d=o;return[b,c,d];}p=new C.Buffer.ptr(BL.nil,0,BV.zero(),0);while(true){if(!((Z(g)===7)&&(g.Rune.$length===1)&&((((g.Arg<<16>>>16)&1)>>>0)===0))){break;}p.WriteRune((q=g.Rune,(0>=q.$length?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+0])));r=g.Out;s=(t=a.Inst,u=g.Out,((u<0||u>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+u]));d=r;g=s;}if((g.Op===3)&&!(((((g.Arg<<24>>>24)&8)>>>0)===0))&&((v=a.Inst,w=g.Out,((w<0||w>=v.$length)?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+w])).Op===4)){c=true;}x=p.String();y=c;z=d;b=x;c=y;d=z;return[b,c,d];};Y=function(a,b){var $ptr,a,b,c,d;c=a.Inst.MatchRunePos(b);if(c>=0){return(d=a.Next,((c<0||c>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+c]));}if(a.Inst.Op===1){return a.Inst.Out;}return 0;};Z=function(a){var $ptr,a,b,c;b=a.Op;c=b;if((c===(8))||(c===(9))||(c===(10))){b=7;}return b;};AA.ptr.prototype.empty=function(){var $ptr,a;a=this;return a.nextIndex>=a.size;};AA.prototype.empty=function(){return this.$val.empty();};AA.ptr.prototype.next=function(){var $ptr,a,b,c,d;a=0;b=this;a=(c=b.dense,d=b.nextIndex,((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]));b.nextIndex=b.nextIndex+(1)>>>0;return a;};AA.prototype.next=function(){return this.$val.next();};AA.ptr.prototype.clear=function(){var $ptr,a;a=this;a.size=0;a.nextIndex=0;};AA.prototype.clear=function(){return this.$val.clear();};AA.ptr.prototype.contains=function(a){var $ptr,a,b,c,d,e,f;b=this;if(a>=(b.sparse.$length>>>0)){return false;}return(c=b.sparse,((a<0||a>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+a]))<b.size&&((d=b.dense,e=(f=b.sparse,((a<0||a>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+a])),((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]))===a);};AA.prototype.contains=function(a){return this.$val.contains(a);};AA.ptr.prototype.insert=function(a){var $ptr,a,b;b=this;if(!b.contains(a)){b.insertNew(a);}};AA.prototype.insert=function(a){return this.$val.insert(a);};AA.ptr.prototype.insertNew=function(a){var $ptr,a,b,c,d,e;b=this;if(a>=(b.sparse.$length>>>0)){return;}(c=b.sparse,((a<0||a>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+a]=b.size));(d=b.dense,e=b.size,((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]=a));b.size=b.size+(1)>>>0;};AA.prototype.insertNew=function(a){return this.$val.insertNew(a);};AB=function(a){var $ptr,a,b;b=BW.nil;b=new AA.ptr($makeSlice(BJ,a),$makeSlice(BJ,a),0,0);return b;};AE=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);e=[e];f=[f];g=[g];h=[h];i=[i];j=[j];k=a.$get().$length;l=b.$get().$length;if(!(((k&1)===0))||!(((l&1)===0))){$panic(new $String("mergeRuneSets odd length []rune"));}m=0;n=0;f[0]=m;j[0]=n;g[0]=$makeSlice(BI,0);h[0]=$makeSlice(BJ,0);i[0]=true;$deferred.push([(function(e,f,g,h,i,j){return function(){var $ptr;if(!i[0]){g[0]=BI.nil;h[0]=BJ.nil;}};})(e,f,g,h,i,j),[]]);e[0]=-1;o=(function(e,f,g,h,i,j){return function(o,p,q){var $ptr,o,p,q,r,s,t,u,v,w;if(e[0]>0&&(r=p.$get(),s=o.$get(),((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s]))<=((e[0]<0||e[0]>=g[0].$length)?($throwRuntimeError("index out of range"),undefined):g[0].$array[g[0].$offset+e[0]])){return false;}g[0]=$append(g[0],(t=p.$get(),u=o.$get(),((u<0||u>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+u])),(v=p.$get(),w=o.$get()+1>>0,((w<0||w>=v.$length)?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+w])));o.$set(o.$get()+(2)>>0);e[0]=e[0]+(2)>>0;h[0]=$append(h[0],q);return true;};})(e,f,g,h,i,j);case 1:if(!(f[0]<k||j[0]<l)){$s=2;continue;}if(j[0]>=l){$s=4;continue;}if(f[0]>=k){$s=5;continue;}if((p=b.$get(),((j[0]<0||j[0]>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+j[0]]))<(q=a.$get(),((f[0]<0||f[0]>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+f[0]]))){$s=6;continue;}$s=7;continue;case 4:r=o((f.$ptr||(f.$ptr=new BU(function(){return this.$target[0];},function($v){this.$target[0]=$v;},f))),a,c);$s=9;case 9:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}i[0]=r;$s=8;continue;case 5:s=o((j.$ptr||(j.$ptr=new BU(function(){return this.$target[0];},function($v){this.$target[0]=$v;},j))),b,d);$s=10;case 10:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}i[0]=s;$s=8;continue;case 6:t=o((j.$ptr||(j.$ptr=new BU(function(){return this.$target[0];},function($v){this.$target[0]=$v;},j))),b,d);$s=11;case 11:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}i[0]=t;$s=8;continue;case 7:u=o((f.$ptr||(f.$ptr=new BU(function(){return this.$target[0];},function($v){this.$target[0]=$v;},f))),a,c);$s=12;case 12:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}i[0]=u;case 8:case 3:if(!i[0]){$s=-1;return[AC,AD];}$s=1;continue;case 2:$s=-1;return[g[0],h[0]];}return;}}catch(err){$err=err;$s=-1;return[BI.nil,BJ.nil];}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:AE};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};AF=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j;c=b.Inst;d=0;while(true){if(!(d<c.$length)){break;}e=d;f=$clone(((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]),A.Inst);g=f.Op;if((g===(0))||(g===(1))||(g===(7))){}else if((g===(2))||(g===(3))||(g===(6))||(g===(4))||(g===(5))){(h=a.Inst,((e<0||e>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+e])).Next=BJ.nil;}else if((g===(8))||(g===(9))||(g===(10))){(i=a.Inst,((e<0||e>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+e])).Next=BJ.nil;W.copy((j=a.Inst,((e<0||e>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+e])),new W.ptr($clone(f,A.Inst),BJ.nil));}d++;}};AG=function(a){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;b=new V.ptr(BX.nil,a.Start,a.NumCap);c=a.Inst;d=0;while(true){if(!(d<c.$length)){break;}e=$clone(((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]),A.Inst);b.Inst=$append(b.Inst,new W.ptr($clone(e,A.Inst),BJ.nil));d++;}f=b.Inst;g=0;while(true){if(!(g<f.$length)){break;}h=g;j=(i=b.Inst,((h<0||h>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+h])).Inst.Op;if((j===(0))||(j===(1))){m=(k=(l=b.Inst,((h<0||h>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+h])),(k.$ptr_Out||(k.$ptr_Out=new BY(function(){return this.$target.Inst.Out;},function($v){this.$target.Inst.Out=$v;},k))));p=(n=(o=b.Inst,((h<0||h>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+h])),(n.$ptr_Arg||(n.$ptr_Arg=new BY(function(){return this.$target.Inst.Arg;},function($v){this.$target.Inst.Arg=$v;},n))));s=$clone((q=b.Inst,r=p.$get(),((r<0||r>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+r])),W);if(!((s.Inst.Op===0)||(s.Inst.Op===1))){t=m;u=p;p=t;m=u;W.copy(s,(v=b.Inst,w=p.$get(),((w<0||w>=v.$length)?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+w])));if(!((s.Inst.Op===0)||(s.Inst.Op===1))){g++;continue;}}z=$clone((x=b.Inst,y=m.$get(),((y<0||y>=x.$length)?($throwRuntimeError("index out of range"),undefined):x.$array[x.$offset+y])),W);if((z.Inst.Op===0)||(z.Inst.Op===1)){g++;continue;}ad=(aa=(ab=b.Inst,ac=p.$get(),((ac<0||ac>=ab.$length)?($throwRuntimeError("index out of range"),undefined):ab.$array[ab.$offset+ac])),(aa.$ptr_Out||(aa.$ptr_Out=new BY(function(){return this.$target.Inst.Out;},function($v){this.$target.Inst.Out=$v;},aa))));ah=(ae=(af=b.Inst,ag=p.$get(),((ag<0||ag>=af.$length)?($throwRuntimeError("index out of range"),undefined):af.$array[af.$offset+ag])),(ae.$ptr_Arg||(ae.$ptr_Arg=new BY(function(){return this.$target.Inst.Arg;},function($v){this.$target.Inst.Arg=$v;},ae))));ai=false;if(s.Inst.Out===(h>>>0)){ai=true;}else if(s.Inst.Arg===(h>>>0)){ai=true;aj=ah;ak=ad;ad=aj;ah=ak;}if(ai){ad.$set(m.$get());}if(m.$get()===ad.$get()){p.$set(ah.$get());}}else{g++;continue;}g++;}return b;};AH.prototype.Len=function(){var $ptr,a;a=this;return a.$length;};$ptrType(AH).prototype.Len=function(){return this.$get().Len();};AH.prototype.Less=function(a,b){var $ptr,a,b,c;c=this;return((a<0||a>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+a])<((b<0||b>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+b]);};$ptrType(AH).prototype.Less=function(a,b){return this.$get().Less(a,b);};AH.prototype.Swap=function(a,b){var $ptr,a,b,c,d,e;c=this;d=((b<0||b>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+b]);e=((a<0||a>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+a]);((a<0||a>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+a]=d);((b<0||b>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+b]=e);};$ptrType(AH).prototype.Swap=function(a,b){return this.$get().Swap(a,b);};AK=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];b=[b];c=[c];d=[d];e=[e];if(a[0].Inst.$length>=1000){$s=-1;return AL;}c[0]=AB(a[0].Inst.$length);e[0]=AB(a[0].Inst.$length);b[0]=$throwNilPointerError;d[0]=$makeSlice(BZ,a[0].Inst.$length);b[0]=(function(a,b,c,d,e){return function $b(f,g){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;bf=$f.bf;bg=$f.bg;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:h=false;h=true;j=(i=a[0].Inst,((f<0||f>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+f]));if(e[0].contains(f)){$s=-1;return h;}e[0].insert(f);k=j.Inst.Op;if((k===(0))||(k===(1))){$s=2;continue;}if((k===(2))||(k===(6))){$s=3;continue;}if(k===(3)){$s=4;continue;}if((k===(4))||(k===(5))){$s=5;continue;}if(k===(7)){$s=6;continue;}if(k===(8)){$s=7;continue;}if(k===(9)){$s=8;continue;}if(k===(10)){$s=9;continue;}$s=10;continue;case 2:m=b[0](j.Inst.Out,g);$s=12;case 12:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}if(!(m)){l=false;$s=11;continue s;}n=b[0](j.Inst.Arg,g);$s=13;case 13:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}l=n;case 11:h=l;p=(o=g[$Uint32.keyFor(j.Inst.Out)],o!==undefined?o.v:false);r=(q=g[$Uint32.keyFor(j.Inst.Arg)],q!==undefined?q.v:false);if(p&&r){h=false;$s=1;continue;}if(r){s=j.Inst.Arg;t=j.Inst.Out;j.Inst.Out=s;j.Inst.Arg=t;u=r;v=p;p=u;r=v;}if(p){w=f;(g||$throwRuntimeError("assignment to entry in nil map"))[$Uint32.keyFor(w)]={k:w,v:true};j.Inst.Op=1;}y=AE($indexPtr(d[0].$array,d[0].$offset+j.Inst.Out,CA),$indexPtr(d[0].$array,d[0].$offset+j.Inst.Arg,CA),j.Inst.Out,j.Inst.Arg);$s=14;case 14:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}x=y;((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]=x[0]);j.Next=x[1];if(j.Next.$length>0&&((z=j.Next,(0>=z.$length?($throwRuntimeError("index out of range"),undefined):z.$array[z.$offset+0]))===4294967295)){h=false;$s=1;continue;}$s=10;continue;case 3:aa=b[0](j.Inst.Out,g);$s=15;case 15:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}h=aa;ab=f;(g||$throwRuntimeError("assignment to entry in nil map"))[$Uint32.keyFor(ab)]={k:ab,v:(ac=g[$Uint32.keyFor(j.Inst.Out)],ac!==undefined?ac.v:false)};((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]=$appendSlice(new BI([]),(ad=j.Inst.Out,((ad<0||ad>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+ad]))));j.Next=new BJ([]);af=(ae=((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]).$length/2,(ae===ae&&ae!==1/0&&ae!==-1/0)?ae>>0:$throwRuntimeError("integer divide by zero"));while(true){if(!(af>=0)){break;}j.Next=$append(j.Next,j.Inst.Out);af=af-(1)>>0;}$s=10;continue;case 4:ag=b[0](j.Inst.Out,g);$s=16;case 16:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}h=ag;ah=f;(g||$throwRuntimeError("assignment to entry in nil map"))[$Uint32.keyFor(ah)]={k:ah,v:(ai=g[$Uint32.keyFor(j.Inst.Out)],ai!==undefined?ai.v:false)};((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]=$appendSlice(new BI([]),(aj=j.Inst.Out,((aj<0||aj>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+aj]))));j.Next=new BJ([]);al=(ak=((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]).$length/2,(ak===ak&&ak!==1/0&&ak!==-1/0)?ak>>0:$throwRuntimeError("integer divide by zero"));while(true){if(!(al>=0)){break;}j.Next=$append(j.Next,j.Inst.Out);al=al-(1)>>0;}$s=10;continue;case 5:am=f;(g||$throwRuntimeError("assignment to entry in nil map"))[$Uint32.keyFor(am)]={k:am,v:j.Inst.Op===4};$s=1;continue;$s=10;continue;case 6:an=f;(g||$throwRuntimeError("assignment to entry in nil map"))[$Uint32.keyFor(an)]={k:an,v:false};if(j.Next.$length>0){$s=1;continue;}c[0].insert(j.Inst.Out);if(j.Inst.Rune.$length===0){((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]=new BI([]));j.Next=new BJ([j.Inst.Out]);$s=1;continue;}ao=$makeSlice(BI,0);if((j.Inst.Rune.$length===1)&&!(((((j.Inst.Arg<<16>>>16)&1)>>>0)===0))){$s=17;continue;}$s=18;continue;case 17:aq=(ap=j.Inst.Rune,(0>=ap.$length?($throwRuntimeError("index out of range"),undefined):ap.$array[ap.$offset+0]));ao=$append(ao,aq,aq);ar=E.SimpleFold(aq);while(true){if(!(!((ar===aq)))){break;}ao=$append(ao,ar,ar);ar=E.SimpleFold(ar);}$r=D.Sort($subslice(new AH(ao.$array),ao.$offset,ao.$offset+ao.$length));$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=19;continue;case 18:ao=$appendSlice(ao,j.Inst.Rune);case 19:((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]=ao);j.Next=new BJ([]);at=(as=((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]).$length/2,(as===as&&as!==1/0&&as!==-1/0)?as>>0:$throwRuntimeError("integer divide by zero"));while(true){if(!(at>=0)){break;}j.Next=$append(j.Next,j.Inst.Out);at=at-(1)>>0;}j.Inst.Op=7;$s=10;continue;case 7:au=f;(g||$throwRuntimeError("assignment to entry in nil map"))[$Uint32.keyFor(au)]={k:au,v:false};if(j.Next.$length>0){$s=1;continue;}c[0].insert(j.Inst.Out);av=new BI([]);if(!(((((j.Inst.Arg<<16>>>16)&1)>>>0)===0))){$s=21;continue;}$s=22;continue;case 21:ax=(aw=j.Inst.Rune,(0>=aw.$length?($throwRuntimeError("index out of range"),undefined):aw.$array[aw.$offset+0]));av=$append(av,ax,ax);ay=E.SimpleFold(ax);while(true){if(!(!((ay===ax)))){break;}av=$append(av,ay,ay);ay=E.SimpleFold(ay);}$r=D.Sort($subslice(new AH(av.$array),av.$offset,av.$offset+av.$length));$s=24;case 24:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=23;continue;case 22:av=$append(av,(az=j.Inst.Rune,(0>=az.$length?($throwRuntimeError("index out of range"),undefined):az.$array[az.$offset+0])),(ba=j.Inst.Rune,(0>=ba.$length?($throwRuntimeError("index out of range"),undefined):ba.$array[ba.$offset+0])));case 23:((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]=av);j.Next=new BJ([]);bc=(bb=((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]).$length/2,(bb===bb&&bb!==1/0&&bb!==-1/0)?bb>>0:$throwRuntimeError("integer divide by zero"));while(true){if(!(bc>=0)){break;}j.Next=$append(j.Next,j.Inst.Out);bc=bc-(1)>>0;}j.Inst.Op=7;$s=10;continue;case 8:bd=f;(g||$throwRuntimeError("assignment to entry in nil map"))[$Uint32.keyFor(bd)]={k:bd,v:false};if(j.Next.$length>0){$s=1;continue;}c[0].insert(j.Inst.Out);((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]=$appendSlice(new BI([]),AJ));j.Next=new BJ([j.Inst.Out]);$s=10;continue;case 9:be=f;(g||$throwRuntimeError("assignment to entry in nil map"))[$Uint32.keyFor(be)]={k:be,v:false};if(j.Next.$length>0){$s=1;continue;}c[0].insert(j.Inst.Out);((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]=$appendSlice(new BI([]),AI));j.Next=new BJ([]);bg=(bf=((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]).$length/2,(bf===bf&&bf!==1/0&&bf!==-1/0)?bf>>0:$throwRuntimeError("integer divide by zero"));while(true){if(!(bg>=0)){break;}j.Next=$append(j.Next,j.Inst.Out);bg=bg-(1)>>0;}case 10:case 1:$s=-1;return h;}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$f.bf=bf;$f.bg=bg;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};})(a,b,c,d,e);c[0].clear();c[0].insert((a[0].Start>>>0));g=(f=a[0].Inst.$length,((f<0||f>2147483647)?$throwRuntimeError("makemap: size out of range"):{}));case 1:if(!(!c[0].empty())){$s=2;continue;}e[0].clear();h=c[0].next();i=b[0](h,g);$s=5;case 5:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}if(!i){$s=3;continue;}$s=4;continue;case 3:a[0]=AL;$s=2;continue;case 4:$s=1;continue;case 2:if(!(a[0]===AL)){j=a[0].Inst;k=0;while(true){if(!(k<j.$length)){break;}l=k;(m=a[0].Inst,((l<0||l>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+l])).Inst.Rune=((l<0||l>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+l]);k++;}}$s=-1;return a[0];}return;}if($f===undefined){$f={$blk:AK};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};AM=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=BK.nil;if(a.Start===0){b=AL;$s=-1;return b;}if(!(((c=a.Inst,d=a.Start,((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d])).Op===3))||!((((((e=a.Inst,f=a.Start,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f])).Arg<<24>>>24)&4)>>>0)===4))){b=AL;$s=-1;return b;}g=a.Inst;h=0;case 1:if(!(h<g.$length)){$s=2;continue;}i=$clone(((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h]),A.Inst);l=(j=a.Inst,k=i.Out,((k<0||k>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+k])).Op;m=i.Op;if((m===(0))||(m===(1))){if((l===4)||((n=a.Inst,o=i.Arg,((o<0||o>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+o])).Op===4)){b=AL;$s=-1;return b;}}else if(m===(3)){if(l===4){if((((i.Arg<<24>>>24)&8)>>>0)===8){h++;$s=1;continue;}b=AL;$s=-1;return b;}}else if(l===4){b=AL;$s=-1;return b;}h++;$s=1;continue;case 2:b=AG(a);p=AK(b);$s=3;case 3:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}b=p;if(!(b===AL)){AF(b,a);}b=b;$s=-1;return b;}return;}if($f===undefined){$f={$blk:AM};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};AN.ptr.prototype.String=function(){var $ptr,a;a=this;return a.regexpRO.expr;};AN.prototype.String=function(){return this.$val.String();};AN.ptr.prototype.Copy=function(){var $ptr,a;a=this;return new AN.ptr($clone(a.regexpRO,AO),new H.Mutex.ptr(false),CD.nil);};AN.prototype.Copy=function(){return this.$val.Copy();};AP=function(a){var $ptr,a,b,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=AR(a,212,false);$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=-1;return b;}return;}if($f===undefined){$f={$blk:AP};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Compile=AP;AN.ptr.prototype.Longest=function(){var $ptr,a;a=this;a.regexpRO.longest=true;};AN.prototype.Longest=function(){return this.$val.Longest();};AR=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=A.Parse(a,b);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;f=d[0];g=d[1];if(!($interfaceIsEqual(g,$ifaceNil))){$s=-1;return[BP.nil,g];}h=f.MaxCap();i=f.CapNames();f=f.Simplify();j=A.Compile(f);k=j[0];g=j[1];if(!($interfaceIsEqual(g,$ifaceNil))){$s=-1;return[BP.nil,g];}l=AM(k);$s=2;case 2:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=new AN.ptr(new AO.ptr(a,k,l,"",BL.nil,false,0,0,k.StartCond(),h,i,c),new H.Mutex.ptr(false),CD.nil);if(m.regexpRO.onepass===AL){n=k.Prefix();m.regexpRO.prefix=n[0];m.regexpRO.prefixComplete=n[1];}else{o=X(k);m.regexpRO.prefix=o[0];m.regexpRO.prefixComplete=o[1];m.regexpRO.prefixEnd=o[2];}if(!(m.regexpRO.prefix==="")){m.regexpRO.prefixBytes=new BL($stringToBytes(m.regexpRO.prefix));p=I.DecodeRuneInString(m.regexpRO.prefix);m.regexpRO.prefixRune=p[0];}$s=-1;return[m,$ifaceNil];}return;}if($f===undefined){$f={$blk:AR};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};AN.ptr.prototype.get=function(){var $ptr,a,b,c,d,e,f;a=this;a.mu.Lock();b=a.machine.$length;if(b>0){e=(c=a.machine,d=b-1>>0,((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]));a.machine=$subslice(a.machine,0,(b-1>>0));a.mu.Unlock();return e;}a.mu.Unlock();f=T(a.regexpRO.prog,a.regexpRO.onepass);f.re=a;return f;};AN.prototype.get=function(){return this.$val.get();};AN.ptr.prototype.put=function(a){var $ptr,a,b;b=this;b.mu.Lock();b.machine=$append(b.machine,a);b.mu.Unlock();};AN.prototype.put=function(a){return this.$val.put(a);};AS=function(a){var $ptr,a,b,c,d,e,f,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=AP(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=b[0];e=b[1];if(!($interfaceIsEqual(e,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:f=e.Error();$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$panic(new $String("regexp: Compile("+AU(a)+"): "+f));case 3:$s=-1;return d;}return;}if($f===undefined){$f={$blk:AS};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};$pkg.MustCompile=AS;AU=function(a){var $ptr,a;if(F.CanBackquote(a)){return"`"+a+"`";}return F.Quote(a);};AN.ptr.prototype.NumSubexp=function(){var $ptr,a;a=this;return a.regexpRO.numSubexp;};AN.prototype.NumSubexp=function(){return this.$val.NumSubexp();};AN.ptr.prototype.SubexpNames=function(){var $ptr,a;a=this;return a.regexpRO.subexpNames;};AN.prototype.SubexpNames=function(){return this.$val.SubexpNames();};AW.ptr.prototype.step=function(a){var $ptr,a,b,c;b=this;if(a<b.str.length){c=b.str.charCodeAt(a);if(c<128){return[(c>>0),1];}return I.DecodeRuneInString($substring(b.str,a));}return[-1,0];};AW.prototype.step=function(a){return this.$val.step(a);};AW.ptr.prototype.canCheckPrefix=function(){var $ptr,a;a=this;return true;};AW.prototype.canCheckPrefix=function(){return this.$val.canCheckPrefix();};AW.ptr.prototype.hasPrefix=function(a){var $ptr,a,b;b=this;return G.HasPrefix(b.str,a.regexpRO.prefix);};AW.prototype.hasPrefix=function(a){return this.$val.hasPrefix(a);};AW.ptr.prototype.index=function(a,b){var $ptr,a,b,c;c=this;return G.Index($substring(c.str,b),a.regexpRO.prefix);};AW.prototype.index=function(a,b){return this.$val.index(a,b);};AW.ptr.prototype.context=function(a){var $ptr,a,b,c,d,e,f,g,h;b=this;c=-1;d=-1;e=c;f=d;if(a>0&&a<=b.str.length){g=I.DecodeLastRuneInString($substring(b.str,0,a));e=g[0];}if(a<b.str.length){h=I.DecodeRuneInString($substring(b.str,a));f=h[0];}return A.EmptyOpContext(e,f);};AW.prototype.context=function(a){return this.$val.context(a);};AX.ptr.prototype.step=function(a){var $ptr,a,b,c,d;b=this;if(a<b.str.$length){d=(c=b.str,((a<0||a>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+a]));if(d<128){return[(d>>0),1];}return I.DecodeRune($subslice(b.str,a));}return[-1,0];};AX.prototype.step=function(a){return this.$val.step(a);};AX.ptr.prototype.canCheckPrefix=function(){var $ptr,a;a=this;return true;};AX.prototype.canCheckPrefix=function(){return this.$val.canCheckPrefix();};AX.ptr.prototype.hasPrefix=function(a){var $ptr,a,b;b=this;return C.HasPrefix(b.str,a.regexpRO.prefixBytes);};AX.prototype.hasPrefix=function(a){return this.$val.hasPrefix(a);};AX.ptr.prototype.index=function(a,b){var $ptr,a,b,c;c=this;return C.Index($subslice(c.str,b),a.regexpRO.prefixBytes);};AX.prototype.index=function(a,b){return this.$val.index(a,b);};AX.ptr.prototype.context=function(a){var $ptr,a,b,c,d,e,f,g,h;b=this;c=-1;d=-1;e=c;f=d;if(a>0&&a<=b.str.$length){g=I.DecodeLastRune($subslice(b.str,0,a));e=g[0];}if(a<b.str.$length){h=I.DecodeRune($subslice(b.str,a));f=h[0];}return A.EmptyOpContext(e,f);};AX.prototype.context=function(a){return this.$val.context(a);};AY.ptr.prototype.step=function(a){var $ptr,a,b,c,d,e,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;if(!b.atEOT&&!((a===b.pos))){$s=-1;return[-1,0];}d=b.r.ReadRune();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;e=c[0];f=c[1];g=c[2];if(!($interfaceIsEqual(g,$ifaceNil))){b.atEOT=true;$s=-1;return[-1,0];}b.pos=b.pos+(f)>>0;$s=-1;return[e,f];}return;}if($f===undefined){$f={$blk:AY.ptr.prototype.step};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};AY.prototype.step=function(a){return this.$val.step(a);};AY.ptr.prototype.canCheckPrefix=function(){var $ptr,a;a=this;return false;};AY.prototype.canCheckPrefix=function(){return this.$val.canCheckPrefix();};AY.ptr.prototype.hasPrefix=function(a){var $ptr,a,b;b=this;return false;};AY.prototype.hasPrefix=function(a){return this.$val.hasPrefix(a);};AY.ptr.prototype.index=function(a,b){var $ptr,a,b,c;c=this;return-1;};AY.prototype.index=function(a,b){return this.$val.index(a,b);};AY.ptr.prototype.context=function(a){var $ptr,a,b;b=this;return 0;};AY.prototype.context=function(a){return this.$val.context(a);};AN.ptr.prototype.LiteralPrefix=function(){var $ptr,a,b,c,d,e;a="";b=false;c=this;d=c.regexpRO.prefix;e=c.regexpRO.prefixComplete;a=d;b=e;return[a,b];};AN.prototype.LiteralPrefix=function(){return this.$val.LiteralPrefix();};AN.ptr.prototype.MatchReader=function(a){var $ptr,a,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=b.doMatch(a,BL.nil,"");$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=-1;return c;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.MatchReader};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.MatchReader=function(a){return this.$val.MatchReader(a);};AN.ptr.prototype.MatchString=function(a){var $ptr,a,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=b.doMatch($ifaceNil,BL.nil,a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=-1;return c;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.MatchString};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.MatchString=function(a){return this.$val.MatchString(a);};AN.ptr.prototype.Match=function(a){var $ptr,a,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=b.doMatch($ifaceNil,a,"");$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=-1;return c;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.Match};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.Match=function(a){return this.$val.Match(a);};BA=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=false;d=$ifaceNil;f=AP(a);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[0];d=e[1];if(!($interfaceIsEqual(d,$ifaceNil))){h=false;i=d;c=h;d=i;$s=-1;return[c,d];}k=g.MatchString(b);$s=2;case 2:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=$ifaceNil;c=j;d=l;$s=-1;return[c,d];}return;}if($f===undefined){$f={$blk:BA};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};$pkg.MatchString=BA;AN.ptr.prototype.ReplaceAllString=function(a,b){var $ptr,a,b,c,d,e,f,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];b=[b];c=[c];c[0]=this;d=2;if(G.Contains(b[0],"$")){d=$imul(2,((c[0].regexpRO.numSubexp+1>>0)));}e=c[0].replaceAll(BL.nil,a[0],d,(function(a,b,c){return function(e,f){var $ptr,e,f;return c[0].expand(e,b[0],BL.nil,a[0],f);};})(a,b,c));$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;$s=-1;return $bytesToString(f);}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.ReplaceAllString};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.ReplaceAllString=function(a,b){return this.$val.ReplaceAllString(a,b);};AN.ptr.prototype.ReplaceAllLiteralString=function(a,b){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=[b];c=this;d=c.replaceAll(BL.nil,a,2,(function(b){return function(d,e){var $ptr,d,e;return $appendSlice(d,b[0]);};})(b));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=-1;return $bytesToString(d);}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.ReplaceAllLiteralString};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.ReplaceAllLiteralString=function(a,b){return this.$val.ReplaceAllLiteralString(a,b);};AN.ptr.prototype.ReplaceAllStringFunc=function(a,b){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];b=[b];c=this;d=c.replaceAll(BL.nil,a[0],2,(function(a,b){return function $b(d,e){var $ptr,d,e,f,g,h,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=d;g=b[0]($substring(a[0],(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]),(1>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+1])));$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;$s=-1;return $appendSlice(f,h);}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};})(a,b));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;$s=-1;return $bytesToString(e);}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.ReplaceAllStringFunc};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.ReplaceAllStringFunc=function(a,b){return this.$val.ReplaceAllStringFunc(a,b);};AN.ptr.prototype.replaceAll=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=this;f=0;g=0;h=BL.nil;i=0;if(!(a===BL.nil)){i=a.$length;}else{i=b.length;}if(c>e.regexpRO.prog.NumCap){c=e.regexpRO.prog.NumCap;}j=CE.zero();case 1:if(!(g<=i)){$s=2;continue;}k=e.doExecute($ifaceNil,a,b,g,c,$subslice(new BN(j),0,0));$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;if(l.$length===0){$s=2;continue;}if(!(a===BL.nil)){h=$appendSlice(h,$subslice(a,f,(0>=l.$length?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+0])));}else{h=$appendSlice(h,$substring(b,f,(0>=l.$length?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+0])));}if((1>=l.$length?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+1])>f||((0>=l.$length?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+0])===0)){$s=4;continue;}$s=5;continue;case 4:m=d(h,l);$s=6;case 6:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}h=m;case 5:f=(1>=l.$length?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+1]);n=0;if(!(a===BL.nil)){o=I.DecodeRune($subslice(a,g));n=o[1];}else{p=I.DecodeRuneInString($substring(b,g));n=p[1];}if((g+n>>0)>(1>=l.$length?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+1])){g=g+(n)>>0;}else if((g+1>>0)>(1>=l.$length?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+1])){g=g+(1)>>0;}else{g=(1>=l.$length?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+1]);}$s=1;continue;case 2:if(!(a===BL.nil)){h=$appendSlice(h,$subslice(a,f));}else{h=$appendSlice(h,$substring(b,f));}$s=-1;return h;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.replaceAll};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.replaceAll=function(a,b,c,d){return this.$val.replaceAll(a,b,c,d);};AN.ptr.prototype.ReplaceAll=function(a,b){var $ptr,a,b,c,d,e,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];b=[b];c=[c];d=[d];c[0]=this;e=2;if(C.IndexByte(b[0],36)>=0){e=$imul(2,((c[0].regexpRO.numSubexp+1>>0)));}d[0]="";f=c[0].replaceAll(a[0],"",e,(function(a,b,c,d){return function(f,g){var $ptr,f,g;if(!((d[0].length===b[0].$length))){d[0]=$bytesToString(b[0]);}return c[0].expand(f,d[0],a[0],"",g);};})(a,b,c,d));$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;$s=-1;return g;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.ReplaceAll};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.ReplaceAll=function(a,b){return this.$val.ReplaceAll(a,b);};AN.ptr.prototype.ReplaceAllLiteral=function(a,b){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=[b];c=this;d=c.replaceAll(a,"",2,(function(b){return function(d,e){var $ptr,d,e;return $appendSlice(d,b[0]);};})(b));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=-1;return d;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.ReplaceAllLiteral};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.ReplaceAllLiteral=function(a,b){return this.$val.ReplaceAllLiteral(a,b);};AN.ptr.prototype.ReplaceAllFunc=function(a,b){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];b=[b];c=this;d=c.replaceAll(a[0],"",2,(function(a,b){return function $b(d,e){var $ptr,d,e,f,g,h,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=d;g=b[0]($subslice(a[0],(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]),(1>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+1])));$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;$s=-1;return $appendSlice(f,h);}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};})(a,b));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=-1;return d;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.ReplaceAllFunc};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.ReplaceAllFunc=function(a,b){return this.$val.ReplaceAllFunc(a,b);};AN.ptr.prototype.pad=function(a){var $ptr,a,b,c;b=this;if(a===BN.nil){return BN.nil;}c=$imul(((1+b.regexpRO.numSubexp>>0)),2);while(true){if(!(a.$length<c)){break;}a=$append(a,-1);}return a;};AN.prototype.pad=function(a){return this.$val.pad(a);};AN.ptr.prototype.allMatches=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=this;f=0;if(b===BL.nil){f=a.length;}else{f=b.$length;}g=0;h=0;i=-1;j=g;k=h;l=i;case 1:if(!(k<c&&j<=f)){$s=2;continue;}m=e.doExecute($ifaceNil,b,a,j,e.regexpRO.prog.NumCap,BN.nil);$s=3;case 3:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=m;if(n.$length===0){$s=2;continue;}o=true;if((1>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+1])===j){if((0>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+0])===l){o=false;}p=0;if(b===BL.nil){q=I.DecodeRuneInString($substring(a,j,f));p=q[1];}else{r=I.DecodeRune($subslice(b,j,f));p=r[1];}if(p>0){j=j+(p)>>0;}else{j=f+1>>0;}}else{j=(1>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+1]);}l=(1>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+1]);if(o){$s=4;continue;}$s=5;continue;case 4:$r=d(e.pad(n));$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}k=k+(1)>>0;case 5:$s=1;continue;case 2:$s=-1;return;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.allMatches};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.allMatches=function(a,b,c,d){return this.$val.allMatches(a,b,c,d);};AN.ptr.prototype.Find=function(a){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=CE.zero();d=b.doExecute($ifaceNil,a,"",0,2,$subslice(new BN(c),0,0));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(e===BN.nil){$s=-1;return BL.nil;}$s=-1;return $subslice(a,(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]),(1>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+1]));}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.Find};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.Find=function(a){return this.$val.Find(a);};AN.ptr.prototype.FindIndex=function(a){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=BN.nil;c=this;d=c.doExecute($ifaceNil,a,"",0,2,BN.nil);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(e===BN.nil){b=BN.nil;$s=-1;return b;}b=$subslice(e,0,2);$s=-1;return b;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindIndex};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindIndex=function(a){return this.$val.FindIndex(a);};AN.ptr.prototype.FindString=function(a){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=CE.zero();d=b.doExecute($ifaceNil,BL.nil,a,0,2,$subslice(new BN(c),0,0));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(e===BN.nil){$s=-1;return"";}$s=-1;return $substring(a,(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]),(1>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+1]));}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindString};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindString=function(a){return this.$val.FindString(a);};AN.ptr.prototype.FindStringIndex=function(a){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=BN.nil;c=this;d=c.doExecute($ifaceNil,BL.nil,a,0,2,BN.nil);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(e===BN.nil){b=BN.nil;$s=-1;return b;}b=$subslice(e,0,2);$s=-1;return b;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindStringIndex};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindStringIndex=function(a){return this.$val.FindStringIndex(a);};AN.ptr.prototype.FindReaderIndex=function(a){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=BN.nil;c=this;d=c.doExecute(a,BL.nil,"",0,2,BN.nil);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(e===BN.nil){b=BN.nil;$s=-1;return b;}b=$subslice(e,0,2);$s=-1;return b;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindReaderIndex};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindReaderIndex=function(a){return this.$val.FindReaderIndex(a);};AN.ptr.prototype.FindSubmatch=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=CF.zero();d=b.doExecute($ifaceNil,a,"",0,b.regexpRO.prog.NumCap,$subslice(new BN(c),0,0));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(e===BN.nil){$s=-1;return CG.nil;}f=$makeSlice(CG,(1+b.regexpRO.numSubexp>>0));g=f;h=0;while(true){if(!(h<g.$length)){break;}i=h;if(($imul(2,i))<e.$length&&(j=$imul(2,i),((j<0||j>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+j]))>=0){((i<0||i>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+i]=$subslice(a,(k=$imul(2,i),((k<0||k>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+k])),(l=($imul(2,i))+1>>0,((l<0||l>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+l]))));}h++;}$s=-1;return f;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindSubmatch};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindSubmatch=function(a){return this.$val.FindSubmatch(a);};AN.ptr.prototype.Expand=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;return e.expand(a,$bytesToString(b),c,"",d);};AN.prototype.Expand=function(a,b,c,d){return this.$val.Expand(a,b,c,d);};AN.ptr.prototype.ExpandString=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;return e.expand(a,b,BL.nil,c,d);};AN.prototype.ExpandString=function(a,b,c,d){return this.$val.ExpandString(a,b,c,d);};AN.ptr.prototype.expand=function(a,b,c,d,e){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;f=this;while(true){if(!(b.length>0)){break;}g=G.Index(b,"$");if(g<0){break;}a=$appendSlice(a,$substring(b,0,g));b=$substring(b,g);if(b.length>1&&(b.charCodeAt(1)===36)){a=$append(a,36);b=$substring(b,2);continue;}h=BF(b);i=h[0];j=h[1];k=h[2];l=h[3];if(!l){a=$append(a,36);b=$substring(b,1);continue;}b=k;if(j>=0){if((($imul(2,j))+1>>0)<e.$length&&(m=$imul(2,j),((m<0||m>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+m]))>=0){if(!(c===BL.nil)){a=$appendSlice(a,$subslice(c,(n=$imul(2,j),((n<0||n>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+n])),(o=($imul(2,j))+1>>0,((o<0||o>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+o]))));}else{a=$appendSlice(a,$substring(d,(p=$imul(2,j),((p<0||p>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+p])),(q=($imul(2,j))+1>>0,((q<0||q>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+q]))));}}}else{r=f.regexpRO.subexpNames;s=0;while(true){if(!(s<r.$length)){break;}t=s;u=((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s]);if(i===u&&(($imul(2,t))+1>>0)<e.$length&&(v=$imul(2,t),((v<0||v>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+v]))>=0){if(!(c===BL.nil)){a=$appendSlice(a,$subslice(c,(w=$imul(2,t),((w<0||w>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+w])),(x=($imul(2,t))+1>>0,((x<0||x>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+x]))));}else{a=$appendSlice(a,$substring(d,(y=$imul(2,t),((y<0||y>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+y])),(z=($imul(2,t))+1>>0,((z<0||z>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+z]))));}break;}s++;}}}a=$appendSlice(a,b);return a;};AN.prototype.expand=function(a,b,c,d,e){return this.$val.expand(a,b,c,d,e);};BF=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k;b="";c=0;d="";e=false;if(a.length<2||!((a.charCodeAt(0)===36))){return[b,c,d,e];}f=false;if(a.charCodeAt(1)===123){f=true;a=$substring(a,2);}else{a=$substring(a,1);}g=0;while(true){if(!(g<a.length)){break;}h=I.DecodeRuneInString($substring(a,g));i=h[0];j=h[1];if(!E.IsLetter(i)&&!E.IsDigit(i)&&!((i===95))){break;}g=g+(j)>>0;}if(g===0){return[b,c,d,e];}b=$substring(a,0,g);if(f){if(g>=a.length||!((a.charCodeAt(g)===125))){return[b,c,d,e];}g=g+(1)>>0;}c=0;k=0;while(true){if(!(k<b.length)){break;}if(b.charCodeAt(k)<48||57<b.charCodeAt(k)||c>=100000000){c=-1;break;}c=(($imul(c,10))+(b.charCodeAt(k)>>0)>>0)-48>>0;k=k+(1)>>0;}if((b.charCodeAt(0)===48)&&b.length>1){c=-1;}d=$substring(a,g);e=true;return[b,c,d,e];};AN.ptr.prototype.FindSubmatchIndex=function(a){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=b.doExecute($ifaceNil,a,"",0,b.regexpRO.prog.NumCap,BN.nil);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=b.pad(c);$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=-1;return d;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindSubmatchIndex};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindSubmatchIndex=function(a){return this.$val.FindSubmatchIndex(a);};AN.ptr.prototype.FindStringSubmatch=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=CF.zero();d=b.doExecute($ifaceNil,BL.nil,a,0,b.regexpRO.prog.NumCap,$subslice(new BN(c),0,0));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(e===BN.nil){$s=-1;return CB.nil;}f=$makeSlice(CB,(1+b.regexpRO.numSubexp>>0));g=f;h=0;while(true){if(!(h<g.$length)){break;}i=h;if(($imul(2,i))<e.$length&&(j=$imul(2,i),((j<0||j>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+j]))>=0){((i<0||i>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+i]=$substring(a,(k=$imul(2,i),((k<0||k>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+k])),(l=($imul(2,i))+1>>0,((l<0||l>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+l]))));}h++;}$s=-1;return f;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindStringSubmatch};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindStringSubmatch=function(a){return this.$val.FindStringSubmatch(a);};AN.ptr.prototype.FindStringSubmatchIndex=function(a){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=b.doExecute($ifaceNil,BL.nil,a,0,b.regexpRO.prog.NumCap,BN.nil);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=b.pad(c);$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=-1;return d;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindStringSubmatchIndex};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindStringSubmatchIndex=function(a){return this.$val.FindStringSubmatchIndex(a);};AN.ptr.prototype.FindReaderSubmatchIndex=function(a){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=b.doExecute(a,BL.nil,"",0,b.regexpRO.prog.NumCap,BN.nil);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=b.pad(c);$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=-1;return d;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindReaderSubmatchIndex};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindReaderSubmatchIndex=function(a){return this.$val.FindReaderSubmatchIndex(a);};AN.ptr.prototype.FindAll=function(a,b){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];c=[c];d=this;if(b<0){b=a[0].$length+1>>0;}c[0]=$makeSlice(CG,0,10);$r=d.allMatches("",a[0],b,(function(a,c){return function(e){var $ptr,e;c[0]=$append(c[0],$subslice(a[0],(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]),(1>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+1])));};})(a,c));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(c[0].$length===0){$s=-1;return CG.nil;}$s=-1;return c[0];}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindAll};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindAll=function(a,b){return this.$val.FindAll(a,b);};AN.ptr.prototype.FindAllIndex=function(a,b){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=[c];d=this;if(b<0){b=a.$length+1>>0;}c[0]=$makeSlice(CH,0,10);$r=d.allMatches("",a,b,(function(c){return function(e){var $ptr,e;c[0]=$append(c[0],$subslice(e,0,2));};})(c));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(c[0].$length===0){$s=-1;return CH.nil;}$s=-1;return c[0];}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindAllIndex};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindAllIndex=function(a,b){return this.$val.FindAllIndex(a,b);};AN.ptr.prototype.FindAllString=function(a,b){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];c=[c];d=this;if(b<0){b=a[0].length+1>>0;}c[0]=$makeSlice(CB,0,10);$r=d.allMatches(a[0],BL.nil,b,(function(a,c){return function(e){var $ptr,e;c[0]=$append(c[0],$substring(a[0],(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]),(1>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+1])));};})(a,c));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(c[0].$length===0){$s=-1;return CB.nil;}$s=-1;return c[0];}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindAllString};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindAllString=function(a,b){return this.$val.FindAllString(a,b);};AN.ptr.prototype.FindAllStringIndex=function(a,b){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=[c];d=this;if(b<0){b=a.length+1>>0;}c[0]=$makeSlice(CH,0,10);$r=d.allMatches(a,BL.nil,b,(function(c){return function(e){var $ptr,e;c[0]=$append(c[0],$subslice(e,0,2));};})(c));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(c[0].$length===0){$s=-1;return CH.nil;}$s=-1;return c[0];}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindAllStringIndex};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindAllStringIndex=function(a,b){return this.$val.FindAllStringIndex(a,b);};AN.ptr.prototype.FindAllSubmatch=function(a,b){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];c=[c];d=this;if(b<0){b=a[0].$length+1>>0;}c[0]=$makeSlice(CI,0,10);$r=d.allMatches("",a[0],b,(function(a,c){return function(e){var $ptr,e,f,g,h,i,j,k,l,m;g=$makeSlice(CG,(f=e.$length/2,(f===f&&f!==1/0&&f!==-1/0)?f>>0:$throwRuntimeError("integer divide by zero")));h=g;i=0;while(true){if(!(i<h.$length)){break;}j=i;if((k=$imul(2,j),((k<0||k>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+k]))>=0){((j<0||j>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+j]=$subslice(a[0],(l=$imul(2,j),((l<0||l>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+l])),(m=($imul(2,j))+1>>0,((m<0||m>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+m]))));}i++;}c[0]=$append(c[0],g);};})(a,c));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(c[0].$length===0){$s=-1;return CI.nil;}$s=-1;return c[0];}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindAllSubmatch};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindAllSubmatch=function(a,b){return this.$val.FindAllSubmatch(a,b);};AN.ptr.prototype.FindAllSubmatchIndex=function(a,b){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=[c];d=this;if(b<0){b=a.$length+1>>0;}c[0]=$makeSlice(CH,0,10);$r=d.allMatches("",a,b,(function(c){return function(e){var $ptr,e;c[0]=$append(c[0],e);};})(c));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(c[0].$length===0){$s=-1;return CH.nil;}$s=-1;return c[0];}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindAllSubmatchIndex};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindAllSubmatchIndex=function(a,b){return this.$val.FindAllSubmatchIndex(a,b);};AN.ptr.prototype.FindAllStringSubmatch=function(a,b){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];c=[c];d=this;if(b<0){b=a[0].length+1>>0;}c[0]=$makeSlice(CJ,0,10);$r=d.allMatches(a[0],BL.nil,b,(function(a,c){return function(e){var $ptr,e,f,g,h,i,j,k,l,m;g=$makeSlice(CB,(f=e.$length/2,(f===f&&f!==1/0&&f!==-1/0)?f>>0:$throwRuntimeError("integer divide by zero")));h=g;i=0;while(true){if(!(i<h.$length)){break;}j=i;if((k=$imul(2,j),((k<0||k>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+k]))>=0){((j<0||j>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+j]=$substring(a[0],(l=$imul(2,j),((l<0||l>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+l])),(m=($imul(2,j))+1>>0,((m<0||m>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+m]))));}i++;}c[0]=$append(c[0],g);};})(a,c));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(c[0].$length===0){$s=-1;return CJ.nil;}$s=-1;return c[0];}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindAllStringSubmatch};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindAllStringSubmatch=function(a,b){return this.$val.FindAllStringSubmatch(a,b);};AN.ptr.prototype.FindAllStringSubmatchIndex=function(a,b){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=[c];d=this;if(b<0){b=a.length+1>>0;}c[0]=$makeSlice(CH,0,10);$r=d.allMatches(a,BL.nil,b,(function(c){return function(e){var $ptr,e;c[0]=$append(c[0],e);};})(c));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(c[0].$length===0){$s=-1;return CH.nil;}$s=-1;return c[0];}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindAllStringSubmatchIndex};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindAllStringSubmatchIndex=function(a,b){return this.$val.FindAllStringSubmatchIndex(a,b);};AN.ptr.prototype.Split=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;if(b===0){$s=-1;return CB.nil;}if(c.regexpRO.expr.length>0&&(a.length===0)){$s=-1;return new CB([""]);}d=c.FindAllStringIndex(a,b);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=$makeSlice(CB,0,e.$length);g=0;h=0;i=e;j=0;while(true){if(!(j<i.$length)){break;}k=((j<0||j>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+j]);if(b>0&&f.$length>=(b-1>>0)){break;}h=(0>=k.$length?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+0]);if(!(((1>=k.$length?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+1])===0))){f=$append(f,$substring(a,g,h));}g=(1>=k.$length?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+1]);j++;}if(!((h===a.length))){f=$append(f,$substring(a,g));}$s=-1;return f;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.Split};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.Split=function(a,b){return this.$val.Split(a,b);};BH.methods=[{prop:"reset",name:"reset",pkg:"regexp",typ:$funcType([$Int,$Int],[],false)},{prop:"shouldVisit",name:"shouldVisit",pkg:"regexp",typ:$funcType([$Uint32,$Int],[$Bool],false)},{prop:"push",name:"push",pkg:"regexp",typ:$funcType([$Uint32,$Int,$Int],[],false)}];CC.methods=[{prop:"tryBacktrack",name:"tryBacktrack",pkg:"regexp",typ:$funcType([BH,AV,$Uint32,$Int],[$Bool],false)},{prop:"backtrack",name:"backtrack",pkg:"regexp",typ:$funcType([AV,$Int,$Int,$Int],[$Bool],false)},{prop:"newInputBytes",name:"newInputBytes",pkg:"regexp",typ:$funcType([BL],[AV],false)},{prop:"newInputString",name:"newInputString",pkg:"regexp",typ:$funcType([$String],[AV],false)},{prop:"newInputReader",name:"newInputReader",pkg:"regexp",typ:$funcType([B.RuneReader],[AV],false)},{prop:"init",name:"init",pkg:"regexp",typ:$funcType([$Int],[],false)},{prop:"alloc",name:"alloc",pkg:"regexp",typ:$funcType([BT],[BR],false)},{prop:"match",name:"match",pkg:"regexp",typ:$funcType([AV,$Int],[$Bool],false)},{prop:"clear",name:"clear",pkg:"regexp",typ:$funcType([CK],[],false)},{prop:"step",name:"step",pkg:"regexp",typ:$funcType([CK,CK,$Int,$Int,$Int32,A.EmptyOp],[],false)},{prop:"add",name:"add",pkg:"regexp",typ:$funcType([CK,$Uint32,$Int,BN,A.EmptyOp,BR],[BR],false)},{prop:"onepass",name:"onepass",pkg:"regexp",typ:$funcType([AV,$Int],[$Bool],false)}];BW.methods=[{prop:"empty",name:"empty",pkg:"regexp",typ:$funcType([],[$Bool],false)},{prop:"next",name:"next",pkg:"regexp",typ:$funcType([],[$Uint32],false)},{prop:"clear",name:"clear",pkg:"regexp",typ:$funcType([],[],false)},{prop:"contains",name:"contains",pkg:"regexp",typ:$funcType([$Uint32],[$Bool],false)},{prop:"insert",name:"insert",pkg:"regexp",typ:$funcType([$Uint32],[],false)},{prop:"insertNew",name:"insertNew",pkg:"regexp",typ:$funcType([$Uint32],[],false)}];AH.methods=[{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Less",name:"Less",pkg:"",typ:$funcType([$Int,$Int],[$Bool],false)},{prop:"Swap",name:"Swap",pkg:"",typ:$funcType([$Int,$Int],[],false)}];BP.methods=[{prop:"doMatch",name:"doMatch",pkg:"regexp",typ:$funcType([B.RuneReader,BL,$String],[$Bool],false)},{prop:"doExecute",name:"doExecute",pkg:"regexp",typ:$funcType([B.RuneReader,BL,$String,$Int,$Int,BN],[BN],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Copy",name:"Copy",pkg:"",typ:$funcType([],[BP],false)},{prop:"Longest",name:"Longest",pkg:"",typ:$funcType([],[],false)},{prop:"get",name:"get",pkg:"regexp",typ:$funcType([],[CC],false)},{prop:"put",name:"put",pkg:"regexp",typ:$funcType([CC],[],false)},{prop:"NumSubexp",name:"NumSubexp",pkg:"",typ:$funcType([],[$Int],false)},{prop:"SubexpNames",name:"SubexpNames",pkg:"",typ:$funcType([],[CB],false)},{prop:"LiteralPrefix",name:"LiteralPrefix",pkg:"",typ:$funcType([],[$String,$Bool],false)},{prop:"MatchReader",name:"MatchReader",pkg:"",typ:$funcType([B.RuneReader],[$Bool],false)},{prop:"MatchString",name:"MatchString",pkg:"",typ:$funcType([$String],[$Bool],false)},{prop:"Match",name:"Match",pkg:"",typ:$funcType([BL],[$Bool],false)},{prop:"ReplaceAllString",name:"ReplaceAllString",pkg:"",typ:$funcType([$String,$String],[$String],false)},{prop:"ReplaceAllLiteralString",name:"ReplaceAllLiteralString",pkg:"",typ:$funcType([$String,$String],[$String],false)},{prop:"ReplaceAllStringFunc",name:"ReplaceAllStringFunc",pkg:"",typ:$funcType([$String,CL],[$String],false)},{prop:"replaceAll",name:"replaceAll",pkg:"regexp",typ:$funcType([BL,$String,$Int,CM],[BL],false)},{prop:"ReplaceAll",name:"ReplaceAll",pkg:"",typ:$funcType([BL,BL],[BL],false)},{prop:"ReplaceAllLiteral",name:"ReplaceAllLiteral",pkg:"",typ:$funcType([BL,BL],[BL],false)},{prop:"ReplaceAllFunc",name:"ReplaceAllFunc",pkg:"",typ:$funcType([BL,CN],[BL],false)},{prop:"pad",name:"pad",pkg:"regexp",typ:$funcType([BN],[BN],false)},{prop:"allMatches",name:"allMatches",pkg:"regexp",typ:$funcType([$String,BL,$Int,CO],[],false)},{prop:"Find",name:"Find",pkg:"",typ:$funcType([BL],[BL],false)},{prop:"FindIndex",name:"FindIndex",pkg:"",typ:$funcType([BL],[BN],false)},{prop:"FindString",name:"FindString",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"FindStringIndex",name:"FindStringIndex",pkg:"",typ:$funcType([$String],[BN],false)},{prop:"FindReaderIndex",name:"FindReaderIndex",pkg:"",typ:$funcType([B.RuneReader],[BN],false)},{prop:"FindSubmatch",name:"FindSubmatch",pkg:"",typ:$funcType([BL],[CG],false)},{prop:"Expand",name:"Expand",pkg:"",typ:$funcType([BL,BL,BL,BN],[BL],false)},{prop:"ExpandString",name:"ExpandString",pkg:"",typ:$funcType([BL,$String,$String,BN],[BL],false)},{prop:"expand",name:"expand",pkg:"regexp",typ:$funcType([BL,$String,BL,$String,BN],[BL],false)},{prop:"FindSubmatchIndex",name:"FindSubmatchIndex",pkg:"",typ:$funcType([BL],[BN],false)},{prop:"FindStringSubmatch",name:"FindStringSubmatch",pkg:"",typ:$funcType([$String],[CB],false)},{prop:"FindStringSubmatchIndex",name:"FindStringSubmatchIndex",pkg:"",typ:$funcType([$String],[BN],false)},{prop:"FindReaderSubmatchIndex",name:"FindReaderSubmatchIndex",pkg:"",typ:$funcType([B.RuneReader],[BN],false)},{prop:"FindAll",name:"FindAll",pkg:"",typ:$funcType([BL,$Int],[CG],false)},{prop:"FindAllIndex",name:"FindAllIndex",pkg:"",typ:$funcType([BL,$Int],[CH],false)},{prop:"FindAllString",name:"FindAllString",pkg:"",typ:$funcType([$String,$Int],[CB],false)},{prop:"FindAllStringIndex",name:"FindAllStringIndex",pkg:"",typ:$funcType([$String,$Int],[CH],false)},{prop:"FindAllSubmatch",name:"FindAllSubmatch",pkg:"",typ:$funcType([BL,$Int],[CI],false)},{prop:"FindAllSubmatchIndex",name:"FindAllSubmatchIndex",pkg:"",typ:$funcType([BL,$Int],[CH],false)},{prop:"FindAllStringSubmatch",name:"FindAllStringSubmatch",pkg:"",typ:$funcType([$String,$Int],[CJ],false)},{prop:"FindAllStringSubmatchIndex",name:"FindAllStringSubmatchIndex",pkg:"",typ:$funcType([$String,$Int],[CH],false)},{prop:"Split",name:"Split",pkg:"",typ:$funcType([$String,$Int],[CB],false)}];CP.methods=[{prop:"step",name:"step",pkg:"regexp",typ:$funcType([$Int],[$Int32,$Int],false)},{prop:"canCheckPrefix",name:"canCheckPrefix",pkg:"regexp",typ:$funcType([],[$Bool],false)},{prop:"hasPrefix",name:"hasPrefix",pkg:"regexp",typ:$funcType([BP],[$Bool],false)},{prop:"index",name:"index",pkg:"regexp",typ:$funcType([BP,$Int],[$Int],false)},{prop:"context",name:"context",pkg:"regexp",typ:$funcType([$Int],[A.EmptyOp],false)}];CQ.methods=[{prop:"step",name:"step",pkg:"regexp",typ:$funcType([$Int],[$Int32,$Int],false)},{prop:"canCheckPrefix",name:"canCheckPrefix",pkg:"regexp",typ:$funcType([],[$Bool],false)},{prop:"hasPrefix",name:"hasPrefix",pkg:"regexp",typ:$funcType([BP],[$Bool],false)},{prop:"index",name:"index",pkg:"regexp",typ:$funcType([BP,$Int],[$Int],false)},{prop:"context",name:"context",pkg:"regexp",typ:$funcType([$Int],[A.EmptyOp],false)}];CR.methods=[{prop:"step",name:"step",pkg:"regexp",typ:$funcType([$Int],[$Int32,$Int],false)},{prop:"canCheckPrefix",name:"canCheckPrefix",pkg:"regexp",typ:$funcType([],[$Bool],false)},{prop:"hasPrefix",name:"hasPrefix",pkg:"regexp",typ:$funcType([BP],[$Bool],false)},{prop:"index",name:"index",pkg:"regexp",typ:$funcType([BP,$Int],[$Int],false)},{prop:"context",name:"context",pkg:"regexp",typ:$funcType([$Int],[A.EmptyOp],false)}];J.init("regexp",[{prop:"pc",name:"pc",exported:false,typ:$Uint32,tag:""},{prop:"arg",name:"arg",exported:false,typ:$Int,tag:""},{prop:"pos",name:"pos",exported:false,typ:$Int,tag:""}]);K.init("regexp",[{prop:"prog",name:"prog",exported:false,typ:BM,tag:""},{prop:"end",name:"end",exported:false,typ:$Int,tag:""},{prop:"cap",name:"cap",exported:false,typ:BN,tag:""},{prop:"jobs",name:"jobs",exported:false,typ:BO,tag:""},{prop:"visited",name:"visited",exported:false,typ:BJ,tag:""}]);P.init("regexp",[{prop:"sparse",name:"sparse",exported:false,typ:BJ,tag:""},{prop:"dense",name:"dense",exported:false,typ:BQ,tag:""}]);Q.init("regexp",[{prop:"pc",name:"pc",exported:false,typ:$Uint32,tag:""},{prop:"t",name:"t",exported:false,typ:BR,tag:""}]);R.init("regexp",[{prop:"inst",name:"inst",exported:false,typ:BT,tag:""},{prop:"cap",name:"cap",exported:false,typ:BN,tag:""}]);S.init("regexp",[{prop:"re",name:"re",exported:false,typ:BP,tag:""},{prop:"p",name:"p",exported:false,typ:BM,tag:""},{prop:"op",name:"op",exported:false,typ:BK,tag:""},{prop:"maxBitStateLen",name:"maxBitStateLen",exported:false,typ:$Int,tag:""},{prop:"b",name:"b",exported:false,typ:BH,tag:""},{prop:"q0",name:"q0",exported:false,typ:P,tag:""},{prop:"q1",name:"q1",exported:false,typ:P,tag:""},{prop:"pool",name:"pool",exported:false,typ:BS,tag:""},{prop:"matched",name:"matched",exported:false,typ:$Bool,tag:""},{prop:"matchcap",name:"matchcap",exported:false,typ:BN,tag:""},{prop:"inputBytes",name:"inputBytes",exported:false,typ:AX,tag:""},{prop:"inputString",name:"inputString",exported:false,typ:AW,tag:""},{prop:"inputReader",name:"inputReader",exported:false,typ:AY,tag:""}]);V.init("",[{prop:"Inst",name:"Inst",exported:true,typ:BX,tag:""},{prop:"Start",name:"Start",exported:true,typ:$Int,tag:""},{prop:"NumCap",name:"NumCap",exported:true,typ:$Int,tag:""}]);W.init("",[{prop:"Inst",name:"",exported:true,typ:A.Inst,tag:""},{prop:"Next",name:"Next",exported:true,typ:BJ,tag:""}]);AA.init("regexp",[{prop:"sparse",name:"sparse",exported:false,typ:BJ,tag:""},{prop:"dense",name:"dense",exported:false,typ:BJ,tag:""},{prop:"size",name:"size",exported:false,typ:$Uint32,tag:""},{prop:"nextIndex",name:"nextIndex",exported:false,typ:$Uint32,tag:""}]);AH.init($Int32);AN.init("regexp",[{prop:"regexpRO",name:"",exported:false,typ:AO,tag:""},{prop:"mu",name:"mu",exported:false,typ:H.Mutex,tag:""},{prop:"machine",name:"machine",exported:false,typ:CD,tag:""}]);AO.init("regexp",[{prop:"expr",name:"expr",exported:false,typ:$String,tag:""},{prop:"prog",name:"prog",exported:false,typ:BM,tag:""},{prop:"onepass",name:"onepass",exported:false,typ:BK,tag:""},{prop:"prefix",name:"prefix",exported:false,typ:$String,tag:""},{prop:"prefixBytes",name:"prefixBytes",exported:false,typ:BL,tag:""},{prop:"prefixComplete",name:"prefixComplete",exported:false,typ:$Bool,tag:""},{prop:"prefixRune",name:"prefixRune",exported:false,typ:$Int32,tag:""},{prop:"prefixEnd",name:"prefixEnd",exported:false,typ:$Uint32,tag:""},{prop:"cond",name:"cond",exported:false,typ:A.EmptyOp,tag:""},{prop:"numSubexp",name:"numSubexp",exported:false,typ:$Int,tag:""},{prop:"subexpNames",name:"subexpNames",exported:false,typ:CB,tag:""},{prop:"longest",name:"longest",exported:false,typ:$Bool,tag:""}]);AV.init([{prop:"canCheckPrefix",name:"canCheckPrefix",pkg:"regexp",typ:$funcType([],[$Bool],false)},{prop:"context",name:"context",pkg:"regexp",typ:$funcType([$Int],[A.EmptyOp],false)},{prop:"hasPrefix",name:"hasPrefix",pkg:"regexp",typ:$funcType([BP],[$Bool],false)},{prop:"index",name:"index",pkg:"regexp",typ:$funcType([BP,$Int],[$Int],false)},{prop:"step",name:"step",pkg:"regexp",typ:$funcType([$Int],[$Int32,$Int],false)}]);AW.init("regexp",[{prop:"str",name:"str",exported:false,typ:$String,tag:""}]);AX.init("regexp",[{prop:"str",name:"str",exported:false,typ:BL,tag:""}]);AY.init("regexp",[{prop:"r",name:"r",exported:false,typ:B.RuneReader,tag:""},{prop:"atEOT",name:"atEOT",exported:false,typ:$Bool,tag:""},{prop:"pos",name:"pos",exported:false,typ:$Int,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=C.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}U=BG.zero();L=BH.nil;AC=new BI([]);AD=new BJ([4294967295]);AI=new BI([0,9,11,1114111]);AJ=new BI([0,1114111]);AL=BK.nil;}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["testing"]=(function(){var $pkg={},$init,E,O,J,A,L,K,F,B,I,P,Q,N,G,C,H,M,D,Z,AA,AB,BJ,BK,BL,BM,BN,BO,BP,BQ,BR,BS,BT,BU,BV,BW,BX,BY,BZ,CP,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u;E=$packages["bytes"];O=$packages["errors"];J=$packages["flag"];A=$packages["fmt"];L=$packages["github.com/gopherjs/gopherjs/nosync"];K=$packages["internal/race"];F=$packages["io"];B=$packages["os"];I=$packages["runtime"];P=$packages["runtime/debug"];Q=$packages["runtime/trace"];N=$packages["sort"];G=$packages["strconv"];C=$packages["strings"];H=$packages["sync"];M=$packages["sync/atomic"];D=$packages["time"];$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=E.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=O.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=L.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=K.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=P.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=Q.$init();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=N.$init();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=M.$init();$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}b=J.String("test.bench","","run only benchmarks matching `regexp`");$s=18;case 18:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}Z=b;c=J.Duration("test.benchtime",new D.Duration(0,1000000000),"run each benchmark for duration `d`");$s=19;case 19:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}AA=c;d=J.Bool("test.benchmem",false,"print memory allocations for benchmarks");$s=20;case 20:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}AB=d;e=J.Bool("test.short",false,"run smaller test suite to save time");$s=21;case 21:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}BJ=e;f=J.String("test.outputdir","","write profiles to `dir`");$s=22;case 22:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}BK=f;g=J.Bool("test.v",false,"verbose: print additional output");$s=23;case 23:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}BL=g;h=J.Uint("test.count",1,"run tests and benchmarks `n` times");$s=24;case 24:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}BM=h;i=J.String("test.coverprofile","","write a coverage profile to `file`");$s=25;case 25:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}BN=i;j=J.String("test.run","","run only tests and examples matching `regexp`");$s=26;case 26:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}BO=j;k=J.String("test.memprofile","","write a memory profile to `file`");$s=27;case 27:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}BP=k;l=J.Int("test.memprofilerate",0,"set memory profiling `rate` (see runtime.MemProfileRate)");$s=28;case 28:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}BQ=l;m=J.String("test.cpuprofile","","write a cpu profile to `file`");$s=29;case 29:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}BR=m;n=J.String("test.blockprofile","","write a goroutine blocking profile to `file`");$s=30;case 30:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}BS=n;o=J.Int("test.blockprofilerate",1,"set blocking profile `rate` (see runtime.SetBlockProfileRate)");$s=31;case 31:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}BT=o;p=J.String("test.mutexprofile","","write a mutex contention profile to the named file after execution");$s=32;case 32:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}BU=p;q=J.Int("test.mutexprofilefraction",1,"if >= 0, calls runtime.SetMutexProfileFraction()");$s=33;case 33:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}BV=q;r=J.String("test.trace","","write an execution trace to `file`");$s=34;case 34:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}BW=r;s=J.Duration("test.timeout",new D.Duration(0,0),"fail test binary execution after duration `d` (0 means unlimited)");$s=35;case 35:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}BX=s;t=J.String("test.cpu","","comma-separated `list` of cpu counts to run each test with");$s=36;case 36:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}BY=t;u=J.Int("test.parallel",I.GOMAXPROCS(0),"run at most `n` tests in parallel");$s=37;case 37:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}BZ=u;CP=O.New("testing: unexpected use of func Main");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["text/template"]=(function(){var $pkg={},$init,A,I,B,C,M,J,N,D,E,F,G,O,H,K,L,CT,CU,CV,CW,CX,CY,CZ,DA,DB,DC,DD,DE,DF,DG,DH,DN,Z,AA,AB,AN,AO,BD,BE,BF,BO,BP,BQ,BR,BS,BW,BX,BY,BZ,CA,CB,CC,a,b,c,d,X,AC,AD,AE,AF,AP,AQ,AS,AT,AV,AW,AX,AY,AZ,BA,BB,BC,BH,BI,BJ,BK,BL,BM,BN,BT,BU,BV,CD,CE,CF,CG,CH,CI;A=$packages["bytes"];I=$packages["errors"];B=$packages["fmt"];C=$packages["io"];M=$packages["io/ioutil"];J=$packages["net/url"];N=$packages["path/filepath"];D=$packages["reflect"];E=$packages["runtime"];F=$packages["sort"];G=$packages["strings"];O=$packages["sync"];H=$packages["text/template/parse"];K=$packages["unicode"];L=$packages["unicode/utf8"];CT=$ptrType(D.rtype);CU=$ptrType($error);CV=$ptrType(B.Stringer);CW=$ptrType(D.Value);CX=$sliceType($Uint8);CY=$sliceType(D.Value);CZ=$funcType([D.Value,CY],[D.Value],true);DA=$funcType([D.Value,CY],[D.Value,$error],true);DB=$sliceType($emptyInterface);DC=$funcType([DB],[$String],true);DD=$funcType([$emptyInterface],[$Int,$error],false);DE=$funcType([D.Value],[$Bool],false);DF=$funcType([$String,DB],[$String],true);DG=$funcType([D.Value,CY],[$Bool,$error],true);DH=$funcType([D.Value,D.Value],[$Bool,$error],false);DN=$arrayType($Uint8,64);X=function(e){var $ptr,e,f,g,h,i,j,k,l,m,n,o;f=false;g=false;if(!$clone(e,D.Value).IsValid()){h=false;i=true;f=h;g=i;return[f,g];}j=$clone(e,D.Value).Kind();if((j===(17))||(j===(21))||(j===(23))||(j===(24))){f=$clone(e,D.Value).Len()>0;}else if(j===(1)){f=$clone(e,D.Value).Bool();}else if((j===(15))||(j===(16))){f=!((k=$clone(e,D.Value).Complex(),(k.$real===0&&k.$imag===0)));}else if((j===(18))||(j===(19))||(j===(22))||(j===(20))){f=!$clone(e,D.Value).IsNil();}else if((j===(2))||(j===(3))||(j===(4))||(j===(5))||(j===(6))){f=!((l=$clone(e,D.Value).Int(),(l.$high===0&&l.$low===0)));}else if((j===(13))||(j===(14))){f=!(($clone(e,D.Value).Float()===0));}else if((j===(7))||(j===(8))||(j===(9))||(j===(10))||(j===(11))||(j===(12))){f=!((m=$clone(e,D.Value).Uint(),(m.$high===0&&m.$low===0)));}else if(j===(25)){f=true;}else{return[f,g];}n=f;o=true;f=n;g=o;return[f,g];};AC=function(e){var $ptr,e,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=e.Kind();$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if((g===(18))||(g===(19))||(g===(20))||(g===(21))||(g===(22))||(g===(23))){$s=-1;return true;}else if(g===(25)){$s=-1;return $interfaceIsEqual(e,AB);}case 1:$s=-1;return false;}return;}if($f===undefined){$f={$blk:AC};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};AD=function(e){var $ptr,e,f,g,h,i,j,k,l,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=new D.Value.ptr(CT.nil,0,0);g=false;case 1:if(!(($clone(e,D.Value).Kind()===22)||($clone(e,D.Value).Kind()===20))){$s=2;continue;}if($clone(e,D.Value).IsNil()){h=e;i=true;f=h;g=i;$s=-1;return[f,g];}j=$clone(e,D.Value).Elem();$s=3;case 3:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}e=j;$s=1;continue;case 2:k=e;l=false;f=k;g=l;$s=-1;return[f,g];}return;}if($f===undefined){$f={$blk:AD};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};AE=function(e){var $ptr,e,f,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if(!(($clone(e,D.Value).Kind()===20))){$s=-1;return e;}if($clone(e,D.Value).IsNil()){$s=-1;return new D.Value.ptr(CT.nil,0,0);}f=$clone(e,D.Value).Elem();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$s=-1;return f;}return;}if($f===undefined){$f={$blk:AE};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};AF=function(e){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if($clone(e,D.Value).Kind()===22){$s=1;continue;}$s=2;continue;case 1:g=AD($clone(e,D.Value));$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;e=f[0];case 2:if(!$clone(e,D.Value).IsValid()){$s=-1;return[new $String("<no value>"),true];}i=$clone(e,D.Value).Type().Implements(Z);$s=7;case 7:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}if(!(!i)){h=false;$s=6;continue s;}j=$clone(e,D.Value).Type().Implements(AA);$s=8;case 8:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}h=!j;case 6:if(h){$s=4;continue;}$s=5;continue;case 4:if(!($clone(e,D.Value).CanAddr())){k=false;$s=12;continue s;}m=D.PtrTo($clone(e,D.Value).Type()).Implements(Z);$s=14;case 14:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}if(m){l=true;$s=13;continue s;}n=D.PtrTo($clone(e,D.Value).Type()).Implements(AA);$s=15;case 15:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}l=n;case 13:k=l;case 12:if(k){$s=9;continue;}$s=10;continue;case 9:e=$clone(e,D.Value).Addr();$s=11;continue;case 10:o=$clone(e,D.Value).Kind();if((o===(18))||(o===(19))){$s=-1;return[$ifaceNil,false];}case 11:case 5:p=$clone(e,D.Value).Interface();$s=16;case 16:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}$s=-1;return[p,true];}return;}if($f===undefined){$f={$blk:AF};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};AP=function(e){var $ptr,e,f,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f={};$r=AQ(f,e);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return f;}return;}if($f===undefined){$f={$blk:AP};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};AQ=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=f;h=0;i=$keys(g);case 1:if(!(h<i.length)){$s=2;continue;}j=g[i[h]];if(j===undefined){h++;$s=1;continue;}k=j.k;l=j.v;if(!AT(k)){$s=3;continue;}$s=4;continue;case 3:m=B.Errorf("function name %s is not a valid identifier",new DB([new $String(k)]));$s=5;case 5:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}$panic(m);case 4:n=D.ValueOf(l);$s=6;case 6:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=n;if(!(($clone(o,D.Value).Kind()===19))){$panic(new $String("value for "+k+" not a function"));}p=AS($clone(o,D.Value).Type());$s=9;case 9:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}if(!p){$s=7;continue;}$s=8;continue;case 7:q=new $String(k);r=$clone(o,D.Value).Type().NumOut();$s=10;case 10:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=new $Int(r);t=B.Errorf("can't install method/function %q with %d results",new DB([q,s]));$s=11;case 11:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}$panic(t);case 8:u=k;(e||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(u)]={k:u,v:$clone(o,D.Value)};h++;$s=1;continue;case 2:$s=-1;return;}return;}if($f===undefined){$f={$blk:AQ};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.$s=$s;$f.$r=$r;return $f;};AS=function(e){var $ptr,e,f,g,h,i,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=e.NumOut();$s=5;case 5:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}if((f===1)){$s=2;continue;}h=e.NumOut();$s=7;case 7:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}if(!(h===2)){g=false;$s=6;continue s;}i=e.Out(1);$s=8;case 8:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}g=$interfaceIsEqual(i,Z);case 6:if(g){$s=3;continue;}$s=4;continue;case 2:$s=-1;return true;case 3:$s=-1;return true;case 4:case 1:$s=-1;return false;}return;}if($f===undefined){$f={$blk:AS};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};AT=function(e){var $ptr,e,f,g,h,i,j;if(e===""){return false;}f=e;g=0;while(true){if(!(g<f.length)){break;}h=$decodeRune(f,g);i=g;j=h[0];if((j===95)){}else if((i===0)&&!K.IsLetter(j)){return false;}else if(!K.IsLetter(j)&&!K.IsDigit(j)){return false;}g+=h[1];}return true;};AV=function(e,f){var $ptr,e,f,g,h,i,j,k,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if(!$clone(e,D.Value).IsValid()){$s=1;continue;}$s=2;continue;case 1:g=AC(f);$s=5;case 5:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}if(!g){$s=3;continue;}$s=4;continue;case 3:h=B.Errorf("value is nil; should be of type %s",new DB([f]));$s=6;case 6:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),h];case 4:i=D.Zero(f);$s=7;case 7:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}e=i;case 2:j=$clone(e,D.Value).Type().AssignableTo(f);$s=10;case 10:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}if(!j){$s=8;continue;}$s=9;continue;case 8:k=B.Errorf("value has type %s; should be %s",new DB([$clone(e,D.Value).Type(),f]));$s=11;case 11:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),k];case 9:$s=-1;return[e,$ifaceNil];}return;}if($f===undefined){$f={$blk:AV};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};AW=function(e,f){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=AE($clone(e,D.Value));$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if(!$clone(h,D.Value).IsValid()){$s=2;continue;}$s=3;continue;case 2:i=B.Errorf("index of untyped nil",new DB([]));$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),i];case 3:j=f;k=0;case 5:if(!(k<j.$length)){$s=6;continue;}l=((k<0||k>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+k]);m=AE($clone(l,D.Value));$s=7;case 7:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=m;o=false;q=AD($clone(h,D.Value));$s=8;case 8:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;h=p[0];o=p[1];if(o){$s=9;continue;}$s=10;continue;case 9:r=B.Errorf("index of nil pointer",new DB([]));$s=11;case 11:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),r];case 10:s=$clone(h,D.Value).Kind();if((s===(17))||(s===(23))||(s===(24))){$s=13;continue;}if(s===(21)){$s=14;continue;}if(s===(0)){$s=15;continue;}$s=16;continue;case 13:t=new $Int64(0,0);u=$clone(n,D.Value).Kind();if((u===(2))||(u===(3))||(u===(4))||(u===(5))||(u===(6))){$s=19;continue;}if((u===(7))||(u===(8))||(u===(9))||(u===(10))||(u===(11))||(u===(12))){$s=20;continue;}if(u===(0)){$s=21;continue;}$s=22;continue;case 19:t=$clone(n,D.Value).Int();$s=23;continue;case 20:t=(v=$clone(n,D.Value).Uint(),new $Int64(v.$high,v.$low));$s=23;continue;case 21:w=B.Errorf("cannot index slice/array with nil",new DB([]));$s=24;case 24:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),w];case 22:x=B.Errorf("cannot index slice/array with type %s",new DB([$clone(n,D.Value).Type()]));$s=25;case 25:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),x];case 23:case 18:if((t.$high<0||(t.$high===0&&t.$low<0))||(y=new $Int64(0,$clone(h,D.Value).Len()),(t.$high>y.$high||(t.$high===y.$high&&t.$low>=y.$low)))){$s=26;continue;}$s=27;continue;case 26:z=B.Errorf("index out of range: %d",new DB([t]));$s=28;case 28:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),z];case 27:aa=$clone(h,D.Value).Index(((t.$low+((t.$high>>31)*4294967296))>>0));$s=29;case 29:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}h=aa;$s=17;continue;case 14:ac=$clone(n,D.Value);ad=$clone(h,D.Value).Type().Key();$s=30;case 30:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}ae=ad;af=AV(ac,ae);$s=31;case 31:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}ab=af;ag=ab[0];ah=ab[1];if(!($interfaceIsEqual(ah,$ifaceNil))){$s=-1;return[new D.Value.ptr(CT.nil,0,0),ah];}ai=$clone(h,D.Value).MapIndex($clone(ag,D.Value));$s=32;case 32:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}aj=ai;if($clone(aj,D.Value).IsValid()){$s=33;continue;}$s=34;continue;case 33:h=aj;$s=35;continue;case 34:ak=$clone(h,D.Value).Type().Elem();$s=36;case 36:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=D.Zero(ak);$s=37;case 37:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}h=al;case 35:$s=17;continue;case 15:$panic(new $String("unreachable"));$s=17;continue;case 16:am=B.Errorf("can't index item of type %s",new DB([$clone(h,D.Value).Type()]));$s=38;case 38:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),am];case 17:case 12:k++;$s=5;continue;case 6:$s=-1;return[h,$ifaceNil];}return;}if($f===undefined){$f={$blk:AW};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};AX=function(e){var $ptr,e,f,g,h,i,j,k,l,m,n,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=D.ValueOf(e);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if(!$clone(g,D.Value).IsValid()){$s=2;continue;}$s=3;continue;case 2:h=B.Errorf("len of untyped nil",new DB([]));$s=4;case 4:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=-1;return[0,h];case 3:j=AD($clone(g,D.Value));$s=5;case 5:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;g=i[0];k=i[1];if(k){$s=6;continue;}$s=7;continue;case 6:l=B.Errorf("len of nil pointer",new DB([]));$s=8;case 8:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}$s=-1;return[0,l];case 7:m=$clone(g,D.Value).Kind();if((m===(17))||(m===(18))||(m===(21))||(m===(23))||(m===(24))){$s=-1;return[$clone(g,D.Value).Len(),$ifaceNil];}n=B.Errorf("len of type %s",new DB([$clone(g,D.Value).Type()]));$s=9;case 9:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$s=-1;return[0,n];}return;}if($f===undefined){$f={$blk:AX};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.$s=$s;$f.$r=$r;return $f;};AY=function(e,f){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=AE($clone(e,D.Value));$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if(!$clone(h,D.Value).IsValid()){$s=2;continue;}$s=3;continue;case 2:i=B.Errorf("call of nil",new DB([]));$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),i];case 3:j=$clone(h,D.Value).Type();k=j.Kind();$s=7;case 7:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}if(!((k===19))){$s=5;continue;}$s=6;continue;case 5:l=B.Errorf("non-function of type %s",new DB([j]));$s=8;case 8:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),l];case 6:m=AS(j);$s=11;case 11:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}if(!m){$s=9;continue;}$s=10;continue;case 9:n=j.NumOut();$s=12;case 12:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=new $Int(n);p=B.Errorf("function called with %d args; should be 1 or 2",new DB([o]));$s=13;case 13:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),p];case 10:q=j.NumIn();$s=14;case 14:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=q;s=$ifaceNil;t=j.IsVariadic();$s=18;case 18:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}if(t){$s=15;continue;}$s=16;continue;case 15:if(f.$length<(r-1>>0)){$s=19;continue;}$s=20;continue;case 19:u=B.Errorf("wrong number of args: got %d want at least %d",new DB([new $Int(f.$length),new $Int((r-1>>0))]));$s=21;case 21:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),u];case 20:v=j.In(r-1>>0);$s=22;case 22:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}w=v.Elem();$s=23;case 23:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}s=w;$s=17;continue;case 16:if(!((f.$length===r))){$s=24;continue;}$s=25;continue;case 24:x=B.Errorf("wrong number of args: got %d want %d",new DB([new $Int(f.$length),new $Int(r)]));$s=26;case 26:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),x];case 25:case 17:y=$makeSlice(CY,f.$length);z=f;aa=0;case 27:if(!(aa<z.$length)){$s=28;continue;}ab=aa;ac=((aa<0||aa>=z.$length)?($throwRuntimeError("index out of range"),undefined):z.$array[z.$offset+aa]);ad=AE($clone(ac,D.Value));$s=29;case 29:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}ae=ad;af=$ifaceNil;ag=j.IsVariadic();$s=33;case 33:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}if(!ag||ab<(r-1>>0)){$s=30;continue;}$s=31;continue;case 30:ah=j.In(ab);$s=34;case 34:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}af=ah;$s=32;continue;case 31:af=s;case 32:ai=$ifaceNil;ak=AV($clone(ae,D.Value),af);$s=35;case 35:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}aj=ak;((ab<0||ab>=y.$length)?($throwRuntimeError("index out of range"),undefined):y.$array[y.$offset+ab]=aj[0]);ai=aj[1];if(!($interfaceIsEqual(ai,$ifaceNil))){$s=36;continue;}$s=37;continue;case 36:al=B.Errorf("arg %d: %s",new DB([new $Int(ab),ai]));$s=38;case 38:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),al];case 37:aa++;$s=27;continue;case 28:am=$clone(h,D.Value).Call(y);$s=39;case 39:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}an=am;if((an.$length===2)&&!$clone((1>=an.$length?($throwRuntimeError("index out of range"),undefined):an.$array[an.$offset+1]),D.Value).IsNil()){$s=40;continue;}$s=41;continue;case 40:ao=$clone((1>=an.$length?($throwRuntimeError("index out of range"),undefined):an.$array[an.$offset+1]),D.Value).Interface();$s=42;case 42:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return[(0>=an.$length?($throwRuntimeError("index out of range"),undefined):an.$array[an.$offset+0]),$assertType(ao,$error)];case 41:$s=-1;return[(0>=an.$length?($throwRuntimeError("index out of range"),undefined):an.$array[an.$offset+0]),$ifaceNil];}return;}if($f===undefined){$f={$blk:AY};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};AZ=function(e){var $ptr,e,f,g,h,i,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=AE($clone(e,D.Value));$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=X($clone(g,D.Value));$s=2;case 2:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}f=h;i=f[0];$s=-1;return i;}return;}if($f===undefined){$f={$blk:AZ};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};BA=function(e,f){var $ptr,e,f,g,h,i,j,k,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=AZ($clone(e,D.Value));$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}if(!g){$s=1;continue;}$s=2;continue;case 1:$s=-1;return e;case 2:h=f;i=0;case 4:if(!(i<h.$length)){$s=5;continue;}j=i;e=((j<0||j>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+j]);k=AZ($clone(e,D.Value));$s=8;case 8:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}if(!k){$s=6;continue;}$s=7;continue;case 6:$s=5;continue;case 7:i++;$s=4;continue;case 5:$s=-1;return e;}return;}if($f===undefined){$f={$blk:BA};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};BB=function(e,f){var $ptr,e,f,g,h,i,j,k,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=AZ($clone(e,D.Value));$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}if(g){$s=1;continue;}$s=2;continue;case 1:$s=-1;return e;case 2:h=f;i=0;case 4:if(!(i<h.$length)){$s=5;continue;}j=i;e=((j<0||j>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+j]);k=AZ($clone(e,D.Value));$s=8;case 8:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}if(k){$s=6;continue;}$s=7;continue;case 6:$s=5;continue;case 7:i++;$s=4;continue;case 5:$s=-1;return e;}return;}if($f===undefined){$f={$blk:BB};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};BC=function(e){var $ptr,e,f,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=AZ($clone(e,D.Value));$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$s=-1;return!f;}return;}if($f===undefined){$f={$blk:BC};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};BH=function(e){var $ptr,e,f;f=$clone(e,D.Value).Kind();if(f===(1)){return[1,$ifaceNil];}else if((f===(2))||(f===(3))||(f===(4))||(f===(5))||(f===(6))){return[3,$ifaceNil];}else if((f===(7))||(f===(8))||(f===(9))||(f===(10))||(f===(11))||(f===(12))){return[6,$ifaceNil];}else if((f===(13))||(f===(14))){return[4,$ifaceNil];}else if((f===(15))||(f===(16))){return[2,$ifaceNil];}else if(f===(24)){return[5,$ifaceNil];}return[0,BD];};BI=function(e,f){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=AE($clone(e,D.Value));$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;i=BH($clone(h,D.Value));j=i[0];k=i[1];if(!($interfaceIsEqual(k,$ifaceNil))){$s=-1;return[false,k];}if(f.$length===0){$s=-1;return[false,BF];}l=f;m=0;case 2:if(!(m<l.$length)){$s=3;continue;}n=((m<0||m>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+m]);o=AE($clone(n,D.Value));$s=4;case 4:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=o;q=BH($clone(p,D.Value));r=q[0];s=q[1];if(!($interfaceIsEqual(s,$ifaceNil))){$s=-1;return[false,s];}t=false;if(!((j===r))){$s=5;continue;}$s=6;continue;case 5:if((j===3)&&(r===6)){t=(u=$clone(h,D.Value).Int(),(u.$high>0||(u.$high===0&&u.$low>=0)))&&(v=(w=$clone(h,D.Value).Int(),new $Uint64(w.$high,w.$low)),x=$clone(p,D.Value).Uint(),(v.$high===x.$high&&v.$low===x.$low));}else if((j===6)&&(r===3)){t=(y=$clone(p,D.Value).Int(),(y.$high>0||(y.$high===0&&y.$low>=0)))&&(z=$clone(h,D.Value).Uint(),aa=(ab=$clone(p,D.Value).Int(),new $Uint64(ab.$high,ab.$low)),(z.$high===aa.$high&&z.$low===aa.$low));}else{$s=-1;return[false,BE];}$s=7;continue;case 6:ac=j;if(ac===(1)){$s=9;continue;}if(ac===(2)){$s=10;continue;}if(ac===(4)){$s=11;continue;}if(ac===(3)){$s=12;continue;}if(ac===(5)){$s=13;continue;}if(ac===(6)){$s=14;continue;}$s=15;continue;case 9:t=$clone(h,D.Value).Bool()===$clone(p,D.Value).Bool();$s=16;continue;case 10:t=(ad=$clone(h,D.Value).Complex(),ae=$clone(p,D.Value).Complex(),(ad.$real===ae.$real&&ad.$imag===ae.$imag));$s=16;continue;case 11:t=$clone(h,D.Value).Float()===$clone(p,D.Value).Float();$s=16;continue;case 12:t=(af=$clone(h,D.Value).Int(),ag=$clone(p,D.Value).Int(),(af.$high===ag.$high&&af.$low===ag.$low));$s=16;continue;case 13:ah=$clone(h,D.Value).String();$s=17;case 17:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ai=$clone(p,D.Value).String();$s=18;case 18:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}t=ah===ai;$s=16;continue;case 14:t=(aj=$clone(h,D.Value).Uint(),ak=$clone(p,D.Value).Uint(),(aj.$high===ak.$high&&aj.$low===ak.$low));$s=16;continue;case 15:$panic(new $String("invalid kind"));case 16:case 8:case 7:if(t){$s=-1;return[true,$ifaceNil];}m++;$s=2;continue;case 3:$s=-1;return[false,$ifaceNil];}return;}if($f===undefined){$f={$blk:BI};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BJ=function(e,f){var $ptr,e,f,g,h,i,j,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:h=BI($clone(e,D.Value),new CY([$clone(f,D.Value)]));$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;i=g[0];j=g[1];$s=-1;return[!i,j];}return;}if($f===undefined){$f={$blk:BJ};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};BK=function(e,f){var $ptr,aa,ab,ac,ad,ae,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=AE($clone(e,D.Value));$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;i=BH($clone(h,D.Value));j=i[0];k=i[1];if(!($interfaceIsEqual(k,$ifaceNil))){$s=-1;return[false,k];}l=AE($clone(f,D.Value));$s=2;case 2:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=l;n=BH($clone(m,D.Value));o=n[0];k=n[1];if(!($interfaceIsEqual(k,$ifaceNil))){$s=-1;return[false,k];}p=false;if(!((j===o))){$s=3;continue;}$s=4;continue;case 3:if((j===3)&&(o===6)){p=(q=$clone(h,D.Value).Int(),(q.$high<0||(q.$high===0&&q.$low<0)))||(r=(s=$clone(h,D.Value).Int(),new $Uint64(s.$high,s.$low)),t=$clone(m,D.Value).Uint(),(r.$high<t.$high||(r.$high===t.$high&&r.$low<t.$low)));}else if((j===6)&&(o===3)){p=(u=$clone(m,D.Value).Int(),(u.$high>0||(u.$high===0&&u.$low>=0)))&&(v=$clone(h,D.Value).Uint(),w=(x=$clone(m,D.Value).Int(),new $Uint64(x.$high,x.$low)),(v.$high<w.$high||(v.$high===w.$high&&v.$low<w.$low)));}else{$s=-1;return[false,BE];}$s=5;continue;case 4:y=j;if((y===(1))||(y===(2))){$s=7;continue;}if(y===(4)){$s=8;continue;}if(y===(3)){$s=9;continue;}if(y===(5)){$s=10;continue;}if(y===(6)){$s=11;continue;}$s=12;continue;case 7:$s=-1;return[false,BD];case 8:p=$clone(h,D.Value).Float()<$clone(m,D.Value).Float();$s=13;continue;case 9:p=(z=$clone(h,D.Value).Int(),aa=$clone(m,D.Value).Int(),(z.$high<aa.$high||(z.$high===aa.$high&&z.$low<aa.$low)));$s=13;continue;case 10:ab=$clone(h,D.Value).String();$s=14;case 14:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}ac=$clone(m,D.Value).String();$s=15;case 15:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}p=ab<ac;$s=13;continue;case 11:p=(ad=$clone(h,D.Value).Uint(),ae=$clone(m,D.Value).Uint(),(ad.$high<ae.$high||(ad.$high===ae.$high&&ad.$low<ae.$low)));$s=13;continue;case 12:$panic(new $String("invalid kind"));case 13:case 6:case 5:$s=-1;return[p,$ifaceNil];}return;}if($f===undefined){$f={$blk:BK};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BL=function(e,f){var $ptr,e,f,g,h,i,j,k,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:h=BK($clone(e,D.Value),$clone(f,D.Value));$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;i=g[0];j=g[1];if(i||!($interfaceIsEqual(j,$ifaceNil))){$s=-1;return[i,j];}k=BI($clone(e,D.Value),new CY([$clone(f,D.Value)]));$s=2;case 2:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=-1;return k;}return;}if($f===undefined){$f={$blk:BL};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};BM=function(e,f){var $ptr,e,f,g,h,i,j,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:h=BL($clone(e,D.Value),$clone(f,D.Value));$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;i=g[0];j=g[1];if(!($interfaceIsEqual(j,$ifaceNil))){$s=-1;return[false,j];}$s=-1;return[!i,$ifaceNil];}return;}if($f===undefined){$f={$blk:BM};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};BN=function(e,f){var $ptr,e,f,g,h,i,j,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:h=BK($clone(e,D.Value),$clone(f,D.Value));$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;i=g[0];j=g[1];if(!($interfaceIsEqual(j,$ifaceNil))){$s=-1;return[false,j];}$s=-1;return[!i,$ifaceNil];}return;}if($f===undefined){$f={$blk:BN};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};BT=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=0;h=f;i=0;case 1:if(!(i<h.$length)){$s=2;continue;}j=i;k=((i<0||i>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+i]);l=CX.nil;m=k;if(m===(34)){l=BO;}else if(m===(39)){l=BP;}else if(m===(38)){l=BQ;}else if(m===(60)){l=BR;}else if(m===(62)){l=BS;}else{i++;$s=1;continue;}case 3:n=e.Write($subslice(f,g,j));$s=4;case 4:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}n;o=e.Write(l);$s=5;case 5:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}o;g=j+1>>0;i++;$s=1;continue;case 2:p=e.Write($subslice(f,g));$s=6;case 6:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}p;$s=-1;return;}return;}if($f===undefined){$f={$blk:BT};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};$pkg.HTMLEscape=BT;BU=function(e){var $ptr,e,f,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=[f];if(!G.ContainsAny(e,"'\"&<>")){$s=-1;return e;}f[0]=new A.Buffer.ptr(CX.nil,0,DN.zero(),0);$r=BT(f[0],new CX($stringToBytes(e)));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return f[0].String();}return;}if($f===undefined){$f={$blk:BU};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};$pkg.HTMLEscapeString=BU;BV=function(e){var $ptr,e,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=CI(e);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=BU(f);$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$s=-1;return g;}return;}if($f===undefined){$f={$blk:BV};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};$pkg.HTMLEscaper=BV;CD=function(e,f){var $ptr,aa,ab,ac,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=0;h=0;case 1:if(!(h<f.$length)){$s=2;continue;}i=((h<0||h>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+h]);if(!CF((i>>0))){$s=3;continue;}$s=4;continue;case 3:h=h+(1)>>0;$s=1;continue;case 4:j=e.Write($subslice(f,g,h));$s=5;case 5:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;if(i<128){$s=6;continue;}$s=7;continue;case 6:k=i;if(k===(92)){$s=10;continue;}if(k===(39)){$s=11;continue;}if(k===(34)){$s=12;continue;}if(k===(60)){$s=13;continue;}if(k===(62)){$s=14;continue;}$s=15;continue;case 10:l=e.Write(BY);$s=17;case 17:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}l;$s=16;continue;case 11:m=e.Write(BZ);$s=18;case 18:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}m;$s=16;continue;case 12:n=e.Write(CA);$s=19;case 19:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}n;$s=16;continue;case 13:o=e.Write(CB);$s=20;case 20:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}o;$s=16;continue;case 14:p=e.Write(CC);$s=21;case 21:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}p;$s=16;continue;case 15:q=e.Write(BW);$s=22;case 22:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}q;r=i>>>4<<24>>>24;s=(i&15)>>>0;t=r;u=s;v=e.Write($subslice(BX,t,(t+1<<24>>>24)));$s=23;case 23:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}v;w=e.Write($subslice(BX,u,(u+1<<24>>>24)));$s=24;case 24:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}w;case 16:case 9:$s=8;continue;case 7:x=L.DecodeRune($subslice(f,h));y=x[0];z=x[1];if(K.IsPrint(y)){$s=25;continue;}$s=26;continue;case 25:aa=e.Write($subslice(f,h,(h+z>>0)));$s=28;case 28:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}aa;$s=27;continue;case 26:ab=B.Fprintf(e,"\\u%04X",new DB([new $Int32(y)]));$s=29;case 29:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}ab;case 27:h=h+((z-1>>0))>>0;case 8:g=h+1>>0;h=h+(1)>>0;$s=1;continue;case 2:ac=e.Write($subslice(f,g));$s=30;case 30:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ac;$s=-1;return;}return;}if($f===undefined){$f={$blk:CD};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$pkg.JSEscape=CD;CE=function(e){var $ptr,e,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=[f];g=G.IndexFunc(e,CF);$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}if(g<0){$s=1;continue;}$s=2;continue;case 1:$s=-1;return e;case 2:f[0]=new A.Buffer.ptr(CX.nil,0,DN.zero(),0);$r=CD(f[0],new CX($stringToBytes(e)));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return f[0].String();}return;}if($f===undefined){$f={$blk:CE};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};$pkg.JSEscapeString=CE;CF=function(e){var $ptr,e,f;f=e;if((f===(92))||(f===(39))||(f===(34))||(f===(60))||(f===(62))){return true;}return e<32||128<=e;};CG=function(e){var $ptr,e,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=CI(e);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=CE(f);$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$s=-1;return g;}return;}if($f===undefined){$f={$blk:CG};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};$pkg.JSEscaper=CG;CH=function(e){var $ptr,e,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=CI(e);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=J.QueryEscape(f);$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$s=-1;return g;}return;}if($f===undefined){$f={$blk:CH};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};$pkg.URLQueryEscaper=CH;CI=function(e){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=false;g="";if(e.$length===1){h=$assertType((0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]),$String,true);g=h[0];f=h[1];}if(!f){$s=1;continue;}$s=2;continue;case 1:i=e;j=0;case 3:if(!(j<i.$length)){$s=4;continue;}k=j;l=((j<0||j>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+j]);n=D.ValueOf(l);$s=5;case 5:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=AF($clone(n,D.Value));$s=6;case 6:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}m=o;p=m[0];q=m[1];if(q){((k<0||k>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+k]=p);}j++;$s=3;continue;case 4:r=B.Sprint(e);$s=7;case 7:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}g=r;case 2:$s=-1;return g;}return;}if($f===undefined){$f={$blk:CI};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.$s=$s;$f.$r=$r;return $f;};$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=M.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=N.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=O.$init();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=K.$init();$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=L.$init();$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}a=D.TypeOf(CU.nil).Elem();$s=16;case 16:if($c){$c=false;a=a.$blk();}if(a&&a.$blk!==undefined){break s;}Z=a;b=D.TypeOf(CV.nil).Elem();$s=17;case 17:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}AA=b;c=D.TypeOf(CW.nil).Elem();$s=18;case 18:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}AB=c;BD=I.New("invalid type for comparison");BE=I.New("incompatible types for comparison");BF=I.New("missing argument for comparison");BO=new CX($stringToBytes("""));BP=new CX($stringToBytes("'"));BQ=new CX($stringToBytes("&"));BR=new CX($stringToBytes("<"));BS=new CX($stringToBytes(">"));BW=new CX($stringToBytes("\\u00"));BX=new CX($stringToBytes("0123456789ABCDEF"));BY=new CX($stringToBytes("\\\\"));BZ=new CX($stringToBytes("\\'"));CA=new CX($stringToBytes("\\\""));CB=new CX($stringToBytes("\\x3C"));CC=new CX($stringToBytes("\\x3E"));AN=$makeMap($String.keyFor,[{k:"and",v:new CZ(BA)},{k:"call",v:new DA(AY)},{k:"html",v:new DC(BV)},{k:"index",v:new DA(AW)},{k:"js",v:new DC(CG)},{k:"len",v:new DD(AX)},{k:"not",v:new DE(BC)},{k:"or",v:new CZ(BB)},{k:"print",v:new DC(B.Sprint)},{k:"printf",v:new DF(B.Sprintf)},{k:"println",v:new DC(B.Sprintln)},{k:"urlquery",v:new DC(CH)},{k:"eq",v:new DG(BI)},{k:"ge",v:new DH(BN)},{k:"gt",v:new DH(BM)},{k:"le",v:new DH(BL)},{k:"lt",v:new DH(BK)},{k:"ne",v:new DH(BJ)}]);d=AP(AN);$s=19;case 19:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}AO=d;}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["github.com/dedis/protobuf"]=(function(){var $pkg={},$init,H,A,B,C,D,L,E,F,M,N,I,J,K,O,G,P,Q,X,Y,Z,AA,AC,AH,AJ,BC,BD,BE,BF,BG,BH,BI,BJ,BK,BL,BM,BN,BO,BP,BQ,BR,BS,BT,BU,BV,BW,BX,BY,BZ,CA,CB,CC,CG,CH,CI,T,U,V,W,AE,AF,AG,AK,AL,AO,a,b,R,S,AD,AI,AM,AN;H=$packages["bytes"];A=$packages["encoding"];B=$packages["encoding/binary"];C=$packages["errors"];D=$packages["fmt"];L=$packages["io"];E=$packages["math"];F=$packages["reflect"];M=$packages["regexp"];N=$packages["sort"];I=$packages["strconv"];J=$packages["strings"];K=$packages["sync"];O=$packages["text/template"];G=$packages["time"];P=$pkg.Constructors=$newType(4,$kindMap,"protobuf.Constructors",true,"github.com/dedis/protobuf",true,null);Q=$pkg.decoder=$newType(0,$kindStruct,"protobuf.decoder",true,"github.com/dedis/protobuf",false,function(nm_){this.$val=this;if(arguments.length===0){this.nm=false;return;}this.nm=nm_;});X=$pkg.Ufixed32=$newType(4,$kindUint32,"protobuf.Ufixed32",true,"github.com/dedis/protobuf",true,null);Y=$pkg.Ufixed64=$newType(8,$kindUint64,"protobuf.Ufixed64",true,"github.com/dedis/protobuf",true,null);Z=$pkg.Sfixed32=$newType(4,$kindInt32,"protobuf.Sfixed32",true,"github.com/dedis/protobuf",true,null);AA=$pkg.Sfixed64=$newType(8,$kindInt64,"protobuf.Sfixed64",true,"github.com/dedis/protobuf",true,null);AC=$pkg.encoder=$newType(0,$kindStruct,"protobuf.encoder",true,"github.com/dedis/protobuf",false,function(Buffer_){this.$val=this;if(arguments.length===0){this.Buffer=new H.Buffer.ptr(BD.nil,0,BK.zero(),0);return;}this.Buffer=Buffer_;});AH=$pkg.TagPrefix=$newType(4,$kindInt,"protobuf.TagPrefix",true,"github.com/dedis/protobuf",true,null);AJ=$pkg.ProtoField=$newType(0,$kindStruct,"protobuf.ProtoField",true,"github.com/dedis/protobuf",true,function(ID_,Prefix_,Name_,Index_,Field_){this.$val=this;if(arguments.length===0){this.ID=new $Int64(0,0);this.Prefix=0;this.Name="";this.Index=BH.nil;this.Field=new F.StructField.ptr("","",$ifaceNil,"",0,BH.nil,false);return;}this.ID=ID_;this.Prefix=Prefix_;this.Name=Name_;this.Index=Index_;this.Field=Field_;});BC=$ptrType(G.Location);BD=$sliceType($Uint8);BE=$funcType([],[$emptyInterface],false);BF=$sliceType($emptyInterface);BG=$ptrType(F.rtype);BH=$sliceType($Int);BI=$ptrType(AJ);BJ=$sliceType(F.Value);BK=$arrayType($Uint8,64);BL=$sliceType($Bool);BM=$sliceType($Int32);BN=$sliceType($Int64);BO=$sliceType($Uint32);BP=$sliceType($Uint64);BQ=$sliceType(Z);BR=$sliceType(AA);BS=$sliceType(X);BT=$sliceType(Y);BU=$sliceType($Float32);BV=$sliceType($Float64);BW=$sliceType($String);BX=$arrayType($Uint8,10);BY=$arrayType($Uint8,4);BZ=$arrayType($Uint8,8);CA=$sliceType(BI);CB=$ptrType($Int);CC=$structType("",[]);CG=$ptrType(P);CH=$ptrType(Q);CI=$ptrType(AC);$ptrType(P).prototype.String=function(){var $ptr,c,d,e,f,g,h,i,j,k,l,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;d="";e=c.$get();f=0;g=$keys(e);case 1:if(!(f<g.length)){$s=2;continue;}h=e[g[f]];if(h===undefined){f++;$s=1;continue;}i=h.k;j=h.v;k=i.String();$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=D.Sprintf("%+v",new BF([new BE(j)]));$s=4;case 4:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}d=d+(k+"=>"+l+"\t");f++;$s=1;continue;case 2:$s=-1;return d;}return;}if($f===undefined){$f={$blk:$ptrType(P).prototype.String};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};R=function(c,d){var $ptr,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=S(c,d,false);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=-1;return e;}return;}if($f===undefined){$f={$blk:R};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Decode=R;S=function(c,d,e){var $ptr,c,d,e,f,g,h,i,j,k,l,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if($interfaceIsEqual(d,$ifaceNil)){$s=-1;return $ifaceNil;}f=new Q.ptr(e);g=F.ValueOf(d);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if(!(($clone(h,F.Value).Kind()===22))){$s=-1;return C.New("Decode has been given a non pointer type");}i=c;j=$clone(h,F.Value).Elem();$s=2;case 2:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone(j,F.Value);l=f.message(i,k);$s=3;case 3:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}$s=-1;return l;}return;}if($f===undefined){$f={$blk:S};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};$pkg.DecodeWithConstructors=S;Q.ptr.prototype.message=function(c,d){var $ptr,aa,ab,ac,ad,ae,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=this;f=AM($clone(d,F.Value).Type());$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;h=0;case 2:if(!(c.$length>0)){$s=3;continue;}i=B.Uvarint(c);j=i[0];k=i[1];if(k<=0){$s=-1;return C.New("bad protobuf field key");}c=$subslice(c,k);l=(new $Uint64(j.$high&0,(j.$low&7)>>>0).$low>>0);m=$shiftRightUint64(j,3);n=new F.Value.ptr(BG.nil,0,0);while(true){if(!(h<g.$length&&(o=((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h]).ID,p=new $Int64(m.$high,m.$low),(o.$high<p.$high||(o.$high===p.$high&&o.$low<p.$low))))){break;}h=h+(1)>>0;}if(h<g.$length&&(q=((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h]).ID,r=new $Int64(m.$high,m.$low),(q.$high===r.$high&&q.$low===r.$low))){$s=4;continue;}$s=5;continue;case 4:s=((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h]).Index;t=$makeSlice(BH,0,s.$length);u=s;v=0;case 6:if(!(v<u.$length)){$s=7;continue;}w=((v<0||v>=u.$length)?($throwRuntimeError("index out of range"),undefined):u.$array[u.$offset+v]);t=$append(t,w);x=$clone(d,F.Value).FieldByIndex(t);$s=8;case 8:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}n=x;if(($clone(n,F.Value).Kind()===22)&&$clone(n,F.Value).IsNil()){$s=9;continue;}$s=10;continue;case 9:y=$clone(n,F.Value).Type().Elem();$s=11;case 11:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}z=F.New(y);$s=12;case 12:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}$r=$clone(n,F.Value).Set($clone(z,F.Value));$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 10:v++;$s=6;continue;case 7:case 5:ab=e.value(l,c,$clone(n,F.Value));$s=14;case 14:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}aa=ab;ac=aa[0];ad=aa[1];if(!($interfaceIsEqual(ad,$ifaceNil))){$s=15;continue;}$s=16;continue;case 15:if(h<g.$length&&!(((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h])===BI.nil)){$s=17;continue;}$s=18;continue;case 17:ae=D.Errorf("Error while decding FieldName %s: %v",new BF([new $String(((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h]).Name),ad]));$s=20;case 20:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}$s=-1;return ae;case 18:$s=-1;return ad;case 19:case 16:c=ac;$s=2;continue;case 3:$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.message};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};Q.prototype.message=function(c,d){return this.$val.message(c,d);};Q.ptr.prototype.value=function(c,d,e){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=this;g=new $Uint64(0,0);h=0;i=BD.nil;j=c;if(j===(0)){k=B.Uvarint(d);g=k[0];h=k[1];if(h<=0){$s=-1;return[BD.nil,C.New("bad protobuf varint value")];}d=$subslice(d,h);}else if(j===(5)){if(d.$length<4){$s=-1;return[BD.nil,C.New("bad protobuf 32-bit value")];}g=(l=(m=(n=new $Uint64(0,(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0])),o=$shiftLeft64(new $Uint64(0,(1>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+1])),8),new $Uint64(n.$high|o.$high,(n.$low|o.$low)>>>0)),p=$shiftLeft64(new $Uint64(0,(2>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+2])),16),new $Uint64(m.$high|p.$high,(m.$low|p.$low)>>>0)),q=$shiftLeft64(new $Uint64(0,(3>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+3])),24),new $Uint64(l.$high|q.$high,(l.$low|q.$low)>>>0));d=$subslice(d,4);}else if(j===(1)){if(d.$length<8){$s=-1;return[BD.nil,C.New("bad protobuf 64-bit value")];}g=(r=(s=(t=(u=(v=(w=(x=new $Uint64(0,(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0])),y=$shiftLeft64(new $Uint64(0,(1>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+1])),8),new $Uint64(x.$high|y.$high,(x.$low|y.$low)>>>0)),z=$shiftLeft64(new $Uint64(0,(2>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+2])),16),new $Uint64(w.$high|z.$high,(w.$low|z.$low)>>>0)),aa=$shiftLeft64(new $Uint64(0,(3>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+3])),24),new $Uint64(v.$high|aa.$high,(v.$low|aa.$low)>>>0)),ab=$shiftLeft64(new $Uint64(0,(4>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+4])),32),new $Uint64(u.$high|ab.$high,(u.$low|ab.$low)>>>0)),ac=$shiftLeft64(new $Uint64(0,(5>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+5])),40),new $Uint64(t.$high|ac.$high,(t.$low|ac.$low)>>>0)),ad=$shiftLeft64(new $Uint64(0,(6>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+6])),48),new $Uint64(s.$high|ad.$high,(s.$low|ad.$low)>>>0)),ae=$shiftLeft64(new $Uint64(0,(7>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+7])),56),new $Uint64(r.$high|ae.$high,(r.$low|ae.$low)>>>0));d=$subslice(d,8);}else if(j===(2)){af=B.Uvarint(d);g=af[0];h=af[1];if(h<=0||(ag=new $Uint64(0,(d.$length-h>>0)),(g.$high>ag.$high||(g.$high===ag.$high&&g.$low>ag.$low)))){$s=-1;return[BD.nil,C.New("bad protobuf length-delimited value")];}i=$subslice(d,h,(h+(g.$low>>0)>>0));d=$subslice(d,(h+(g.$low>>0)>>0));}else{$s=-1;return[BD.nil,C.New("unknown protobuf wire-type")];}ah=f.putvalue(c,$clone(e,F.Value),g,i);$s=1;case 1:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ai=ah;if(!($interfaceIsEqual(ai,$ifaceNil))){$s=-1;return[BD.nil,ai];}$s=-1;return[d,$ifaceNil];}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.value};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};Q.prototype.value=function(c,d,e){return this.$val.value(c,d,e);};Q.ptr.prototype.decodeSignedInt=function(c,d){var $ptr,c,d,e,f,g;e=this;if(c===0){f=$shiftRightInt64(new $Int64(d.$high,d.$low),1);if(!((g=new $Uint64(d.$high&0,(d.$low&1)>>>0),(g.$high===0&&g.$low===0)))){f=new $Int64(~f.$high,~f.$low>>>0);}return[f,$ifaceNil];}else if(c===5){return[new $Int64(0,(d.$low>>0)),$ifaceNil];}else if(c===1){return[new $Int64(d.$high,d.$low),$ifaceNil];}else{return[new $Int64(-1,4294967295),C.New("bad wiretype for sint")];}};Q.prototype.decodeSignedInt=function(c,d){return this.$val.decodeSignedInt(c,d);};Q.ptr.prototype.putvalue=function(c,d,e,f){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=this;if(!$clone(d,F.Value).CanSet()){$s=-1;return $ifaceNil;}h=$clone(d,F.Value).Kind();if(h===(1)){$s=2;continue;}if((h===(2))||(h===(5))||(h===(6))){$s=3;continue;}if((h===(10))||(h===(11))){$s=4;continue;}if(h===(13)){$s=5;continue;}if(h===(14)){$s=6;continue;}if(h===(24)){$s=7;continue;}if(h===(25)){$s=8;continue;}if(h===(22)){$s=9;continue;}if((h===(23))||(h===(17))){$s=10;continue;}if(h===(21)){$s=11;continue;}if(h===(20)){$s=12;continue;}$s=13;continue;case 2:if(!((c===0))){$s=-1;return C.New("bad wiretype for bool");}if((e.$high>0||(e.$high===0&&e.$low>1))){$s=-1;return C.New("invalid bool value");}$clone(d,F.Value).SetBool(!((e.$high===0&&e.$low===0)));$s=14;continue;case 3:i=g.decodeSignedInt(c,e);j=i[0];k=i[1];if(!($interfaceIsEqual(k,$ifaceNil))){$s=15;continue;}$s=16;continue;case 15:l=e;m=new $Int(c);n=$clone(d,F.Value).Type().Name();$s=17;case 17:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=new $String(n);p=D.Println(new BF([new $String("Error Reflect.Int for v="),l,new $String("wiretype="),m,new $String("for Value="),o]));$s=18;case 18:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}p;$s=-1;return k;case 16:$clone(d,F.Value).SetInt(j);$s=14;continue;case 4:if(c===0){$clone(d,F.Value).SetUint(e);}else if(c===5){$clone(d,F.Value).SetUint(new $Uint64(0,(e.$low>>>0)));}else if(c===1){$clone(d,F.Value).SetUint(e);}else{$s=-1;return C.New("bad wiretype for uint");}$s=14;continue;case 5:if(!((c===5))){$s=-1;return C.New("bad wiretype for float32");}$clone(d,F.Value).SetFloat(E.Float32frombits((e.$low>>>0)));$s=14;continue;case 6:if(!((c===1))){$s=-1;return C.New("bad wiretype for float64");}$clone(d,F.Value).SetFloat(E.Float64frombits(e));$s=14;continue;case 7:if(!((c===2))){$s=-1;return C.New("bad wiretype for string");}$clone(d,F.Value).SetString($bytesToString(f));$s=14;continue;case 8:if($interfaceIsEqual($clone(d,F.Value).Type(),AE)){$s=19;continue;}$s=20;continue;case 19:q=g.decodeSignedInt(c,e);r=q[0];s=q[1];if(!($interfaceIsEqual(s,$ifaceNil))){$s=-1;return s;}t=$clone(G.Unix($div64(r,new $Int64(0,1000000000),false),$div64(r,new $Int64(0,1000000000),true)),G.Time);u=F.ValueOf(new t.constructor.elem(t));$s=21;case 21:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}$r=$clone(d,F.Value).Set($clone(u,F.Value));$s=22;case 22:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return $ifaceNil;case 20:if(!((c===2))){$s=-1;return C.New("bad wiretype for embedded message");}v=g.message(f,$clone(d,F.Value));$s=23;case 23:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}$s=-1;return v;case 9:if($clone(d,F.Value).IsNil()){$s=24;continue;}$s=25;continue;case 24:w=$clone(d,F.Value).Type().Elem();$s=26;case 26:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}x=g.instantiate(w);$s=27;case 27:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}$r=$clone(d,F.Value).Set($clone(x,F.Value));$s=28;case 28:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 25:y=c;z=$clone(d,F.Value).Elem();$s=29;case 29:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}aa=$clone(z,F.Value);ab=e;ac=f;ad=g.putvalue(y,aa,ab,ac);$s=30;case 30:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}$s=-1;return ad;case 10:if(!((c===2))){$s=-1;return C.New("bad wiretype for repeated field");}ae=g.slice($clone(d,F.Value),f);$s=31;case 31:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}$s=-1;return ae;case 11:if(!((c===2))){$s=-1;return C.New("bad wiretype for repeated field");}if($clone(d,F.Value).IsNil()){$s=32;continue;}$s=33;continue;case 32:af=F.MakeMap($clone(d,F.Value).Type());$s=34;case 34:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}$r=$clone(d,F.Value).Set($clone(af,F.Value));$s=35;case 35:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 33:ag=g.mapEntry($clone(d,F.Value),f);$s=36;case 36:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}$s=-1;return ag;case 12:if($clone(d,F.Value).IsNil()){$s=37;continue;}$s=38;continue;case 37:ah=g.instantiate($clone(d,F.Value).Type());$s=39;case 39:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}$r=$clone(d,F.Value).Set($clone(ah,F.Value));$s=40;case 40:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 38:aj=$clone(d,F.Value).Interface();$s=41;case 41:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ai=$assertType(aj,A.BinaryUnmarshaler,true);ak=ai[0];al=ai[1];if(al){$s=42;continue;}$s=43;continue;case 42:if(!((c===2))){$s=-1;return C.New("bad wiretype for bytes");}am=ak.UnmarshalBinary(f);$s=44;case 44:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=-1;return am;case 43:an=f;ao=$clone(d,F.Value).Interface();$s=45;case 45:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}ap=ao;aq=R(an,ap);$s=46;case 46:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}$s=-1;return aq;case 13:$panic(new $String("unsupported value kind "+new F.Kind($clone(d,F.Value).Kind()).String()));case 14:case 1:$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.putvalue};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};Q.prototype.putvalue=function(c,d,e,f){return this.$val.putvalue(c,d,e,f);};Q.ptr.prototype.instantiate=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:d=this;e=c.Kind();$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}if(e===20){$s=1;continue;}$s=2;continue;case 1:f=(g=d.nm[F.Type.keyFor(c)],g!==undefined?[g.v,true]:[$throwNilPointerError,false]);h=f[0];i=f[1];if(!i){$s=4;continue;}$s=5;continue;case 4:j=c.String();$s=6;case 6:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$panic(new $String("no constructor for interface "+j));case 5:k=h();$s=7;case 7:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=F.ValueOf(k);$s=8;case 8:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}$s=-1;return l;case 2:m=F.New(c);$s=9;case 9:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}$s=-1;return m;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.instantiate};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};Q.prototype.instantiate=function(c){return this.$val.instantiate(c);};Q.ptr.prototype.slice=function(c,d){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=this;f=$clone(c,F.Value).Type().Elem();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;h=F.New(g);$s=2;case 2:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=$clone(h,F.Value).Elem();$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;k=0;l=g.Kind();$s=5;case 5:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=l;if((m===(1))||(m===(5))||(m===(6))||(m===(10))||(m===(11))){$s=6;continue;}if(m===(13)){$s=7;continue;}if(m===(14)){$s=8;continue;}if(m===(8)){$s=9;continue;}$s=10;continue;case 6:n=g;if($interfaceIsEqual(n,(T))){k=5;}else if($interfaceIsEqual(n,(U))){k=1;}else if($interfaceIsEqual(n,(V))){k=5;}else if($interfaceIsEqual(n,(W))){k=1;}else{k=0;}$s=11;continue;case 7:k=5;$s=11;continue;case 8:k=1;$s=11;continue;case 9:if($clone(c,F.Value).Kind()===17){$s=12;continue;}$s=13;continue;case 12:if(!(($clone(c,F.Value).Len()===d.$length))){$panic(new $String("Array length != buffer length"));}o=0;case 15:if(!(o<$clone(c,F.Value).Len())){$s=16;continue;}p=$clone(c,F.Value).Index(o);$s=17;case 17:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}$r=$clone(p,F.Value).SetUint(new $Uint64(0,((o<0||o>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+o])));$s=18;case 18:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}o=o+(1)>>0;$s=15;continue;case 16:$s=14;continue;case 13:$r=$clone(c,F.Value).SetBytes(d);$s=19;case 19:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 14:$s=-1;return $ifaceNil;case 10:q=e.putvalue(2,$clone(j,F.Value),new $Uint64(0,0),d);$s=20;case 20:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=q;if(!($interfaceIsEqual(r,$ifaceNil))){$s=-1;return r;}s=F.Append($clone(c,F.Value),new BJ([$clone(j,F.Value)]));$s=21;case 21:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}$r=$clone(c,F.Value).Set($clone(s,F.Value));$s=22;case 22:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return $ifaceNil;case 11:case 4:case 23:if(!(d.$length>0)){$s=24;continue;}u=e.value(k,d,$clone(j,F.Value));$s=25;case 25:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}t=u;v=t[0];w=t[1];if(!($interfaceIsEqual(w,$ifaceNil))){$s=-1;return w;}x=F.Append($clone(c,F.Value),new BJ([$clone(j,F.Value)]));$s=26;case 26:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}$r=$clone(c,F.Value).Set($clone(x,F.Value));$s=27;case 27:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=v;$s=23;continue;case 24:$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.slice};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.$s=$s;$f.$r=$r;return $f;};Q.prototype.slice=function(c,d){return this.$val.slice(c,d);};Q.ptr.prototype.mapEntry=function(c,d){var $ptr,aa,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=this;f=$clone(c,F.Value).Type().Key();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=F.New(f);$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;i=$clone(c,F.Value).Type().Elem();$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=F.New(i);$s=4;case 4:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;l=$clone(h,F.Value).Elem();$s=5;case 5:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=l;n=$clone(k,F.Value).Elem();$s=6;case 6:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=n;p=B.Uvarint(d);q=p[0];r=p[1];if(r<=0){$s=-1;return C.New("bad protobuf field key");}s=$subslice(d,r);t=(new $Uint64(q.$high&0,(q.$low&7)>>>0).$low>>0);u=$ifaceNil;w=e.value(t,s,$clone(m,F.Value));$s=7;case 7:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}v=w;s=v[0];u=v[1];if(!($interfaceIsEqual(u,$ifaceNil))){$s=-1;return u;}case 8:if(!(s.$length>0)){$s=9;continue;}x=B.Uvarint(s);q=x[0];r=x[1];if(r<=0){$s=-1;return C.New("bad protobuf field key");}s=$subslice(s,r);t=(new $Uint64(q.$high&0,(q.$low&7)>>>0).$low>>0);z=e.value(t,s,$clone(o,F.Value));$s=10;case 10:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}y=z;s=y[0];u=y[1];if(!($interfaceIsEqual(u,$ifaceNil))){$s=-1;return u;}$s=8;continue;case 9:if(!$clone(m,F.Value).IsValid()||!$clone(o,F.Value).IsValid()){$s=11;continue;}$s=12;continue;case 11:aa=D.Errorf("proto: bad map data: missing key/val",new BF([]));$s=13;case 13:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}$s=-1;return aa;case 12:$r=$clone(c,F.Value).SetMapIndex($clone(m,F.Value),$clone(o,F.Value));$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.mapEntry};}$f.$ptr=$ptr;$f.aa=aa;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};Q.prototype.mapEntry=function(c,d){return this.$val.mapEntry(c,d);};AD=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);d=[d];e=[e];d[0]=BD.nil;e[0]=$ifaceNil;$deferred.push([(function(d,e){return function(){var $ptr,f;f=$recover();if(!($interfaceIsEqual(f,$ifaceNil))){e[0]=C.New($assertType(f,$String));d[0]=BD.nil;}};})(d,e),[]]);if($interfaceIsEqual(c,$ifaceNil)){f=BD.nil;g=$ifaceNil;d[0]=f;e[0]=g;$s=-1;return[d[0],e[0]];}h=new AC.ptr(new H.Buffer.ptr(BD.nil,0,BK.zero(),0));i=F.ValueOf(c);$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;if(!(($clone(j,F.Value).Kind()===22))){k=BD.nil;l=C.New("Encode takes a pointer to struct");d[0]=k;e[0]=l;$s=-1;return[d[0],e[0]];}m=$clone(j,F.Value).Elem();$s=2;case 2:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}$r=h.message($clone(m,F.Value));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}n=h.Buffer.Bytes();o=$ifaceNil;d[0]=n;e[0]=o;$s=-1;return[d[0],e[0]];}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if(!$curGoroutine.asleep){return[d[0],e[0]];}if($curGoroutine.asleep){if($f===undefined){$f={$blk:AD};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};$pkg.Encode=AD;AC.ptr.prototype.message=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);d=[d];e=this;d[0]=BI.nil;$deferred.push([(function(d){return function $b(){var $ptr,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=$recover();if(!($interfaceIsEqual(f,$ifaceNil))){$s=1;continue;}$s=2;continue;case 1:if(!(d[0]===BI.nil)){$s=3;continue;}$s=4;continue;case 3:g=D.Sprintf("%s (field %s)",new BF([f,new $String(d[0].Field.Name)]));$s=6;case 6:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$panic(new $String(g));$s=5;continue;case 4:$panic(f);case 5:case 2:$s=-1;return;}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};})(d),[]]);g=AM($clone(c,F.Value).Type());$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;h=0;case 2:if(!(h<f.$length)){$s=3;continue;}d[0]=((h<0||h>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+h]);i=$clone(c,F.Value).FieldByIndex(d[0].Index);$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;l=$shiftLeft64((k=d[0].ID,new $Uint64(k.$high,k.$low)),3);if($clone(j,F.Value).CanSet()){$s=5;continue;}$s=6;continue;case 5:$r=e.value(l,$clone(j,F.Value),d[0].Prefix);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 6:h++;$s=2;continue;case 3:$s=-1;return;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:AC.ptr.prototype.message};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};AC.prototype.message=function(c){return this.$val.message(c);};AC.ptr.prototype.value=function(c,d,e){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=this;h=$clone(d,F.Value).Interface();$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;if($assertType(g,$Bool,true)[1]){$s=2;continue;}if($assertType(g,$Int,true)[1]){$s=3;continue;}if($assertType(g,$Int32,true)[1]){$s=4;continue;}if($assertType(g,G.Time,true)[1]){$s=5;continue;}if($assertType(g,$Int64,true)[1]){$s=6;continue;}if($assertType(g,$Uint32,true)[1]){$s=7;continue;}if($assertType(g,$Uint64,true)[1]){$s=8;continue;}if($assertType(g,Z,true)[1]){$s=9;continue;}if($assertType(g,AA,true)[1]){$s=10;continue;}if($assertType(g,X,true)[1]){$s=11;continue;}if($assertType(g,Y,true)[1]){$s=12;continue;}if($assertType(g,$Float32,true)[1]){$s=13;continue;}if($assertType(g,$Float64,true)[1]){$s=14;continue;}if($assertType(g,$String,true)[1]){$s=15;continue;}if($assertType(g,BD,true)[1]){$s=16;continue;}$s=17;continue;case 2:i=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|0)>>>0));x=new $Uint64(0,0);if(i){x=new $Uint64(0,1);}f.uvarint(x);$s=-1;return;case 3:j=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|0)>>>0));f.svarint(new $Int64(0,j));$s=-1;return;case 4:k=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|0)>>>0));f.svarint(new $Int64(0,k));$s=-1;return;case 5:l=$clone(g.$val,G.Time);y=$clone(l,G.Time).UnixNano();f.uvarint(new $Uint64(c.$high|0,(c.$low|1)>>>0));f.u64(new $Uint64(y.$high,y.$low));$s=-1;return;case 6:m=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|0)>>>0));f.svarint(m);$s=-1;return;case 7:n=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|0)>>>0));f.uvarint(new $Uint64(0,n));$s=-1;return;case 8:o=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|0)>>>0));f.uvarint(o);$s=-1;return;case 9:p=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|5)>>>0));f.u32((p>>>0));$s=-1;return;case 10:q=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|1)>>>0));f.u64(new $Uint64(q.$high,q.$low));$s=-1;return;case 11:r=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|5)>>>0));f.u32((r>>>0));$s=-1;return;case 12:s=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|1)>>>0));f.u64(new $Uint64(s.$high,s.$low));$s=-1;return;case 13:t=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|5)>>>0));f.u32(E.Float32bits(t));$s=-1;return;case 14:u=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|1)>>>0));f.u64(E.Float64bits(u));$s=-1;return;case 15:v=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|2)>>>0));z=new BD($stringToBytes(v));f.uvarint(new $Uint64(0,z.$length));f.Buffer.Write(z);$s=-1;return;case 16:w=g.$val;if(w===BD.nil){if(!((e===1))){$panic(new $String("passed nil []byte to required field"));}$s=-1;return;}f.uvarint(new $Uint64(c.$high|0,(c.$low|2)>>>0));f.uvarint(new $Uint64(0,w.$length));f.Buffer.Write(w);$s=-1;return;case 17:aa=$clone(d,F.Value).Kind();if(aa===(1)){$s=19;continue;}if((aa===(2))||(aa===(5))||(aa===(6))){$s=20;continue;}if((aa===(10))||(aa===(11))){$s=21;continue;}if(aa===(13)){$s=22;continue;}if(aa===(14)){$s=23;continue;}if(aa===(24)){$s=24;continue;}if(aa===(25)){$s=25;continue;}if((aa===(23))||(aa===(17))){$s=26;continue;}if(aa===(22)){$s=27;continue;}if(aa===(20)){$s=28;continue;}if(aa===(21)){$s=29;continue;}$s=30;continue;case 19:f.uvarint(new $Uint64(c.$high|0,(c.$low|0)>>>0));ab=new $Uint64(0,0);if($clone(d,F.Value).Bool()){ab=new $Uint64(0,1);}f.uvarint(ab);$s=31;continue;case 20:f.uvarint(new $Uint64(c.$high|0,(c.$low|0)>>>0));f.svarint($clone(d,F.Value).Int());$s=31;continue;case 21:f.uvarint(new $Uint64(c.$high|0,(c.$low|0)>>>0));f.uvarint($clone(d,F.Value).Uint());$s=31;continue;case 22:f.uvarint(new $Uint64(c.$high|0,(c.$low|5)>>>0));f.u32(E.Float32bits($fround($clone(d,F.Value).Float())));$s=31;continue;case 23:f.uvarint(new $Uint64(c.$high|0,(c.$low|1)>>>0));f.u64(E.Float64bits($clone(d,F.Value).Float()));$s=31;continue;case 24:f.uvarint(new $Uint64(c.$high|0,(c.$low|2)>>>0));ac=$clone(d,F.Value).String();$s=32;case 32:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ad=new BD($stringToBytes(ac));f.uvarint(new $Uint64(0,ad.$length));f.Buffer.Write(ad);$s=31;continue;case 25:f.uvarint(new $Uint64(c.$high|0,(c.$low|2)>>>0));ae=new AC.ptr(new H.Buffer.ptr(BD.nil,0,BK.zero(),0));$r=ae.message($clone(d,F.Value));$s=33;case 33:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}af=ae.Buffer.Bytes();f.uvarint(new $Uint64(0,af.$length));f.Buffer.Write(af);$s=31;continue;case 26:$r=f.slice(c,$clone(d,F.Value));$s=34;case 34:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;case 27:if($clone(d,F.Value).IsNil()){if(e===2){$panic(new $String("required field is nil"));}$s=-1;return;}ag=c;ah=$clone(d,F.Value).Elem();$s=35;case 35:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ai=$clone(ah,F.Value);aj=e;$r=f.value(ag,ai,aj);$s=36;case 36:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=31;continue;case 28:if($clone(d,F.Value).IsNil()){$s=-1;return;}al=$clone(d,F.Value).Interface();$s=37;case 37:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}ak=$assertType(al,A.BinaryMarshaler,true);am=ak[0];an=ak[1];if(an){$s=38;continue;}$s=39;continue;case 38:f.uvarint(new $Uint64(c.$high|0,(c.$low|2)>>>0));ap=am.MarshalBinary();$s=40;case 40:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}ao=ap;aq=ao[0];ar=ao[1];if(!($interfaceIsEqual(ar,$ifaceNil))){$s=41;continue;}$s=42;continue;case 41:as=ar.Error();$s=43;case 43:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}$panic(new $String(as));case 42:f.uvarint(new $Uint64(0,aq.$length));f.Buffer.Write(aq);$s=-1;return;case 39:at=c;au=$clone(d,F.Value).Elem();$s=44;case 44:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}av=$clone(au,F.Value);aw=e;$r=f.value(at,av,aw);$s=45;case 45:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=31;continue;case 29:$r=f.handleMap(c,$clone(d,F.Value),e);$s=46;case 46:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;case 30:ax=D.Sprintf("unsupported field Kind %d",new BF([new F.Kind($clone(d,F.Value).Kind())]));$s=47;case 47:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}$panic(new $String(ax));case 31:case 18:$s=-1;return;}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.value};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};AC.prototype.value=function(c,d,e){return this.$val.value(c,d,e);};AC.ptr.prototype.slice=function(c,d){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=this;f=$clone(d,F.Value).Len();g=new AC.ptr(new H.Buffer.ptr(BD.nil,0,BK.zero(),0));i=$clone(d,F.Value).Interface();$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;if($assertType(h,BL,true)[1]){$s=2;continue;}if($assertType(h,BM,true)[1]){$s=3;continue;}if($assertType(h,BN,true)[1]){$s=4;continue;}if($assertType(h,BO,true)[1]){$s=5;continue;}if($assertType(h,BP,true)[1]){$s=6;continue;}if($assertType(h,BQ,true)[1]){$s=7;continue;}if($assertType(h,BR,true)[1]){$s=8;continue;}if($assertType(h,BS,true)[1]){$s=9;continue;}if($assertType(h,BT,true)[1]){$s=10;continue;}if($assertType(h,BU,true)[1]){$s=11;continue;}if($assertType(h,BV,true)[1]){$s=12;continue;}if($assertType(h,BD,true)[1]){$s=13;continue;}if($assertType(h,BW,true)[1]){$s=14;continue;}$s=15;continue;case 2:j=h.$val;x=0;while(true){if(!(x<f)){break;}y=new $Uint64(0,0);if(((x<0||x>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+x])){y=new $Uint64(0,1);}g.uvarint(y);x=x+(1)>>0;}$s=16;continue;case 3:k=h.$val;z=0;while(true){if(!(z<f)){break;}g.svarint(new $Int64(0,((z<0||z>=k.$length)?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+z])));z=z+(1)>>0;}$s=16;continue;case 4:l=h.$val;aa=0;while(true){if(!(aa<f)){break;}g.svarint(((aa<0||aa>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+aa]));aa=aa+(1)>>0;}$s=16;continue;case 5:m=h.$val;ab=0;while(true){if(!(ab<f)){break;}g.uvarint(new $Uint64(0,((ab<0||ab>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+ab])));ab=ab+(1)>>0;}$s=16;continue;case 6:n=h.$val;ac=0;while(true){if(!(ac<f)){break;}g.uvarint(((ac<0||ac>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+ac]));ac=ac+(1)>>0;}$s=16;continue;case 7:o=h.$val;ad=0;while(true){if(!(ad<f)){break;}g.u32((((ad<0||ad>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+ad])>>>0));ad=ad+(1)>>0;}$s=16;continue;case 8:p=h.$val;ae=0;while(true){if(!(ae<f)){break;}g.u64((af=((ae<0||ae>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+ae]),new $Uint64(af.$high,af.$low)));ae=ae+(1)>>0;}$s=16;continue;case 9:q=h.$val;ag=0;while(true){if(!(ag<f)){break;}g.u32((((ag<0||ag>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+ag])>>>0));ag=ag+(1)>>0;}$s=16;continue;case 10:r=h.$val;ah=0;while(true){if(!(ah<f)){break;}g.u64((ai=((ah<0||ah>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+ah]),new $Uint64(ai.$high,ai.$low)));ah=ah+(1)>>0;}$s=16;continue;case 11:s=h.$val;aj=0;while(true){if(!(aj<f)){break;}g.u32(E.Float32bits(((aj<0||aj>=s.$length)?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+aj])));aj=aj+(1)>>0;}$s=16;continue;case 12:t=h.$val;ak=0;while(true){if(!(ak<f)){break;}g.u64(E.Float64bits(((ak<0||ak>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+ak])));ak=ak+(1)>>0;}$s=16;continue;case 13:u=h.$val;e.uvarint(new $Uint64(c.$high|0,(c.$low|2)>>>0));e.uvarint(new $Uint64(0,f));e.Buffer.Write(u);$s=-1;return;case 14:v=h.$val;al=0;case 17:if(!(al<f)){$s=18;continue;}am=$clone(d,F.Value).Index(al);$s=19;case 19:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}an=am;ao=$clone(an,F.Value).Interface();$s=20;case 20:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}ap=$assertType(ao,$String);aq=new BD($stringToBytes(ap));e.uvarint(new $Uint64(c.$high|0,(c.$low|2)>>>0));e.uvarint(new $Uint64(0,aq.$length));e.Buffer.Write(aq);al=al+(1)>>0;$s=17;continue;case 18:$s=-1;return;case 15:w=h;$r=e.sliceReflect(c,$clone(d,F.Value));$s=21;case 21:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;case 16:e.uvarint(new $Uint64(c.$high|0,(c.$low|2)>>>0));ar=g.Buffer.Bytes();e.uvarint(new $Uint64(0,ar.$length));e.Buffer.Write(ar);$s=-1;return;}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.slice};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};AC.prototype.slice=function(c,d){return this.$val.slice(c,d);};AC.ptr.prototype.handleMap=function(c,d,e){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=this;h=$clone(d,F.Value).MapKeys();$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;i=0;case 2:if(!(i<g.$length)){$s=3;continue;}j=((i<0||i>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+i]);k=$clone(d,F.Value).MapIndex($clone(j,F.Value));$s=4;case 4:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;m=$clone(l,F.Value).Kind();n=m;if(n===(22)){$s=6;continue;}if((n===(23))||(n===(17))){$s=7;continue;}$s=8;continue;case 6:if($clone(l,F.Value).IsNil()){$panic(new $String("proto: map has nil element"));}$s=8;continue;case 7:o=$clone(l,F.Value).Type().Elem();$s=11;case 11:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=o.Kind();$s=12;case 12:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}if(!((p===8))){$s=9;continue;}$s=10;continue;case 9:$panic(new $String("protobuf: map only support []byte or string as repeated value"));case 10:case 8:case 5:q=new AC.ptr(new H.Buffer.ptr(BD.nil,0,BK.zero(),0));$r=q.value(c,$clone(j,F.Value),e);$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}r=$shiftRightUint64(c,3);$r=q.value($shiftLeft64(new $Uint64(r.$high+0,r.$low+1),3),$clone(l,F.Value),e);$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f.uvarint(new $Uint64(c.$high|0,(c.$low|2)>>>0));s=q.Buffer.Bytes();f.uvarint(new $Uint64(0,s.$length));f.Buffer.Write(s);i++;$s=2;continue;case 3:$s=-1;return;}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.handleMap};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.$s=$s;$f.$r=$r;return $f;};AC.prototype.handleMap=function(c,d,e){return this.$val.handleMap(c,d,e);};AC.ptr.prototype.sliceReflect=function(c,d){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=this;f=$clone(d,F.Value).Kind();if(!((f===23))&&!((f===17))){$panic(new $String("no slice passed"));}g=$clone(d,F.Value).Len();h=$clone(d,F.Value).Type().Elem();$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;j=new AC.ptr(new H.Buffer.ptr(BD.nil,0,BK.zero(),0));k=i.Kind();$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;if(l===(1)){$s=4;continue;}if((l===(2))||(l===(5))||(l===(6))){$s=5;continue;}if((l===(10))||(l===(11))){$s=6;continue;}if(l===(13)){$s=7;continue;}if(l===(14)){$s=8;continue;}if(l===(8)){$s=9;continue;}$s=10;continue;case 4:m=0;case 12:if(!(m<g)){$s=13;continue;}n=new $Uint64(0,0);o=$clone(d,F.Value).Index(m);$s=16;case 16:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=$clone(o,F.Value).Bool();$s=17;case 17:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}if(p){$s=14;continue;}$s=15;continue;case 14:n=new $Uint64(0,1);case 15:j.uvarint(n);m=m+(1)>>0;$s=12;continue;case 13:$s=11;continue;case 5:q=0;case 18:if(!(q<g)){$s=19;continue;}r=$clone(d,F.Value).Index(q);$s=20;case 20:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=$clone(r,F.Value).Int();$s=21;case 21:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}$r=j.svarint(s);$s=22;case 22:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}q=q+(1)>>0;$s=18;continue;case 19:$s=11;continue;case 6:t=0;case 23:if(!(t<g)){$s=24;continue;}u=$clone(d,F.Value).Index(t);$s=25;case 25:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}v=$clone(u,F.Value).Uint();$s=26;case 26:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}$r=j.uvarint(v);$s=27;case 27:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}t=t+(1)>>0;$s=23;continue;case 24:$s=11;continue;case 7:w=0;case 28:if(!(w<g)){$s=29;continue;}x=$clone(d,F.Value).Index(w);$s=30;case 30:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}y=$clone(x,F.Value).Float();$s=31;case 31:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}z=E.Float32bits($fround(y));$s=32;case 32:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}$r=j.u32(z);$s=33;case 33:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}w=w+(1)>>0;$s=28;continue;case 29:$s=11;continue;case 8:aa=0;case 34:if(!(aa<g)){$s=35;continue;}ab=$clone(d,F.Value).Index(aa);$s=36;case 36:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}ac=$clone(ab,F.Value).Float();$s=37;case 37:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ad=E.Float64bits(ac);$s=38;case 38:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}$r=j.u64(ad);$s=39;case 39:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}aa=aa+(1)>>0;$s=34;continue;case 35:$s=11;continue;case 9:e.uvarint(new $Uint64(c.$high|0,(c.$low|2)>>>0));e.uvarint(new $Uint64(0,g));ae=BD.nil;if($clone(d,F.Value).Kind()===17){$s=40;continue;}$s=41;continue;case 40:af=$clone(d,F.Value).Slice(0,g);$s=43;case 43:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}ag=af;ah=$clone(ag,F.Value).Convert(AG);$s=44;case 44:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ai=$clone(ah,F.Value).Interface();$s=45;case 45:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ae=$assertType(ai,BD);$s=42;continue;case 41:aj=$clone(d,F.Value).Convert(AG);$s=46;case 46:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=$clone(aj,F.Value).Interface();$s=47;case 47:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}ae=$assertType(ak,BD);case 42:e.Buffer.Write(ae);$s=-1;return;case 10:al=$clone(d,F.Value).Type().Elem();$s=48;case 48:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}am=al;ao=am.Kind();$s=52;case 52:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}if(ao===23){an=true;$s=51;continue s;}ap=am.Kind();$s=53;case 53:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}an=ap===17;case 51:if(an){$s=49;continue;}$s=50;continue;case 49:aq=am.Elem();$s=54;case 54:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=aq;as=ar.Kind();$s=57;case 57:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}if(!((as===8))){$s=55;continue;}$s=56;continue;case 55:$panic(new $String("protobuf: no support for 2-dimensional array except for [][]byte"));case 56:case 50:at=0;case 58:if(!(at<g)){$s=59;continue;}au=c;av=$clone(d,F.Value).Index(at);$s=60;case 60:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}aw=$clone(av,F.Value);$r=e.value(au,aw,0);$s=61;case 61:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}at=at+(1)>>0;$s=58;continue;case 59:$s=-1;return;case 11:case 2:e.uvarint(new $Uint64(c.$high|0,(c.$low|2)>>>0));ax=j.Buffer.Bytes();e.uvarint(new $Uint64(0,ax.$length));e.Buffer.Write(ax);$s=-1;return;}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.sliceReflect};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};AC.prototype.sliceReflect=function(c,d){return this.$val.sliceReflect(c,d);};AC.ptr.prototype.uvarint=function(c){var $ptr,c,d,e,f;d=this;e=BX.zero();f=B.PutUvarint(new BD(e),c);d.Buffer.Write($subslice(new BD(e),0,f));};AC.prototype.uvarint=function(c){return this.$val.uvarint(c);};AC.ptr.prototype.svarint=function(c){var $ptr,c,d,e,f;d=this;if((c.$high>0||(c.$high===0&&c.$low>=0))){d.uvarint($shiftLeft64(new $Uint64(c.$high,c.$low),1));}else{d.uvarint((e=(f=$shiftLeft64(c,1),new $Uint64(f.$high,f.$low)),new $Uint64(~e.$high,~e.$low>>>0)));}};AC.prototype.svarint=function(c){return this.$val.svarint(c);};AC.ptr.prototype.u32=function(c){var $ptr,c,d,e;d=this;e=BY.zero();e[0]=(c<<24>>>24);e[1]=((c>>>8>>>0)<<24>>>24);e[2]=((c>>>16>>>0)<<24>>>24);e[3]=((c>>>24>>>0)<<24>>>24);d.Buffer.Write(new BD(e));};AC.prototype.u32=function(c){return this.$val.u32(c);};AC.ptr.prototype.u64=function(c){var $ptr,c,d,e;d=this;e=BZ.zero();e[0]=(c.$low<<24>>>24);e[1]=($shiftRightUint64(c,8).$low<<24>>>24);e[2]=($shiftRightUint64(c,16).$low<<24>>>24);e[3]=($shiftRightUint64(c,24).$low<<24>>>24);e[4]=($shiftRightUint64(c,32).$low<<24>>>24);e[5]=($shiftRightUint64(c,40).$low<<24>>>24);e[6]=($shiftRightUint64(c,48).$low<<24>>>24);e[7]=($shiftRightUint64(c,56).$low<<24>>>24);d.Buffer.Write(new BD(e));};AC.prototype.u64=function(c){return this.$val.u64(c);};AI=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n;d=0;e=0;f="";g=new F.StructTag(c.Tag).Get("protobuf");if(g===""){return[d,e,f];}h=J.Split(g,",");i=h;j=0;while(true){if(!(j<i.$length)){break;}k=((j<0||j>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+j]);if(k==="opt"){e=1;}else if(k==="req"){e=2;}else{l=I.Atoi(k);m=l[0];n=l[1];if(!($interfaceIsEqual(n,$ifaceNil))){f=k;}else{d=m;}}j++;}return[d,e,f];};$pkg.ParseTag=AI;AJ.ptr.prototype.Required=function(){var $ptr,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;if(c.Prefix===2){d=true;$s=1;continue s;}e=c.Field.Type.Kind();$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=!((e===22));case 1:$s=-1;return d;}return;}if($f===undefined){$f={$blk:AJ.ptr.prototype.Required};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};AJ.prototype.Required=function(){return this.$val.Required();};AM=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);d=[d];$r=AL.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=(f=AK[F.Type.keyFor(c)],f!==undefined?[f.v,true]:[CA.nil,false]);g=e[0];h=e[1];$r=AL.Unlock();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(h){$s=-1;return g;}d[0]=0;i=AN((d.$ptr||(d.$ptr=new CB(function(){return this.$target[0];},function($v){this.$target[0]=$v;},d))),c);$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}g=i;j=$makeMap($Int64.keyFor,[]);k=g;l=0;case 4:if(!(l<k.$length)){$s=5;continue;}m=((l<0||l>=k.$length)?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+l]);n=(o=j[$Int64.keyFor(m.ID)],o!==undefined?[o.v,true]:[new CC.ptr(),false]);p=n[1];if(p){$s=6;continue;}$s=7;continue;case 6:q=m.ID;r=c.PkgPath();$s=8;case 8:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=new $String(r);t=c.Name();$s=9;case 9:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}u=new $String(t);v=D.Sprintf("protobuf ID %d reused in %s.%s",new BF([q,s,u]));$s=10;case 10:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}$panic(new $String(v));case 7:w=m.ID;(j||$throwRuntimeError("assignment to entry in nil map"))[$Int64.keyFor(w)]={k:w,v:new CC.ptr()};l++;$s=4;continue;case 5:$r=AL.Lock();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(AL,"Unlock"),[]]);x=c;(AK||$throwRuntimeError("assignment to entry in nil map"))[F.Type.keyFor(x)]={k:x,v:g};$s=-1;return g;}return;}}catch(err){$err=err;$s=-1;return CA.nil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:AM};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};$pkg.ProtoFields=AM;AN=function(c,d){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=d.Kind();$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}if(e===22){$s=1;continue;}$s=2;continue;case 1:f=c;g=d.Elem();$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;i=AN(f,h);$s=5;case 5:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=-1;return i;case 2:j=new CA([]);k=0;case 6:l=d.NumField();$s=8;case 8:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}if(!(k<l)){$s=7;continue;}m=d.Field(k);$s=9;case 9:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=$clone(m,F.StructField);c.$set(c.$get()+(1)>>0);o=AI($clone(n,F.StructField));p=o[0];q=o[1];r=o[2];if(!((p===0))){c.$set(p);}if(n.Anonymous){$s=10;continue;}$s=11;continue;case 10:c.$set(c.$get()-(1)>>0);t=AN(c,n.Type);$s=13;case 13:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}s=t;u=0;case 14:if(!(u<s.$length)){$s=15;continue;}v=((u<0||u>=s.$length)?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+u]);v.Index=$appendSlice(new BH([k]),v.Index);j=$append(j,v);u++;$s=14;continue;case 15:$s=12;continue;case 11:j=$append(j,new AJ.ptr(new $Int64(0,c.$get()),q,r,new BH([k]),$clone(n,F.StructField)));case 12:k=k+(1)>>0;$s=6;continue;case 7:$s=-1;return j;}return;}if($f===undefined){$f={$blk:AN};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.$s=$s;$f.$r=$r;return $f;};CG.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];CH.methods=[{prop:"message",name:"message",pkg:"github.com/dedis/protobuf",typ:$funcType([BD,F.Value],[$error],false)},{prop:"value",name:"value",pkg:"github.com/dedis/protobuf",typ:$funcType([$Int,BD,F.Value],[BD,$error],false)},{prop:"decodeSignedInt",name:"decodeSignedInt",pkg:"github.com/dedis/protobuf",typ:$funcType([$Int,$Uint64],[$Int64,$error],false)},{prop:"putvalue",name:"putvalue",pkg:"github.com/dedis/protobuf",typ:$funcType([$Int,F.Value,$Uint64,BD],[$error],false)},{prop:"instantiate",name:"instantiate",pkg:"github.com/dedis/protobuf",typ:$funcType([F.Type],[F.Value],false)},{prop:"slice",name:"slice",pkg:"github.com/dedis/protobuf",typ:$funcType([F.Value,BD],[$error],false)},{prop:"mapEntry",name:"mapEntry",pkg:"github.com/dedis/protobuf",typ:$funcType([F.Value,BD],[$error],false)}];CI.methods=[{prop:"message",name:"message",pkg:"github.com/dedis/protobuf",typ:$funcType([F.Value],[],false)},{prop:"value",name:"value",pkg:"github.com/dedis/protobuf",typ:$funcType([$Uint64,F.Value,AH],[],false)},{prop:"slice",name:"slice",pkg:"github.com/dedis/protobuf",typ:$funcType([$Uint64,F.Value],[],false)},{prop:"handleMap",name:"handleMap",pkg:"github.com/dedis/protobuf",typ:$funcType([$Uint64,F.Value,AH],[],false)},{prop:"sliceReflect",name:"sliceReflect",pkg:"github.com/dedis/protobuf",typ:$funcType([$Uint64,F.Value],[],false)},{prop:"uvarint",name:"uvarint",pkg:"github.com/dedis/protobuf",typ:$funcType([$Uint64],[],false)},{prop:"svarint",name:"svarint",pkg:"github.com/dedis/protobuf",typ:$funcType([$Int64],[],false)},{prop:"u32",name:"u32",pkg:"github.com/dedis/protobuf",typ:$funcType([$Uint32],[],false)},{prop:"u64",name:"u64",pkg:"github.com/dedis/protobuf",typ:$funcType([$Uint64],[],false)}];BI.methods=[{prop:"Required",name:"Required",pkg:"",typ:$funcType([],[$Bool],false)}];P.init(F.Type,BE);Q.init("github.com/dedis/protobuf",[{prop:"nm",name:"nm",exported:false,typ:P,tag:""}]);AC.init("",[{prop:"Buffer",name:"",exported:true,typ:H.Buffer,tag:""}]);AJ.init("",[{prop:"ID",name:"ID",exported:true,typ:$Int64,tag:""},{prop:"Prefix",name:"Prefix",exported:true,typ:AH,tag:""},{prop:"Name",name:"Name",exported:true,typ:$String,tag:""},{prop:"Index",name:"Index",exported:true,typ:BH,tag:""},{prop:"Field",name:"Field",exported:true,typ:F.StructField,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=H.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=L.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=M.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=N.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$init();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$init();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=K.$init();$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=O.$init();$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}AL=new K.Mutex.ptr(0,0);T=F.TypeOf(new Z(0));U=F.TypeOf(new AA(0,0));V=F.TypeOf(new X(0));W=F.TypeOf(new Y(0,0));AE=F.TypeOf((a=new G.Time.ptr(new $Int64(0,0),0,BC.nil),new a.constructor.elem(a)));AF=F.TypeOf(new G.Duration(0,0));AG=F.TypeOf(new BD([]));AK=$makeMap(F.Type.keyFor,[]);b=M.MustCompile("((?:ID)|(?:[A-Z][a-z_0-9]+)|([\\w\\d]+))");$s=16;case 16:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}AO=b;}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["crypto"]=(function(){var $pkg={},$init,A,B,C,D,N,O,P,E,F,G;A=$packages["hash"];B=$packages["io"];C=$packages["strconv"];D=$pkg.Hash=$newType(4,$kindUint,"crypto.Hash",true,"crypto",true,null);N=$sliceType($Uint8);O=$funcType([],[A.Hash],false);P=$sliceType(O);D.prototype.HashFunc=function(){var $ptr,a;a=this.$val;return a;};$ptrType(D).prototype.HashFunc=function(){return new D(this.$get()).HashFunc();};D.prototype.Size=function(){var $ptr,a;a=this.$val;if(a>0&&a<16){return(((a<0||a>=E.$length)?($throwRuntimeError("index out of range"),undefined):E.$array[E.$offset+a])>>0);}$panic(new $String("crypto: Size of unknown hash function"));};$ptrType(D).prototype.Size=function(){return new D(this.$get()).Size();};D.prototype.New=function(){var $ptr,a,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this.$val;if(a>0&&a<16){$s=1;continue;}$s=2;continue;case 1:b=((a<0||a>=F.$length)?($throwRuntimeError("index out of range"),undefined):F.$array[F.$offset+a]);if(!(b===$throwNilPointerError)){$s=3;continue;}$s=4;continue;case 3:c=b();$s=5;case 5:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=-1;return c;case 4:case 2:$panic(new $String("crypto: requested hash function #"+C.Itoa((a>>0))+" is unavailable"));$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:D.prototype.New};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(D).prototype.New=function(){return new D(this.$get()).New();};D.prototype.Available=function(){var $ptr,a;a=this.$val;return a<16&&!(((a<0||a>=F.$length)?($throwRuntimeError("index out of range"),undefined):F.$array[F.$offset+a])===$throwNilPointerError);};$ptrType(D).prototype.Available=function(){return new D(this.$get()).Available();};G=function(a,b){var $ptr,a,b;if(a>=16){$panic(new $String("crypto: RegisterHash of unknown hash function"));}((a<0||a>=F.$length)?($throwRuntimeError("index out of range"),undefined):F.$array[F.$offset+a]=b);};$pkg.RegisterHash=G;D.methods=[{prop:"HashFunc",name:"HashFunc",pkg:"",typ:$funcType([],[D],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int],false)},{prop:"New",name:"New",pkg:"",typ:$funcType([],[A.Hash],false)},{prop:"Available",name:"Available",pkg:"",typ:$funcType([],[$Bool],false)}];$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}E=new N([0,16,16,20,28,32,48,64,36,20,28,32,48,64,28,32]);F=$makeSlice(P,16);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["crypto/md5"]=(function(){var $pkg={},$init,A,B,C,E,L,M,N,O,P,Q,R,S,H,K,D,F,I,J;A=$packages["crypto"];B=$packages["hash"];C=$packages["runtime"];E=$pkg.digest=$newType(0,$kindStruct,"md5.digest",true,"crypto/md5",false,function(s_,x_,nx_,len_){this.$val=this;if(arguments.length===0){this.s=L.zero();this.x=M.zero();this.nx=0;this.len=new $Uint64(0,0);return;}this.s=s_;this.x=x_;this.nx=nx_;this.len=len_;});L=$arrayType($Uint32,4);M=$arrayType($Uint8,64);N=$sliceType($Uint8);O=$arrayType($Uint8,16);P=$arrayType($Uint8,4);Q=$arrayType($Uint32,16);R=$ptrType(Q);S=$ptrType(E);D=function(){var $ptr;A.RegisterHash(2,F);};E.ptr.prototype.Reset=function(){var $ptr,a;a=this;a.s[0]=1732584193;a.s[1]=4023233417;a.s[2]=2562383102;a.s[3]=271733878;a.nx=0;a.len=new $Uint64(0,0);};E.prototype.Reset=function(){return this.$val.Reset();};F=function(){var $ptr,a;a=new E.ptr(L.zero(),M.zero(),0,new $Uint64(0,0));a.Reset();return a;};$pkg.New=F;E.ptr.prototype.Size=function(){var $ptr,a;a=this;return 16;};E.prototype.Size=function(){return this.$val.Size();};E.ptr.prototype.BlockSize=function(){var $ptr,a;a=this;return 64;};E.prototype.BlockSize=function(){return this.$val.BlockSize();};E.ptr.prototype.Write=function(a){var $ptr,a,b,c,d,e,f,g,h,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=0;c=$ifaceNil;d=this;b=a.$length;d.len=(e=d.len,f=new $Uint64(0,b),new $Uint64(e.$high+f.$high,e.$low+f.$low));if(d.nx>0){$s=1;continue;}$s=2;continue;case 1:g=$copySlice($subslice(new N(d.x),d.nx),a);d.nx=d.nx+(g)>>0;if(d.nx===64){$s=3;continue;}$s=4;continue;case 3:$r=K(d,new N(d.x));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d.nx=0;case 4:a=$subslice(a,g);case 2:if(a.$length>=64){$s=6;continue;}$s=7;continue;case 6:h=(a.$length&~63)>>0;$r=K(d,$subslice(a,0,h));$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}a=$subslice(a,h);case 7:if(a.$length>0){d.nx=$copySlice(new N(d.x),a);}$s=-1;return[b,c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.Write};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};E.prototype.Write=function(a){return this.$val.Write(a);};E.ptr.prototype.Sum=function(a){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=$clone(b,E);d=c.checkSum();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=$clone(d,O);$s=-1;return $appendSlice(a,new N(e));}return;}if($f===undefined){$f={$blk:E.ptr.prototype.Sum};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};E.prototype.Sum=function(a){return this.$val.Sum(a);};E.ptr.prototype.checkSum=function(){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.len;c=M.zero();c[0]=128;if((d=$div64(b,new $Uint64(0,64),true),(d.$high<0||(d.$high===0&&d.$low<56)))){$s=1;continue;}$s=2;continue;case 1:f=a.Write($subslice(new N(c),0,$flatten64((e=$div64(b,new $Uint64(0,64),true),new $Uint64(0-e.$high,56-e.$low)))));$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;$s=3;continue;case 2:h=a.Write($subslice(new N(c),0,$flatten64((g=$div64(b,new $Uint64(0,64),true),new $Uint64(0-g.$high,120-g.$low)))));$s=5;case 5:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}h;case 3:b=$shiftLeft64(b,(3));i=0;while(true){if(!(i<8)){break;}((i<0||i>=c.length)?($throwRuntimeError("index out of range"),undefined):c[i]=($shiftRightUint64(b,((8*i>>>0))).$low<<24>>>24));i=i+(1)>>>0;}j=a.Write($subslice(new N(c),0,8));$s=6;case 6:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;if(!((a.nx===0))){$panic(new $String("d.nx != 0"));}k=O.zero();l=a.s;m=0;while(true){if(!(m<4)){break;}n=m;o=((m<0||m>=l.length)?($throwRuntimeError("index out of range"),undefined):l[m]);(p=$imul(n,4),((p<0||p>=k.length)?($throwRuntimeError("index out of range"),undefined):k[p]=(o<<24>>>24)));(q=($imul(n,4))+1>>0,((q<0||q>=k.length)?($throwRuntimeError("index out of range"),undefined):k[q]=((o>>>8>>>0)<<24>>>24)));(r=($imul(n,4))+2>>0,((r<0||r>=k.length)?($throwRuntimeError("index out of range"),undefined):k[r]=((o>>>16>>>0)<<24>>>24)));(s=($imul(n,4))+3>>0,((s<0||s>=k.length)?($throwRuntimeError("index out of range"),undefined):k[s]=((o>>>24>>>0)<<24>>>24)));m++;}$s=-1;return k;}return;}if($f===undefined){$f={$blk:E.ptr.prototype.checkSum};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.$s=$s;$f.$r=$r;return $f;};E.prototype.checkSum=function(){return this.$val.checkSum();};I=function(){var $ptr,a,b;a=67305985;b=$toNativeArray($kindUint8,[1,2,3,4]);H=$equal(a,b,P);};J=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v;c=a.s[0];d=a.s[1];e=a.s[2];f=a.s[3];g=R.nil;h=Q.zero();while(true){if(!(b.$length>=64)){break;}i=c;j=d;k=e;l=f;m=i;n=j;o=k;p=l;if(false){g=$sliceToArray(b);}else if(H&&((($sliceToArray(b)&3)>>>0)===0)){g=$sliceToArray(b);}else{g=h;q=0;r=0;while(true){if(!(r<16)){break;}(v=r&15,g.nilCheck,((v<0||v>=g.length)?($throwRuntimeError("index out of range"),undefined):g[v]=(((((((((q<0||q>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+q])>>>0)|(((s=q+1>>0,((s<0||s>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+s]))>>>0)<<8>>>0))>>>0)|(((t=q+2>>0,((t<0||t>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+t]))>>>0)<<16>>>0))>>>0)|(((u=q+3>>0,((u<0||u>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+u]))>>>0)<<24>>>0))>>>0)));q=q+(4)>>0;r=r+(1)>>0;}}c=c+((((((((((((e^f)>>>0))&d)>>>0))^f)>>>0))+(g.nilCheck,g[0])>>>0)+3614090360>>>0))>>>0;c=(((c<<7>>>0)|(c>>>25>>>0))>>>0)+d>>>0;f=f+((((((((((((d^e)>>>0))&c)>>>0))^e)>>>0))+(g.nilCheck,g[1])>>>0)+3905402710>>>0))>>>0;f=(((f<<12>>>0)|(f>>>20>>>0))>>>0)+c>>>0;e=e+((((((((((((c^d)>>>0))&f)>>>0))^d)>>>0))+(g.nilCheck,g[2])>>>0)+606105819>>>0))>>>0;e=(((e<<17>>>0)|(e>>>15>>>0))>>>0)+f>>>0;d=d+((((((((((((f^c)>>>0))&e)>>>0))^c)>>>0))+(g.nilCheck,g[3])>>>0)+3250441966>>>0))>>>0;d=(((d<<22>>>0)|(d>>>10>>>0))>>>0)+e>>>0;c=c+((((((((((((e^f)>>>0))&d)>>>0))^f)>>>0))+(g.nilCheck,g[4])>>>0)+4118548399>>>0))>>>0;c=(((c<<7>>>0)|(c>>>25>>>0))>>>0)+d>>>0;f=f+((((((((((((d^e)>>>0))&c)>>>0))^e)>>>0))+(g.nilCheck,g[5])>>>0)+1200080426>>>0))>>>0;f=(((f<<12>>>0)|(f>>>20>>>0))>>>0)+c>>>0;e=e+((((((((((((c^d)>>>0))&f)>>>0))^d)>>>0))+(g.nilCheck,g[6])>>>0)+2821735955>>>0))>>>0;e=(((e<<17>>>0)|(e>>>15>>>0))>>>0)+f>>>0;d=d+((((((((((((f^c)>>>0))&e)>>>0))^c)>>>0))+(g.nilCheck,g[7])>>>0)+4249261313>>>0))>>>0;d=(((d<<22>>>0)|(d>>>10>>>0))>>>0)+e>>>0;c=c+((((((((((((e^f)>>>0))&d)>>>0))^f)>>>0))+(g.nilCheck,g[8])>>>0)+1770035416>>>0))>>>0;c=(((c<<7>>>0)|(c>>>25>>>0))>>>0)+d>>>0;f=f+((((((((((((d^e)>>>0))&c)>>>0))^e)>>>0))+(g.nilCheck,g[9])>>>0)+2336552879>>>0))>>>0;f=(((f<<12>>>0)|(f>>>20>>>0))>>>0)+c>>>0;e=e+((((((((((((c^d)>>>0))&f)>>>0))^d)>>>0))+(g.nilCheck,g[10])>>>0)+4294925233>>>0))>>>0;e=(((e<<17>>>0)|(e>>>15>>>0))>>>0)+f>>>0;d=d+((((((((((((f^c)>>>0))&e)>>>0))^c)>>>0))+(g.nilCheck,g[11])>>>0)+2304563134>>>0))>>>0;d=(((d<<22>>>0)|(d>>>10>>>0))>>>0)+e>>>0;c=c+((((((((((((e^f)>>>0))&d)>>>0))^f)>>>0))+(g.nilCheck,g[12])>>>0)+1804603682>>>0))>>>0;c=(((c<<7>>>0)|(c>>>25>>>0))>>>0)+d>>>0;f=f+((((((((((((d^e)>>>0))&c)>>>0))^e)>>>0))+(g.nilCheck,g[13])>>>0)+4254626195>>>0))>>>0;f=(((f<<12>>>0)|(f>>>20>>>0))>>>0)+c>>>0;e=e+((((((((((((c^d)>>>0))&f)>>>0))^d)>>>0))+(g.nilCheck,g[14])>>>0)+2792965006>>>0))>>>0;e=(((e<<17>>>0)|(e>>>15>>>0))>>>0)+f>>>0;d=d+((((((((((((f^c)>>>0))&e)>>>0))^c)>>>0))+(g.nilCheck,g[15])>>>0)+1236535329>>>0))>>>0;d=(((d<<22>>>0)|(d>>>10>>>0))>>>0)+e>>>0;c=c+((((((((((((d^e)>>>0))&f)>>>0))^e)>>>0))+(g.nilCheck,g[1])>>>0)+4129170786>>>0))>>>0;c=(((c<<5>>>0)|(c>>>27>>>0))>>>0)+d>>>0;f=f+((((((((((((c^d)>>>0))&e)>>>0))^d)>>>0))+(g.nilCheck,g[6])>>>0)+3225465664>>>0))>>>0;f=(((f<<9>>>0)|(f>>>23>>>0))>>>0)+c>>>0;e=e+((((((((((((f^c)>>>0))&d)>>>0))^c)>>>0))+(g.nilCheck,g[11])>>>0)+643717713>>>0))>>>0;e=(((e<<14>>>0)|(e>>>18>>>0))>>>0)+f>>>0;d=d+((((((((((((e^f)>>>0))&c)>>>0))^f)>>>0))+(g.nilCheck,g[0])>>>0)+3921069994>>>0))>>>0;d=(((d<<20>>>0)|(d>>>12>>>0))>>>0)+e>>>0;c=c+((((((((((((d^e)>>>0))&f)>>>0))^e)>>>0))+(g.nilCheck,g[5])>>>0)+3593408605>>>0))>>>0;c=(((c<<5>>>0)|(c>>>27>>>0))>>>0)+d>>>0;f=f+((((((((((((c^d)>>>0))&e)>>>0))^d)>>>0))+(g.nilCheck,g[10])>>>0)+38016083>>>0))>>>0;f=(((f<<9>>>0)|(f>>>23>>>0))>>>0)+c>>>0;e=e+((((((((((((f^c)>>>0))&d)>>>0))^c)>>>0))+(g.nilCheck,g[15])>>>0)+3634488961>>>0))>>>0;e=(((e<<14>>>0)|(e>>>18>>>0))>>>0)+f>>>0;d=d+((((((((((((e^f)>>>0))&c)>>>0))^f)>>>0))+(g.nilCheck,g[4])>>>0)+3889429448>>>0))>>>0;d=(((d<<20>>>0)|(d>>>12>>>0))>>>0)+e>>>0;c=c+((((((((((((d^e)>>>0))&f)>>>0))^e)>>>0))+(g.nilCheck,g[9])>>>0)+568446438>>>0))>>>0;c=(((c<<5>>>0)|(c>>>27>>>0))>>>0)+d>>>0;f=f+((((((((((((c^d)>>>0))&e)>>>0))^d)>>>0))+(g.nilCheck,g[14])>>>0)+3275163606>>>0))>>>0;f=(((f<<9>>>0)|(f>>>23>>>0))>>>0)+c>>>0;e=e+((((((((((((f^c)>>>0))&d)>>>0))^c)>>>0))+(g.nilCheck,g[3])>>>0)+4107603335>>>0))>>>0;e=(((e<<14>>>0)|(e>>>18>>>0))>>>0)+f>>>0;d=d+((((((((((((e^f)>>>0))&c)>>>0))^f)>>>0))+(g.nilCheck,g[8])>>>0)+1163531501>>>0))>>>0;d=(((d<<20>>>0)|(d>>>12>>>0))>>>0)+e>>>0;c=c+((((((((((((d^e)>>>0))&f)>>>0))^e)>>>0))+(g.nilCheck,g[13])>>>0)+2850285829>>>0))>>>0;c=(((c<<5>>>0)|(c>>>27>>>0))>>>0)+d>>>0;f=f+((((((((((((c^d)>>>0))&e)>>>0))^d)>>>0))+(g.nilCheck,g[2])>>>0)+4243563512>>>0))>>>0;f=(((f<<9>>>0)|(f>>>23>>>0))>>>0)+c>>>0;e=e+((((((((((((f^c)>>>0))&d)>>>0))^c)>>>0))+(g.nilCheck,g[7])>>>0)+1735328473>>>0))>>>0;e=(((e<<14>>>0)|(e>>>18>>>0))>>>0)+f>>>0;d=d+((((((((((((e^f)>>>0))&c)>>>0))^f)>>>0))+(g.nilCheck,g[12])>>>0)+2368359562>>>0))>>>0;d=(((d<<20>>>0)|(d>>>12>>>0))>>>0)+e>>>0;c=c+((((((((d^e)>>>0)^f)>>>0))+(g.nilCheck,g[5])>>>0)+4294588738>>>0))>>>0;c=(((c<<4>>>0)|(c>>>28>>>0))>>>0)+d>>>0;f=f+((((((((c^d)>>>0)^e)>>>0))+(g.nilCheck,g[8])>>>0)+2272392833>>>0))>>>0;f=(((f<<11>>>0)|(f>>>21>>>0))>>>0)+c>>>0;e=e+((((((((f^c)>>>0)^d)>>>0))+(g.nilCheck,g[11])>>>0)+1839030562>>>0))>>>0;e=(((e<<16>>>0)|(e>>>16>>>0))>>>0)+f>>>0;d=d+((((((((e^f)>>>0)^c)>>>0))+(g.nilCheck,g[14])>>>0)+4259657740>>>0))>>>0;d=(((d<<23>>>0)|(d>>>9>>>0))>>>0)+e>>>0;c=c+((((((((d^e)>>>0)^f)>>>0))+(g.nilCheck,g[1])>>>0)+2763975236>>>0))>>>0;c=(((c<<4>>>0)|(c>>>28>>>0))>>>0)+d>>>0;f=f+((((((((c^d)>>>0)^e)>>>0))+(g.nilCheck,g[4])>>>0)+1272893353>>>0))>>>0;f=(((f<<11>>>0)|(f>>>21>>>0))>>>0)+c>>>0;e=e+((((((((f^c)>>>0)^d)>>>0))+(g.nilCheck,g[7])>>>0)+4139469664>>>0))>>>0;e=(((e<<16>>>0)|(e>>>16>>>0))>>>0)+f>>>0;d=d+((((((((e^f)>>>0)^c)>>>0))+(g.nilCheck,g[10])>>>0)+3200236656>>>0))>>>0;d=(((d<<23>>>0)|(d>>>9>>>0))>>>0)+e>>>0;c=c+((((((((d^e)>>>0)^f)>>>0))+(g.nilCheck,g[13])>>>0)+681279174>>>0))>>>0;c=(((c<<4>>>0)|(c>>>28>>>0))>>>0)+d>>>0;f=f+((((((((c^d)>>>0)^e)>>>0))+(g.nilCheck,g[0])>>>0)+3936430074>>>0))>>>0;f=(((f<<11>>>0)|(f>>>21>>>0))>>>0)+c>>>0;e=e+((((((((f^c)>>>0)^d)>>>0))+(g.nilCheck,g[3])>>>0)+3572445317>>>0))>>>0;e=(((e<<16>>>0)|(e>>>16>>>0))>>>0)+f>>>0;d=d+((((((((e^f)>>>0)^c)>>>0))+(g.nilCheck,g[6])>>>0)+76029189>>>0))>>>0;d=(((d<<23>>>0)|(d>>>9>>>0))>>>0)+e>>>0;c=c+((((((((d^e)>>>0)^f)>>>0))+(g.nilCheck,g[9])>>>0)+3654602809>>>0))>>>0;c=(((c<<4>>>0)|(c>>>28>>>0))>>>0)+d>>>0;f=f+((((((((c^d)>>>0)^e)>>>0))+(g.nilCheck,g[12])>>>0)+3873151461>>>0))>>>0;f=(((f<<11>>>0)|(f>>>21>>>0))>>>0)+c>>>0;e=e+((((((((f^c)>>>0)^d)>>>0))+(g.nilCheck,g[15])>>>0)+530742520>>>0))>>>0;e=(((e<<16>>>0)|(e>>>16>>>0))>>>0)+f>>>0;d=d+((((((((e^f)>>>0)^c)>>>0))+(g.nilCheck,g[2])>>>0)+3299628645>>>0))>>>0;d=(((d<<23>>>0)|(d>>>9>>>0))>>>0)+e>>>0;c=c+((((((e^(((d|(~f>>>0))>>>0)))>>>0))+(g.nilCheck,g[0])>>>0)+4096336452>>>0))>>>0;c=(((c<<6>>>0)|(c>>>26>>>0))>>>0)+d>>>0;f=f+((((((d^(((c|(~e>>>0))>>>0)))>>>0))+(g.nilCheck,g[7])>>>0)+1126891415>>>0))>>>0;f=(((f<<10>>>0)|(f>>>22>>>0))>>>0)+c>>>0;e=e+((((((c^(((f|(~d>>>0))>>>0)))>>>0))+(g.nilCheck,g[14])>>>0)+2878612391>>>0))>>>0;e=(((e<<15>>>0)|(e>>>17>>>0))>>>0)+f>>>0;d=d+((((((f^(((e|(~c>>>0))>>>0)))>>>0))+(g.nilCheck,g[5])>>>0)+4237533241>>>0))>>>0;d=(((d<<21>>>0)|(d>>>11>>>0))>>>0)+e>>>0;c=c+((((((e^(((d|(~f>>>0))>>>0)))>>>0))+(g.nilCheck,g[12])>>>0)+1700485571>>>0))>>>0;c=(((c<<6>>>0)|(c>>>26>>>0))>>>0)+d>>>0;f=f+((((((d^(((c|(~e>>>0))>>>0)))>>>0))+(g.nilCheck,g[3])>>>0)+2399980690>>>0))>>>0;f=(((f<<10>>>0)|(f>>>22>>>0))>>>0)+c>>>0;e=e+((((((c^(((f|(~d>>>0))>>>0)))>>>0))+(g.nilCheck,g[10])>>>0)+4293915773>>>0))>>>0;e=(((e<<15>>>0)|(e>>>17>>>0))>>>0)+f>>>0;d=d+((((((f^(((e|(~c>>>0))>>>0)))>>>0))+(g.nilCheck,g[1])>>>0)+2240044497>>>0))>>>0;d=(((d<<21>>>0)|(d>>>11>>>0))>>>0)+e>>>0;c=c+((((((e^(((d|(~f>>>0))>>>0)))>>>0))+(g.nilCheck,g[8])>>>0)+1873313359>>>0))>>>0;c=(((c<<6>>>0)|(c>>>26>>>0))>>>0)+d>>>0;f=f+((((((d^(((c|(~e>>>0))>>>0)))>>>0))+(g.nilCheck,g[15])>>>0)+4264355552>>>0))>>>0;f=(((f<<10>>>0)|(f>>>22>>>0))>>>0)+c>>>0;e=e+((((((c^(((f|(~d>>>0))>>>0)))>>>0))+(g.nilCheck,g[6])>>>0)+2734768916>>>0))>>>0;e=(((e<<15>>>0)|(e>>>17>>>0))>>>0)+f>>>0;d=d+((((((f^(((e|(~c>>>0))>>>0)))>>>0))+(g.nilCheck,g[13])>>>0)+1309151649>>>0))>>>0;d=(((d<<21>>>0)|(d>>>11>>>0))>>>0)+e>>>0;c=c+((((((e^(((d|(~f>>>0))>>>0)))>>>0))+(g.nilCheck,g[4])>>>0)+4149444226>>>0))>>>0;c=(((c<<6>>>0)|(c>>>26>>>0))>>>0)+d>>>0;f=f+((((((d^(((c|(~e>>>0))>>>0)))>>>0))+(g.nilCheck,g[11])>>>0)+3174756917>>>0))>>>0;f=(((f<<10>>>0)|(f>>>22>>>0))>>>0)+c>>>0;e=e+((((((c^(((f|(~d>>>0))>>>0)))>>>0))+(g.nilCheck,g[2])>>>0)+718787259>>>0))>>>0;e=(((e<<15>>>0)|(e>>>17>>>0))>>>0)+f>>>0;d=d+((((((f^(((e|(~c>>>0))>>>0)))>>>0))+(g.nilCheck,g[9])>>>0)+3951481745>>>0))>>>0;d=(((d<<21>>>0)|(d>>>11>>>0))>>>0)+e>>>0;c=c+(m)>>>0;d=d+(n)>>>0;e=e+(o)>>>0;f=f+(p)>>>0;b=$subslice(b,64);}a.s[0]=c;a.s[1]=d;a.s[2]=e;a.s[3]=f;};S.methods=[{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([],[],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int],false)},{prop:"BlockSize",name:"BlockSize",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([N],[$Int,$error],false)},{prop:"Sum",name:"Sum",pkg:"",typ:$funcType([N],[N],false)},{prop:"checkSum",name:"checkSum",pkg:"crypto/md5",typ:$funcType([],[O],false)}];E.init("crypto/md5",[{prop:"s",name:"s",exported:false,typ:L,tag:""},{prop:"x",name:"x",exported:false,typ:M,tag:""},{prop:"nx",name:"nx",exported:false,typ:$Int,tag:""},{prop:"len",name:"len",exported:false,typ:$Uint64,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}H=false;K=J;D();I();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["crypto/sha1"]=(function(){var $pkg={},$init,A,B,D,I,J,K,L,M,N,O,H,C,E,G;A=$packages["crypto"];B=$packages["hash"];D=$pkg.digest=$newType(0,$kindStruct,"sha1.digest",true,"crypto/sha1",false,function(h_,x_,nx_,len_){this.$val=this;if(arguments.length===0){this.h=I.zero();this.x=J.zero();this.nx=0;this.len=new $Uint64(0,0);return;}this.h=h_;this.x=x_;this.nx=nx_;this.len=len_;});I=$arrayType($Uint32,5);J=$arrayType($Uint8,64);K=$sliceType($Uint8);L=$arrayType($Uint8,20);M=$arrayType($Uint8,8);N=$arrayType($Uint32,16);O=$ptrType(D);C=function(){var $ptr;A.RegisterHash(3,E);};D.ptr.prototype.Reset=function(){var $ptr,a;a=this;a.h[0]=1732584193;a.h[1]=4023233417;a.h[2]=2562383102;a.h[3]=271733878;a.h[4]=3285377520;a.nx=0;a.len=new $Uint64(0,0);};D.prototype.Reset=function(){return this.$val.Reset();};E=function(){var $ptr,a;a=new D.ptr(I.zero(),J.zero(),0,new $Uint64(0,0));a.Reset();return a;};$pkg.New=E;D.ptr.prototype.Size=function(){var $ptr,a;a=this;return 20;};D.prototype.Size=function(){return this.$val.Size();};D.ptr.prototype.BlockSize=function(){var $ptr,a;a=this;return 64;};D.prototype.BlockSize=function(){return this.$val.BlockSize();};D.ptr.prototype.Write=function(a){var $ptr,a,b,c,d,e,f,g,h,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=0;c=$ifaceNil;d=this;b=a.$length;d.len=(e=d.len,f=new $Uint64(0,b),new $Uint64(e.$high+f.$high,e.$low+f.$low));if(d.nx>0){$s=1;continue;}$s=2;continue;case 1:g=$copySlice($subslice(new K(d.x),d.nx),a);d.nx=d.nx+(g)>>0;if(d.nx===64){$s=3;continue;}$s=4;continue;case 3:$r=H(d,new K(d.x));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d.nx=0;case 4:a=$subslice(a,g);case 2:if(a.$length>=64){$s=6;continue;}$s=7;continue;case 6:h=(a.$length&~63)>>0;$r=H(d,$subslice(a,0,h));$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}a=$subslice(a,h);case 7:if(a.$length>0){d.nx=$copySlice(new K(d.x),a);}$s=-1;return[b,c];}return;}if($f===undefined){$f={$blk:D.ptr.prototype.Write};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};D.prototype.Write=function(a){return this.$val.Write(a);};D.ptr.prototype.Sum=function(a){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=$clone(b,D);d=c.checkSum();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=$clone(d,L);$s=-1;return $appendSlice(a,new K(e));}return;}if($f===undefined){$f={$blk:D.ptr.prototype.Sum};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};D.prototype.Sum=function(a){return this.$val.Sum(a);};D.ptr.prototype.checkSum=function(){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.len;c=J.zero();c[0]=128;if((d=$div64(b,new $Uint64(0,64),true),(d.$high<0||(d.$high===0&&d.$low<56)))){$s=1;continue;}$s=2;continue;case 1:f=a.Write($subslice(new K(c),0,$flatten64((e=$div64(b,new $Uint64(0,64),true),new $Uint64(0-e.$high,56-e.$low)))));$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;$s=3;continue;case 2:h=a.Write($subslice(new K(c),0,$flatten64((g=$div64(b,new $Uint64(0,64),true),new $Uint64(0-g.$high,120-g.$low)))));$s=5;case 5:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}h;case 3:b=$shiftLeft64(b,(3));i=0;while(true){if(!(i<8)){break;}((i<0||i>=c.length)?($throwRuntimeError("index out of range"),undefined):c[i]=($shiftRightUint64(b,((56-(8*i>>>0)>>>0))).$low<<24>>>24));i=i+(1)>>>0;}j=a.Write($subslice(new K(c),0,8));$s=6;case 6:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;if(!((a.nx===0))){$panic(new $String("d.nx != 0"));}k=L.zero();l=a.h;m=0;while(true){if(!(m<5)){break;}n=m;o=((m<0||m>=l.length)?($throwRuntimeError("index out of range"),undefined):l[m]);(p=$imul(n,4),((p<0||p>=k.length)?($throwRuntimeError("index out of range"),undefined):k[p]=((o>>>24>>>0)<<24>>>24)));(q=($imul(n,4))+1>>0,((q<0||q>=k.length)?($throwRuntimeError("index out of range"),undefined):k[q]=((o>>>16>>>0)<<24>>>24)));(r=($imul(n,4))+2>>0,((r<0||r>=k.length)?($throwRuntimeError("index out of range"),undefined):k[r]=((o>>>8>>>0)<<24>>>24)));(s=($imul(n,4))+3>>0,((s<0||s>=k.length)?($throwRuntimeError("index out of range"),undefined):k[s]=(o<<24>>>24)));m++;}$s=-1;return k;}return;}if($f===undefined){$f={$blk:D.ptr.prototype.checkSum};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.$s=$s;$f.$r=$r;return $f;};D.prototype.checkSum=function(){return this.$val.checkSum();};D.ptr.prototype.ConstantTimeSum=function(a){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=$clone(b,D);d=c.constSum();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=$clone(d,L);$s=-1;return $appendSlice(a,new K(e));}return;}if($f===undefined){$f={$blk:D.ptr.prototype.ConstantTimeSum};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};D.prototype.ConstantTimeSum=function(a){return this.$val.ConstantTimeSum(a);};D.ptr.prototype.constSum=function(){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=M.zero();c=$shiftLeft64(a.len,3);d=0;while(true){if(!(d<8)){break;}((d<0||d>=b.length)?($throwRuntimeError("index out of range"),undefined):b[d]=($shiftRightUint64(c,((56-(8*d>>>0)>>>0))).$low<<24>>>24));d=d+(1)>>>0;}e=(a.nx<<24>>>24);f=e-56<<24>>>24;g=(((f<<24>>24)>>7<<24>>24)<<24>>>24);h=128;i=0;while(true){if(!(i<64)){break;}j=((((i-e<<24>>>24)<<24>>24)>>7<<24>>24)<<24>>>24);(l=a.x,((i<0||i>=l.length)?($throwRuntimeError("index out of range"),undefined):l[i]=((((((~j<<24>>>24)&h)>>>0))|(((j&(k=a.x,((i<0||i>=k.length)?($throwRuntimeError("index out of range"),undefined):k[i])))>>>0)))>>>0)));h=(h&(j))>>>0;if(i>=56){(o=a.x,((i<0||i>=o.length)?($throwRuntimeError("index out of range"),undefined):o[i]=(((m=a.x,((i<0||i>=m.length)?($throwRuntimeError("index out of range"),undefined):m[i]))|(((g&(n=i-56<<24>>>24,((n<0||n>=b.length)?($throwRuntimeError("index out of range"),undefined):b[n])))>>>0)))>>>0)));}i=i+(1)<<24>>>24;}$r=H(a,new K(a.x));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}p=L.zero();q=a.h;r=0;while(true){if(!(r<5)){break;}s=r;t=((r<0||r>=q.length)?($throwRuntimeError("index out of range"),undefined):q[r]);(u=$imul(s,4),((u<0||u>=p.length)?($throwRuntimeError("index out of range"),undefined):p[u]=((g&((t>>>24>>>0)<<24>>>24))>>>0)));(v=($imul(s,4))+1>>0,((v<0||v>=p.length)?($throwRuntimeError("index out of range"),undefined):p[v]=((g&((t>>>16>>>0)<<24>>>24))>>>0)));(w=($imul(s,4))+2>>0,((w<0||w>=p.length)?($throwRuntimeError("index out of range"),undefined):p[w]=((g&((t>>>8>>>0)<<24>>>24))>>>0)));(x=($imul(s,4))+3>>0,((x<0||x>=p.length)?($throwRuntimeError("index out of range"),undefined):p[x]=((g&(t<<24>>>24))>>>0)));r++;}y=0;while(true){if(!(y<64)){break;}if(y<56){(z=a.x,((y<0||y>=z.length)?($throwRuntimeError("index out of range"),undefined):z[y]=h));h=0;}else{(ab=a.x,((y<0||y>=ab.length)?($throwRuntimeError("index out of range"),undefined):ab[y]=(aa=y-56<<24>>>24,((aa<0||aa>=b.length)?($throwRuntimeError("index out of range"),undefined):b[aa]))));}y=y+(1)<<24>>>24;}$r=H(a,new K(a.x));$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}ac=a.h;ad=0;while(true){if(!(ad<5)){break;}ae=ad;af=((ad<0||ad>=ac.length)?($throwRuntimeError("index out of range"),undefined):ac[ad]);ag=$imul(ae,4);((ag<0||ag>=p.length)?($throwRuntimeError("index out of range"),undefined):p[ag]=((((ag<0||ag>=p.length)?($throwRuntimeError("index out of range"),undefined):p[ag])|((((~g<<24>>>24)&((af>>>24>>>0)<<24>>>24))>>>0)))>>>0));ah=($imul(ae,4))+1>>0;((ah<0||ah>=p.length)?($throwRuntimeError("index out of range"),undefined):p[ah]=((((ah<0||ah>=p.length)?($throwRuntimeError("index out of range"),undefined):p[ah])|((((~g<<24>>>24)&((af>>>16>>>0)<<24>>>24))>>>0)))>>>0));ai=($imul(ae,4))+2>>0;((ai<0||ai>=p.length)?($throwRuntimeError("index out of range"),undefined):p[ai]=((((ai<0||ai>=p.length)?($throwRuntimeError("index out of range"),undefined):p[ai])|((((~g<<24>>>24)&((af>>>8>>>0)<<24>>>24))>>>0)))>>>0));aj=($imul(ae,4))+3>>0;((aj<0||aj>=p.length)?($throwRuntimeError("index out of range"),undefined):p[aj]=((((aj<0||aj>=p.length)?($throwRuntimeError("index out of range"),undefined):p[aj])|((((~g<<24>>>24)&(af<<24>>>24))>>>0)))>>>0));ad++;}$s=-1;return p;}return;}if($f===undefined){$f={$blk:D.ptr.prototype.constSum};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};D.prototype.constSum=function(){return this.$val.constSum();};G=function(a,b){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,c,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,cu,cv,cw,cx,cy,cz,d,da,db,dc,dd,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;c=N.zero();d=a.h[0];e=a.h[1];f=a.h[2];g=a.h[3];h=a.h[4];i=d;j=e;k=f;l=g;m=h;while(true){if(!(b.$length>=64)){break;}n=0;while(true){if(!(n<16)){break;}o=$imul(n,4);((n<0||n>=c.length)?($throwRuntimeError("index out of range"),undefined):c[n]=((((((((((o<0||o>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+o])>>>0)<<24>>>0)|(((p=o+1>>0,((p<0||p>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+p]))>>>0)<<16>>>0))>>>0)|(((q=o+2>>0,((q<0||q>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+q]))>>>0)<<8>>>0))>>>0)|((r=o+3>>0,((r<0||r>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+r]))>>>0))>>>0));n=n+(1)>>0;}s=i;t=j;u=k;v=l;w=m;x=s;y=t;z=u;aa=v;ab=w;ac=0;while(true){if(!(ac<16)){break;}ad=(((y&z)>>>0)|((((~y>>>0))&aa)>>>0))>>>0;ae=((x<<5>>>0)|(x>>>27>>>0))>>>0;af=((y<<30>>>0)|(y>>>2>>>0))>>>0;ah=(((ae+ad>>>0)+ab>>>0)+(ag=ac&15,((ag<0||ag>=c.length)?($throwRuntimeError("index out of range"),undefined):c[ag]))>>>0)+1518500249>>>0;ai=ah;aj=x;ak=af;al=z;am=aa;x=ai;y=aj;z=ak;aa=al;ab=am;ac=ac+(1)>>0;}while(true){if(!(ac<20)){break;}ar=((((((an=((ac-3>>0))&15,((an<0||an>=c.length)?($throwRuntimeError("index out of range"),undefined):c[an]))^(ao=((ac-8>>0))&15,((ao<0||ao>=c.length)?($throwRuntimeError("index out of range"),undefined):c[ao])))>>>0)^(ap=((ac-14>>0))&15,((ap<0||ap>=c.length)?($throwRuntimeError("index out of range"),undefined):c[ap])))>>>0)^(aq=(ac)&15,((aq<0||aq>=c.length)?($throwRuntimeError("index out of range"),undefined):c[aq])))>>>0;(as=ac&15,((as<0||as>=c.length)?($throwRuntimeError("index out of range"),undefined):c[as]=(((ar<<1>>>0)|(ar>>>31>>>0))>>>0)));at=(((y&z)>>>0)|((((~y>>>0))&aa)>>>0))>>>0;au=((x<<5>>>0)|(x>>>27>>>0))>>>0;av=((y<<30>>>0)|(y>>>2>>>0))>>>0;ax=(((au+at>>>0)+ab>>>0)+(aw=ac&15,((aw<0||aw>=c.length)?($throwRuntimeError("index out of range"),undefined):c[aw]))>>>0)+1518500249>>>0;ay=ax;az=x;ba=av;bb=z;bc=aa;x=ay;y=az;z=ba;aa=bb;ab=bc;ac=ac+(1)>>0;}while(true){if(!(ac<40)){break;}bh=((((((bd=((ac-3>>0))&15,((bd<0||bd>=c.length)?($throwRuntimeError("index out of range"),undefined):c[bd]))^(be=((ac-8>>0))&15,((be<0||be>=c.length)?($throwRuntimeError("index out of range"),undefined):c[be])))>>>0)^(bf=((ac-14>>0))&15,((bf<0||bf>=c.length)?($throwRuntimeError("index out of range"),undefined):c[bf])))>>>0)^(bg=(ac)&15,((bg<0||bg>=c.length)?($throwRuntimeError("index out of range"),undefined):c[bg])))>>>0;(bi=ac&15,((bi<0||bi>=c.length)?($throwRuntimeError("index out of range"),undefined):c[bi]=(((bh<<1>>>0)|(bh>>>31>>>0))>>>0)));bj=(((y^z)>>>0)^aa)>>>0;bk=((x<<5>>>0)|(x>>>27>>>0))>>>0;bl=((y<<30>>>0)|(y>>>2>>>0))>>>0;bn=(((bk+bj>>>0)+ab>>>0)+(bm=ac&15,((bm<0||bm>=c.length)?($throwRuntimeError("index out of range"),undefined):c[bm]))>>>0)+1859775393>>>0;bo=bn;bp=x;bq=bl;br=z;bs=aa;x=bo;y=bp;z=bq;aa=br;ab=bs;ac=ac+(1)>>0;}while(true){if(!(ac<60)){break;}bx=((((((bt=((ac-3>>0))&15,((bt<0||bt>=c.length)?($throwRuntimeError("index out of range"),undefined):c[bt]))^(bu=((ac-8>>0))&15,((bu<0||bu>=c.length)?($throwRuntimeError("index out of range"),undefined):c[bu])))>>>0)^(bv=((ac-14>>0))&15,((bv<0||bv>=c.length)?($throwRuntimeError("index out of range"),undefined):c[bv])))>>>0)^(bw=(ac)&15,((bw<0||bw>=c.length)?($throwRuntimeError("index out of range"),undefined):c[bw])))>>>0;(by=ac&15,((by<0||by>=c.length)?($throwRuntimeError("index out of range"),undefined):c[by]=(((bx<<1>>>0)|(bx>>>31>>>0))>>>0)));bz=(((((((y|z)>>>0))&aa)>>>0))|(((y&z)>>>0)))>>>0;ca=((x<<5>>>0)|(x>>>27>>>0))>>>0;cb=((y<<30>>>0)|(y>>>2>>>0))>>>0;cd=(((ca+bz>>>0)+ab>>>0)+(cc=ac&15,((cc<0||cc>=c.length)?($throwRuntimeError("index out of range"),undefined):c[cc]))>>>0)+2400959708>>>0;ce=cd;cf=x;cg=cb;ch=z;ci=aa;x=ce;y=cf;z=cg;aa=ch;ab=ci;ac=ac+(1)>>0;}while(true){if(!(ac<80)){break;}cn=((((((cj=((ac-3>>0))&15,((cj<0||cj>=c.length)?($throwRuntimeError("index out of range"),undefined):c[cj]))^(ck=((ac-8>>0))&15,((ck<0||ck>=c.length)?($throwRuntimeError("index out of range"),undefined):c[ck])))>>>0)^(cl=((ac-14>>0))&15,((cl<0||cl>=c.length)?($throwRuntimeError("index out of range"),undefined):c[cl])))>>>0)^(cm=(ac)&15,((cm<0||cm>=c.length)?($throwRuntimeError("index out of range"),undefined):c[cm])))>>>0;(co=ac&15,((co<0||co>=c.length)?($throwRuntimeError("index out of range"),undefined):c[co]=(((cn<<1>>>0)|(cn>>>31>>>0))>>>0)));cp=(((y^z)>>>0)^aa)>>>0;cq=((x<<5>>>0)|(x>>>27>>>0))>>>0;cr=((y<<30>>>0)|(y>>>2>>>0))>>>0;ct=(((cq+cp>>>0)+ab>>>0)+(cs=ac&15,((cs<0||cs>=c.length)?($throwRuntimeError("index out of range"),undefined):c[cs]))>>>0)+3395469782>>>0;cu=ct;cv=x;cw=cr;cx=z;cy=aa;x=cu;y=cv;z=cw;aa=cx;ab=cy;ac=ac+(1)>>0;}i=i+(x)>>>0;j=j+(y)>>>0;k=k+(z)>>>0;l=l+(aa)>>>0;m=m+(ab)>>>0;b=$subslice(b,64);}cz=i;da=j;db=k;dc=l;dd=m;a.h[0]=cz;a.h[1]=da;a.h[2]=db;a.h[3]=dc;a.h[4]=dd;};O.methods=[{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([],[],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int],false)},{prop:"BlockSize",name:"BlockSize",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([K],[$Int,$error],false)},{prop:"Sum",name:"Sum",pkg:"",typ:$funcType([K],[K],false)},{prop:"checkSum",name:"checkSum",pkg:"crypto/sha1",typ:$funcType([],[L],false)},{prop:"ConstantTimeSum",name:"ConstantTimeSum",pkg:"",typ:$funcType([K],[K],false)},{prop:"constSum",name:"constSum",pkg:"crypto/sha1",typ:$funcType([],[L],false)}];D.init("crypto/sha1",[{prop:"h",name:"h",exported:false,typ:I,tag:""},{prop:"x",name:"x",exported:false,typ:J,tag:""},{prop:"nx",name:"nx",exported:false,typ:$Int,tag:""},{prop:"len",name:"len",exported:false,typ:$Uint64,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}H=G;C();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["database/sql/driver"]=(function(){var $pkg={},$init,A,B,D,C,E,F,G,AJ,AU,AS,a;A=$packages["context"];B=$packages["errors"];D=$packages["fmt"];C=$packages["reflect"];E=$packages["strconv"];F=$packages["time"];G=$pkg.Value=$newType(8,$kindInterface,"driver.Value",true,"database/sql/driver",true,null);AJ=$pkg.Valuer=$newType(8,$kindInterface,"driver.Valuer",true,"database/sql/driver",true,null);AU=$ptrType(AJ);G.init([]);AJ.init([{prop:"Value",name:"Value",pkg:"",typ:$funcType([],[G,$error],false)}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$pkg.ErrSkip=B.New("driver: skip fast-path; continue as if unimplemented");$pkg.ErrBadConn=B.New("driver: bad connection");a=C.TypeOf(AU.nil).Elem();$s=7;case 7:if($c){$c=false;a=a.$blk();}if(a&&a.$blk!==undefined){break s;}AS=a;}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["encoding/hex"]=(function(){var $pkg={},$init,A,B,C,D,H,R,S,E,F,G,J,K,L;A=$packages["bytes"];B=$packages["errors"];C=$packages["fmt"];D=$packages["io"];H=$pkg.InvalidByteError=$newType(1,$kindUint8,"hex.InvalidByteError",true,"encoding/hex",true,null);R=$sliceType($emptyInterface);S=$sliceType($Uint8);F=function(a){var $ptr,a;return $imul(a,2);};$pkg.EncodedLen=F;G=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j;c=b;d=0;while(true){if(!(d<c.$length)){break;}e=d;f=((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]);(h=$imul(e,2),((h<0||h>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+h]=(g=f>>>4<<24>>>24,((g<0||g>=E.length)?($throwRuntimeError("index out of range"),undefined):E[g]))));(j=($imul(e,2))+1>>0,((j<0||j>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+j]=(i=(f&15)>>>0,((i<0||i>=E.length)?($throwRuntimeError("index out of range"),undefined):E[i]))));d++;}return $imul(b.$length,2);};$pkg.Encode=G;H.prototype.Error=function(){var $ptr,a,b,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this.$val;b=C.Sprintf("encoding/hex: invalid byte: %#U",new R([new $Int32((a>>0))]));$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=-1;return b;}return;}if($f===undefined){$f={$blk:H.prototype.Error};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(H).prototype.Error=function(){return new H(this.$get()).Error();};J=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;if((c=b.$length%2,c===c?c:$throwRuntimeError("integer divide by zero"))===1){return[0,$pkg.ErrLength];}d=0;while(true){if(!(d<(e=b.$length/2,(e===e&&e!==1/0&&e!==-1/0)?e>>0:$throwRuntimeError("integer divide by zero")))){break;}f=K((g=$imul(d,2),((g<0||g>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+g])));h=f[0];i=f[1];if(!i){return[0,new H(((j=$imul(d,2),((j<0||j>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+j]))<<24>>>24))];}k=K((l=($imul(d,2))+1>>0,((l<0||l>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+l])));m=k[0];i=k[1];if(!i){return[0,new H(((n=($imul(d,2))+1>>0,((n<0||n>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+n]))<<24>>>24))];}((d<0||d>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+d]=((((h<<4<<24>>>24))|m)>>>0));d=d+(1)>>0;}return[(o=b.$length/2,(o===o&&o!==1/0&&o!==-1/0)?o>>0:$throwRuntimeError("integer divide by zero")),$ifaceNil];};$pkg.Decode=J;K=function(a){var $ptr,a;if(48<=a&&a<=57){return[a-48<<24>>>24,true];}else if(97<=a&&a<=102){return[(a-97<<24>>>24)+10<<24>>>24,true];}else if(65<=a&&a<=70){return[(a-65<<24>>>24)+10<<24>>>24,true];}return[0,false];};L=function(a){var $ptr,a,b;b=$makeSlice(S,F(a.$length));G(b,a);return $bytesToString(b);};$pkg.EncodeToString=L;H.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}E=$toNativeArray($kindUint8,[48,49,50,51,52,53,54,55,56,57,97,98,99,100,101,102]);$pkg.ErrLength=B.New("encoding/hex: odd length hex string");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["net"]=(function(){var $pkg={},$init,E,A,C,I,N,L,K,F,G,D,H,M,B,J,AB,AC,AF,CZ,DB,DC,DD,DE,DF,DG,DH,DI,DJ,FV,FW,GD,GQ,GR,GS,HL,JE,JJ,JW,KA,KB,KD,KE,KY,MK,OV,OY,PD,PE,PF,PH,PO,PU,PV,QA,QB,QD,QE,QF,QG,QR,QT,QX,QY,QZ,RA,RB,RC,RD,RL,RO,RR,RS,RU,RV,RX,SK,SN,SS,ST,SU,SV,SY,AD,DK,FA,FQ,FR,FS,FT,FU,FX,GE,GU,GY,GZ,HA,HV,HW,HX,JG,JN,JQ,JR,JT,JU,JX,KI,KM,g,h,i,j,k,l,m,n,o,O,Q,R,S,U,AE,AG,AK,GB,GH,GI,GJ,GK,GL,GM,GN,GO,GP,GT,GV,GW,GX,HB,HC,HD,HE,HF,HG,HH,HI,HJ,HK,ID,IE,JI,KZ,LB,LC,LE,LF,LG,LI,LJ,LL;E=$packages["context"];A=$packages["errors"];C=$packages["github.com/gopherjs/gopherjs/js"];I=$packages["internal/nettrace"];N=$packages["internal/singleflight"];L=$packages["io"];K=$packages["math/rand"];F=$packages["os"];G=$packages["runtime"];D=$packages["sort"];H=$packages["sync"];M=$packages["sync/atomic"];B=$packages["syscall"];J=$packages["time"];AB=$pkg.policyTableEntry=$newType(0,$kindStruct,"net.policyTableEntry",true,"net",false,function(Prefix_,Precedence_,Label_){this.$val=this;if(arguments.length===0){this.Prefix=PH.nil;this.Precedence=0;this.Label=0;return;}this.Prefix=Prefix_;this.Precedence=Precedence_;this.Label=Label_;});AC=$pkg.policyTable=$newType(12,$kindSlice,"net.policyTable",true,"net",false,null);AF=$pkg.byMaskLength=$newType(12,$kindSlice,"net.byMaskLength",true,"net",false,null);CZ=$pkg.dnsRR_Header=$newType(0,$kindStruct,"net.dnsRR_Header",true,"net",false,function(Name_,Rrtype_,Class_,Ttl_,Rdlength_){this.$val=this;if(arguments.length===0){this.Name="";this.Rrtype=0;this.Class=0;this.Ttl=0;this.Rdlength=0;return;}this.Name=Name_;this.Rrtype=Rrtype_;this.Class=Class_;this.Ttl=Ttl_;this.Rdlength=Rdlength_;});DB=$pkg.dnsRR_CNAME=$newType(0,$kindStruct,"net.dnsRR_CNAME",true,"net",false,function(Hdr_,Cname_){this.$val=this;if(arguments.length===0){this.Hdr=new CZ.ptr("",0,0,0,0);this.Cname="";return;}this.Hdr=Hdr_;this.Cname=Cname_;});DC=$pkg.dnsRR_MX=$newType(0,$kindStruct,"net.dnsRR_MX",true,"net",false,function(Hdr_,Pref_,Mx_){this.$val=this;if(arguments.length===0){this.Hdr=new CZ.ptr("",0,0,0,0);this.Pref=0;this.Mx="";return;}this.Hdr=Hdr_;this.Pref=Pref_;this.Mx=Mx_;});DD=$pkg.dnsRR_NS=$newType(0,$kindStruct,"net.dnsRR_NS",true,"net",false,function(Hdr_,Ns_){this.$val=this;if(arguments.length===0){this.Hdr=new CZ.ptr("",0,0,0,0);this.Ns="";return;}this.Hdr=Hdr_;this.Ns=Ns_;});DE=$pkg.dnsRR_PTR=$newType(0,$kindStruct,"net.dnsRR_PTR",true,"net",false,function(Hdr_,Ptr_){this.$val=this;if(arguments.length===0){this.Hdr=new CZ.ptr("",0,0,0,0);this.Ptr="";return;}this.Hdr=Hdr_;this.Ptr=Ptr_;});DF=$pkg.dnsRR_SOA=$newType(0,$kindStruct,"net.dnsRR_SOA",true,"net",false,function(Hdr_,Ns_,Mbox_,Serial_,Refresh_,Retry_,Expire_,Minttl_){this.$val=this;if(arguments.length===0){this.Hdr=new CZ.ptr("",0,0,0,0);this.Ns="";this.Mbox="";this.Serial=0;this.Refresh=0;this.Retry=0;this.Expire=0;this.Minttl=0;return;}this.Hdr=Hdr_;this.Ns=Ns_;this.Mbox=Mbox_;this.Serial=Serial_;this.Refresh=Refresh_;this.Retry=Retry_;this.Expire=Expire_;this.Minttl=Minttl_;});DG=$pkg.dnsRR_TXT=$newType(0,$kindStruct,"net.dnsRR_TXT",true,"net",false,function(Hdr_,Txt_){this.$val=this;if(arguments.length===0){this.Hdr=new CZ.ptr("",0,0,0,0);this.Txt="";return;}this.Hdr=Hdr_;this.Txt=Txt_;});DH=$pkg.dnsRR_SRV=$newType(0,$kindStruct,"net.dnsRR_SRV",true,"net",false,function(Hdr_,Priority_,Weight_,Port_,Target_){this.$val=this;if(arguments.length===0){this.Hdr=new CZ.ptr("",0,0,0,0);this.Priority=0;this.Weight=0;this.Port=0;this.Target="";return;}this.Hdr=Hdr_;this.Priority=Priority_;this.Weight=Weight_;this.Port=Port_;this.Target=Target_;});DI=$pkg.dnsRR_A=$newType(0,$kindStruct,"net.dnsRR_A",true,"net",false,function(Hdr_,A_){this.$val=this;if(arguments.length===0){this.Hdr=new CZ.ptr("",0,0,0,0);this.A=0;return;}this.Hdr=Hdr_;this.A=A_;});DJ=$pkg.dnsRR_AAAA=$newType(0,$kindStruct,"net.dnsRR_AAAA",true,"net",false,function(Hdr_,AAAA_){this.$val=this;if(arguments.length===0){this.Hdr=new CZ.ptr("",0,0,0,0);this.AAAA=PD.zero();return;}this.Hdr=Hdr_;this.AAAA=AAAA_;});FV=$pkg.Interface=$newType(0,$kindStruct,"net.Interface",true,"net",true,function(Index_,MTU_,Name_,HardwareAddr_,Flags_){this.$val=this;if(arguments.length===0){this.Index=0;this.MTU=0;this.Name="";this.HardwareAddr=JE.nil;this.Flags=0;return;}this.Index=Index_;this.MTU=MTU_;this.Name=Name_;this.HardwareAddr=HardwareAddr_;this.Flags=Flags_;});FW=$pkg.Flags=$newType(4,$kindUint,"net.Flags",true,"net",true,null);GD=$pkg.ipv6ZoneCache=$newType(0,$kindStruct,"net.ipv6ZoneCache",true,"net",false,function(RWMutex_,lastFetched_,toIndex_,toName_){this.$val=this;if(arguments.length===0){this.RWMutex=new H.RWMutex.ptr(new H.Mutex.ptr(0,0),0,0,0,0);this.lastFetched=new J.Time.ptr(new $Int64(0,0),0,OV.nil);this.toIndex=false;this.toName=false;return;}this.RWMutex=RWMutex_;this.lastFetched=lastFetched_;this.toIndex=toIndex_;this.toName=toName_;});GQ=$pkg.IP=$newType(12,$kindSlice,"net.IP",true,"net",true,null);GR=$pkg.IPMask=$newType(12,$kindSlice,"net.IPMask",true,"net",true,null);GS=$pkg.IPNet=$newType(0,$kindStruct,"net.IPNet",true,"net",true,function(IP_,Mask_){this.$val=this;if(arguments.length===0){this.IP=GQ.nil;this.Mask=GR.nil;return;}this.IP=IP_;this.Mask=Mask_;});HL=$pkg.IPAddr=$newType(0,$kindStruct,"net.IPAddr",true,"net",true,function(IP_,Zone_){this.$val=this;if(arguments.length===0){this.IP=GQ.nil;this.Zone="";return;}this.IP=IP_;this.Zone=Zone_;});JE=$pkg.HardwareAddr=$newType(12,$kindSlice,"net.HardwareAddr",true,"net",true,null);JJ=$pkg.Addr=$newType(8,$kindInterface,"net.Addr",true,"net",true,null);JW=$pkg.OpError=$newType(0,$kindStruct,"net.OpError",true,"net",true,function(Op_,Net_,Source_,Addr_,Err_){this.$val=this;if(arguments.length===0){this.Op="";this.Net="";this.Source=$ifaceNil;this.Addr=$ifaceNil;this.Err=$ifaceNil;return;}this.Op=Op_;this.Net=Net_;this.Source=Source_;this.Addr=Addr_;this.Err=Err_;});KA=$pkg.timeout=$newType(8,$kindInterface,"net.timeout",true,"net",false,null);KB=$pkg.temporary=$newType(8,$kindInterface,"net.temporary",true,"net",false,null);KD=$pkg.ParseError=$newType(0,$kindStruct,"net.ParseError",true,"net",true,function(Type_,Text_){this.$val=this;if(arguments.length===0){this.Type="";this.Text="";return;}this.Type=Type_;this.Text=Text_;});KE=$pkg.AddrError=$newType(0,$kindStruct,"net.AddrError",true,"net",true,function(Err_,Addr_){this.$val=this;if(arguments.length===0){this.Err="";this.Addr="";return;}this.Err=Err_;this.Addr=Addr_;});KY=$pkg.file=$newType(0,$kindStruct,"net.file",true,"net",false,function(file_,data_,atEOF_){this.$val=this;if(arguments.length===0){this.file=QT.nil;this.data=PE.nil;this.atEOF=false;return;}this.file=file_;this.data=data_;this.atEOF=atEOF_;});MK=$pkg.sockaddr=$newType(8,$kindInterface,"net.sockaddr",true,"net",false,null);OV=$ptrType(J.Location);OY=$sliceType($String);PD=$arrayType($Uint8,16);PE=$sliceType($Uint8);PF=$structType("",[]);PH=$ptrType(GS);PO=$ptrType(HL);PU=$ptrType(CZ);PV=$ptrType(DB);QA=$ptrType(DI);QB=$ptrType(DJ);QD=$ptrType(DE);QE=$ptrType($Uint32);QF=$ptrType($Uint16);QG=$ptrType($String);QR=$ptrType(F.SyscallError);QT=$ptrType(F.File);QX=$ptrType(KY);QY=$ptrType(FV);QZ=$sliceType(JJ);RA=$sliceType(FV);RB=$ptrType(B.IfInfomsg);RC=$ptrType(B.IfAddrmsg);RD=$arrayType($Uint8,4);RL=$ptrType(DH);RO=$ptrType(DC);RR=$ptrType(DD);RS=$ptrType(DG);RU=$ptrType(JW);RV=$ptrType(KE);RX=$arrayType($Uint8,20);SK=$funcType([$emptyInterface,$String,$String],[$Bool],false);SN=$ptrType(DF);SS=$ptrType(GD);ST=$mapType($String,$Int);SU=$mapType($Int,$String);SV=$ptrType(GQ);SY=$ptrType(KD);O=function(p,q){var $ptr,p,q;return $parseInt(p.indexOf($global.String.fromCharCode(q)))>>0;};Q=function(){var $ptr;};R=function(){var $ptr;return false;};S=function(){var $ptr,p,q,r,s;p=false;q=false;r=false;s=false;p=r;q=s;return[p,q];};U=function(){var $ptr;return 128;};AE=function(){var $ptr,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=D.Sort(D.Reverse($subslice(new AF(AD.$array),AD.$offset,AD.$offset+AD.$length)));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:AE};}$f.$ptr=$ptr;$f.$s=$s;$f.$r=$r;return $f;};AF.prototype.Len=function(){var $ptr,p;p=this;return p.$length;};$ptrType(AF).prototype.Len=function(){return this.$get().Len();};AF.prototype.Swap=function(p,q){var $ptr,p,q,r,s,t;r=this;s=$clone(((q<0||q>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+q]),AB);t=$clone(((p<0||p>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+p]),AB);AB.copy(((p<0||p>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+p]),s);AB.copy(((q<0||q>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+q]),t);};$ptrType(AF).prototype.Swap=function(p,q){return this.$get().Swap(p,q);};AF.prototype.Less=function(p,q){var $ptr,p,q,r,s,t,u,v;r=this;s=((p<0||p>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+p]).Prefix.Mask.Size();t=s[0];u=((q<0||q>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+q]).Prefix.Mask.Size();v=u[0];return t<v;};$ptrType(AF).prototype.Less=function(p,q){return this.$get().Less(p,q);};AG=function(p){var $ptr,p,q,r,s,t,u,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=HK(p);r=q[0];s=q[1];t=q[2];if(!($interfaceIsEqual(t,$ifaceNil))){$s=1;continue;}$s=2;continue;case 1:u=t.Error();$s=3;case 3:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}$panic(new $String(u));case 2:if(!((r.$length===16))){$panic(new $String("unexpected IP length"));}$s=-1;return s;}return;}if($f===undefined){$f={$blk:AG};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.$s=$s;$f.$r=$r;return $f;};AC.prototype.Classify=function(p){var $ptr,p,q,r,s,t;q=this;r=q;s=0;while(true){if(!(s<r.$length)){break;}t=$clone(((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s]),AB);if(t.Prefix.Contains(p)){return t;}s++;}return new AB.ptr(PH.nil,0,0);};$ptrType(AC).prototype.Classify=function(p){return this.$get().Classify(p);};AK=function(){var $ptr;JG=true;};CZ.ptr.prototype.Header=function(){var $ptr,p;p=this;return p;};CZ.prototype.Header=function(){return this.$val.Header();};CZ.ptr.prototype.Walk=function(p){var $ptr,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=this;v=p((q.$ptr_Name||(q.$ptr_Name=new QG(function(){return this.$target.Name;},function($v){this.$target.Name=$v;},q))),"Name","domain");$s=5;case 5:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}if(!(v)){u=false;$s=4;continue s;}w=p((q.$ptr_Rrtype||(q.$ptr_Rrtype=new QF(function(){return this.$target.Rrtype;},function($v){this.$target.Rrtype=$v;},q))),"Rrtype","");$s=6;case 6:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}u=w;case 4:if(!(u)){t=false;$s=3;continue s;}x=p((q.$ptr_Class||(q.$ptr_Class=new QF(function(){return this.$target.Class;},function($v){this.$target.Class=$v;},q))),"Class","");$s=7;case 7:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}t=x;case 3:if(!(t)){s=false;$s=2;continue s;}y=p((q.$ptr_Ttl||(q.$ptr_Ttl=new QE(function(){return this.$target.Ttl;},function($v){this.$target.Ttl=$v;},q))),"Ttl","");$s=8;case 8:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}s=y;case 2:if(!(s)){r=false;$s=1;continue s;}z=p((q.$ptr_Rdlength||(q.$ptr_Rdlength=new QF(function(){return this.$target.Rdlength;},function($v){this.$target.Rdlength=$v;},q))),"Rdlength","");$s=9;case 9:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}r=z;case 1:$s=-1;return r;}return;}if($f===undefined){$f={$blk:CZ.ptr.prototype.Walk};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};CZ.prototype.Walk=function(p){return this.$val.Walk(p);};DB.ptr.prototype.Header=function(){var $ptr,p;p=this;return p.Hdr;};DB.prototype.Header=function(){return this.$val.Header();};DB.ptr.prototype.Walk=function(p){var $ptr,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=this;s=q.Hdr.Walk(p);$s=2;case 2:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}if(!(s)){r=false;$s=1;continue s;}t=p((q.$ptr_Cname||(q.$ptr_Cname=new QG(function(){return this.$target.Cname;},function($v){this.$target.Cname=$v;},q))),"Cname","domain");$s=3;case 3:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}r=t;case 1:$s=-1;return r;}return;}if($f===undefined){$f={$blk:DB.ptr.prototype.Walk};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};DB.prototype.Walk=function(p){return this.$val.Walk(p);};DC.ptr.prototype.Header=function(){var $ptr,p;p=this;return p.Hdr;};DC.prototype.Header=function(){return this.$val.Header();};DC.ptr.prototype.Walk=function(p){var $ptr,p,q,r,s,t,u,v,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=this;t=q.Hdr.Walk(p);$s=3;case 3:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}if(!(t)){s=false;$s=2;continue s;}u=p((q.$ptr_Pref||(q.$ptr_Pref=new QF(function(){return this.$target.Pref;},function($v){this.$target.Pref=$v;},q))),"Pref","");$s=4;case 4:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}s=u;case 2:if(!(s)){r=false;$s=1;continue s;}v=p((q.$ptr_Mx||(q.$ptr_Mx=new QG(function(){return this.$target.Mx;},function($v){this.$target.Mx=$v;},q))),"Mx","domain");$s=5;case 5:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}r=v;case 1:$s=-1;return r;}return;}if($f===undefined){$f={$blk:DC.ptr.prototype.Walk};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.$s=$s;$f.$r=$r;return $f;};DC.prototype.Walk=function(p){return this.$val.Walk(p);};DD.ptr.prototype.Header=function(){var $ptr,p;p=this;return p.Hdr;};DD.prototype.Header=function(){return this.$val.Header();};DD.ptr.prototype.Walk=function(p){var $ptr,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=this;s=q.Hdr.Walk(p);$s=2;case 2:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}if(!(s)){r=false;$s=1;continue s;}t=p((q.$ptr_Ns||(q.$ptr_Ns=new QG(function(){return this.$target.Ns;},function($v){this.$target.Ns=$v;},q))),"Ns","domain");$s=3;case 3:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}r=t;case 1:$s=-1;return r;}return;}if($f===undefined){$f={$blk:DD.ptr.prototype.Walk};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};DD.prototype.Walk=function(p){return this.$val.Walk(p);};DE.ptr.prototype.Header=function(){var $ptr,p;p=this;return p.Hdr;};DE.prototype.Header=function(){return this.$val.Header();};DE.ptr.prototype.Walk=function(p){var $ptr,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=this;s=q.Hdr.Walk(p);$s=2;case 2:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}if(!(s)){r=false;$s=1;continue s;}t=p((q.$ptr_Ptr||(q.$ptr_Ptr=new QG(function(){return this.$target.Ptr;},function($v){this.$target.Ptr=$v;},q))),"Ptr","domain");$s=3;case 3:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}r=t;case 1:$s=-1;return r;}return;}if($f===undefined){$f={$blk:DE.ptr.prototype.Walk};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};DE.prototype.Walk=function(p){return this.$val.Walk(p);};DF.ptr.prototype.Header=function(){var $ptr,p;p=this;return p.Hdr;};DF.prototype.Header=function(){return this.$val.Header();};DF.ptr.prototype.Walk=function(p){var $ptr,aa,ab,ac,ad,ae,af,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=this;y=q.Hdr.Walk(p);$s=8;case 8:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}if(!(y)){x=false;$s=7;continue s;}z=p((q.$ptr_Ns||(q.$ptr_Ns=new QG(function(){return this.$target.Ns;},function($v){this.$target.Ns=$v;},q))),"Ns","domain");$s=9;case 9:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}x=z;case 7:if(!(x)){w=false;$s=6;continue s;}aa=p((q.$ptr_Mbox||(q.$ptr_Mbox=new QG(function(){return this.$target.Mbox;},function($v){this.$target.Mbox=$v;},q))),"Mbox","domain");$s=10;case 10:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}w=aa;case 6:if(!(w)){v=false;$s=5;continue s;}ab=p((q.$ptr_Serial||(q.$ptr_Serial=new QE(function(){return this.$target.Serial;},function($v){this.$target.Serial=$v;},q))),"Serial","");$s=11;case 11:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}v=ab;case 5:if(!(v)){u=false;$s=4;continue s;}ac=p((q.$ptr_Refresh||(q.$ptr_Refresh=new QE(function(){return this.$target.Refresh;},function($v){this.$target.Refresh=$v;},q))),"Refresh","");$s=12;case 12:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}u=ac;case 4:if(!(u)){t=false;$s=3;continue s;}ad=p((q.$ptr_Retry||(q.$ptr_Retry=new QE(function(){return this.$target.Retry;},function($v){this.$target.Retry=$v;},q))),"Retry","");$s=13;case 13:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}t=ad;case 3:if(!(t)){s=false;$s=2;continue s;}ae=p((q.$ptr_Expire||(q.$ptr_Expire=new QE(function(){return this.$target.Expire;},function($v){this.$target.Expire=$v;},q))),"Expire","");$s=14;case 14:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}s=ae;case 2:if(!(s)){r=false;$s=1;continue s;}af=p((q.$ptr_Minttl||(q.$ptr_Minttl=new QE(function(){return this.$target.Minttl;},function($v){this.$target.Minttl=$v;},q))),"Minttl","");$s=15;case 15:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}r=af;case 1:$s=-1;return r;}return;}if($f===undefined){$f={$blk:DF.ptr.prototype.Walk};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};DF.prototype.Walk=function(p){return this.$val.Walk(p);};DG.ptr.prototype.Header=function(){var $ptr,p;p=this;return p.Hdr;};DG.prototype.Header=function(){return this.$val.Header();};DG.ptr.prototype.Walk=function(p){var $ptr,p,q,r,s,t,u,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=this;r=q.Hdr.Walk(p);$s=3;case 3:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}if(!r){$s=1;continue;}$s=2;continue;case 1:$s=-1;return false;case 2:s=0;case 4:if(!(s<q.Hdr.Rdlength)){$s=5;continue;}t=[t];t[0]="";u=p((t.$ptr||(t.$ptr=new QG(function(){return this.$target[0];},function($v){this.$target[0]=$v;},t))),"Txt","");$s=8;case 8:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}if(!u){$s=6;continue;}$s=7;continue;case 6:$s=-1;return false;case 7:if((q.Hdr.Rdlength-s<<16>>>16)<((t[0].length<<16>>>16)+1<<16>>>16)){$s=-1;return false;}s=s+(((t[0].length<<16>>>16)+1<<16>>>16))<<16>>>16;q.Txt=q.Txt+(t[0]);$s=4;continue;case 5:$s=-1;return true;}return;}if($f===undefined){$f={$blk:DG.ptr.prototype.Walk};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.$s=$s;$f.$r=$r;return $f;};DG.prototype.Walk=function(p){return this.$val.Walk(p);};DH.ptr.prototype.Header=function(){var $ptr,p;p=this;return p.Hdr;};DH.prototype.Header=function(){return this.$val.Header();};DH.ptr.prototype.Walk=function(p){var $ptr,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=this;v=q.Hdr.Walk(p);$s=5;case 5:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}if(!(v)){u=false;$s=4;continue s;}w=p((q.$ptr_Priority||(q.$ptr_Priority=new QF(function(){return this.$target.Priority;},function($v){this.$target.Priority=$v;},q))),"Priority","");$s=6;case 6:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}u=w;case 4:if(!(u)){t=false;$s=3;continue s;}x=p((q.$ptr_Weight||(q.$ptr_Weight=new QF(function(){return this.$target.Weight;},function($v){this.$target.Weight=$v;},q))),"Weight","");$s=7;case 7:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}t=x;case 3:if(!(t)){s=false;$s=2;continue s;}y=p((q.$ptr_Port||(q.$ptr_Port=new QF(function(){return this.$target.Port;},function($v){this.$target.Port=$v;},q))),"Port","");$s=8;case 8:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}s=y;case 2:if(!(s)){r=false;$s=1;continue s;}z=p((q.$ptr_Target||(q.$ptr_Target=new QG(function(){return this.$target.Target;},function($v){this.$target.Target=$v;},q))),"Target","domain");$s=9;case 9:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}r=z;case 1:$s=-1;return r;}return;}if($f===undefined){$f={$blk:DH.ptr.prototype.Walk};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};DH.prototype.Walk=function(p){return this.$val.Walk(p);};DI.ptr.prototype.Header=function(){var $ptr,p;p=this;return p.Hdr;};DI.prototype.Header=function(){return this.$val.Header();};DI.ptr.prototype.Walk=function(p){var $ptr,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=this;s=q.Hdr.Walk(p);$s=2;case 2:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}if(!(s)){r=false;$s=1;continue s;}t=p((q.$ptr_A||(q.$ptr_A=new QE(function(){return this.$target.A;},function($v){this.$target.A=$v;},q))),"A","ipv4");$s=3;case 3:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}r=t;case 1:$s=-1;return r;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Walk};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Walk=function(p){return this.$val.Walk(p);};DJ.ptr.prototype.Header=function(){var $ptr,p;p=this;return p.Hdr;};DJ.prototype.Header=function(){return this.$val.Header();};DJ.ptr.prototype.Walk=function(p){var $ptr,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=this;s=q.Hdr.Walk(p);$s=2;case 2:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}if(!(s)){r=false;$s=1;continue s;}t=p(new PE(q.AAAA),"AAAA","ipv6");$s=3;case 3:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}r=t;case 1:$s=-1;return r;}return;}if($f===undefined){$f={$blk:DJ.ptr.prototype.Walk};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};DJ.prototype.Walk=function(p){return this.$val.Walk(p);};FW.prototype.String=function(){var $ptr,p,q,r,s,t,u,v;p=this.$val;q="";r=FX;s=0;while(true){if(!(s<r.$length)){break;}t=s;u=((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s]);if(!((((p&(((v=(t>>>0),v<32?(1<<v):0)>>>0)))>>>0)===0))){if(!(q==="")){q=q+("|");}q=q+(u);}s++;}if(q===""){q="0";}return q;};$ptrType(FW).prototype.String=function(){return new FW(this.$get()).String();};FV.ptr.prototype.Addrs=function(){var $ptr,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;if(p===QY.nil){$s=-1;return[QZ.nil,new JW.ptr("route","ip+net",$ifaceNil,$ifaceNil,FQ)];}r=GK(p);$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=r;s=q[0];t=q[1];if(!($interfaceIsEqual(t,$ifaceNil))){t=new JW.ptr("route","ip+net",$ifaceNil,$ifaceNil,t);}$s=-1;return[s,t];}return;}if($f===undefined){$f={$blk:FV.ptr.prototype.Addrs};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};FV.prototype.Addrs=function(){return this.$val.Addrs();};FV.ptr.prototype.MulticastAddrs=function(){var $ptr,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;if(p===QY.nil){$s=-1;return[QZ.nil,new JW.ptr("route","ip+net",$ifaceNil,$ifaceNil,FQ)];}r=GN(p);$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=r;s=q[0];t=q[1];if(!($interfaceIsEqual(t,$ifaceNil))){t=new JW.ptr("route","ip+net",$ifaceNil,$ifaceNil,t);}$s=-1;return[s,t];}return;}if($f===undefined){$f={$blk:FV.ptr.prototype.MulticastAddrs};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};FV.prototype.MulticastAddrs=function(){return this.$val.MulticastAddrs();};GB=function(p,q){var $ptr,p,q,r,s,t;r=p;s=0;while(true){if(!(s<r.$length)){break;}t=$clone(((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s]),FV);if(q===t.Index){return[t,$ifaceNil];}s++;}return[QY.nil,FT];};GH=function(p){var $ptr,aa,ab,ac,ad,ae,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=[q];s=B.NetlinkRIB(18,0);$s=1;case 1:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;t=r[0];u=r[1];if(!($interfaceIsEqual(u,$ifaceNil))){$s=-1;return[RA.nil,F.NewSyscallError("netlinkrib",u)];}v=B.ParseNetlinkMessage(t);w=v[0];u=v[1];if(!($interfaceIsEqual(u,$ifaceNil))){$s=-1;return[RA.nil,F.NewSyscallError("parsenetlinkmessage",u)];}x=RA.nil;y=w;z=0;loop:while(true){if(!(z<y.$length)){break;}q[0]=$clone(((z<0||z>=y.$length)?($throwRuntimeError("index out of range"),undefined):y.$array[y.$offset+z]),B.NetlinkMessage);aa=q[0].Header.Type;if(aa===(3)){break loop;}else if(aa===(16)){ab=$pointerOfStructConversion($sliceToArray(q[0].Data),RB);if((p===0)||(p===(ab.Index>>0))){ac=B.ParseNetlinkRouteAttr(q[0]);ad=ac[0];ae=ac[1];if(!($interfaceIsEqual(ae,$ifaceNil))){$s=-1;return[RA.nil,F.NewSyscallError("parsenetlinkrouteattr",ae)];}x=$append(x,GI(ab,ad));if(p===(ab.Index>>0)){break loop;}}}z++;}$s=-1;return[x,$ifaceNil];}return;}if($f===undefined){$f={$blk:GH};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};GI=function(p,q){var $ptr,aa,ab,ac,ad,ae,p,q,r,s,t,u,v,w,x,y,z;r=new FV.ptr((p.Index>>0),0,"",JE.nil,GJ(p.Flags));s=q;t=0;while(true){if(!(t<s.$length)){break;}u=$clone(((t<0||t>=s.$length)?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+t]),B.NetlinkRouteAttr);v=u.Attr.Type;if(v===(1)){w=u.Value.$length;if(w===(4)){x=p.Type;if((x===(768))||(x===(778))||(x===(776))){t++;continue;}}else if(w===(16)){y=p.Type;if((y===(769))||(y===(823))){t++;continue;}}z=false;aa=u.Value;ab=0;while(true){if(!(ab<aa.$length)){break;}ac=((ab<0||ab>=aa.$length)?($throwRuntimeError("index out of range"),undefined):aa.$array[aa.$offset+ab]);if(!((ac===0))){z=true;break;}ab++;}if(z){r.HardwareAddr=(ad=u.Value,$subslice(new JE(ad.$array),ad.$offset,ad.$offset+ad.$length));}}else if(v===(3)){r.Name=$bytesToString($subslice(u.Value,0,(u.Value.$length-1>>0)));}else if(v===(4)){r.MTU=((ae=$subslice(u.Value,0,4),(0>=ae.$length?($throwRuntimeError("index out of range"),undefined):ae.$array[ae.$offset+0]))>>0);}t++;}return r;};GJ=function(p){var $ptr,p,q;q=0;if(!((((p&1)>>>0)===0))){q=(q|(1))>>>0;}if(!((((p&2)>>>0)===0))){q=(q|(2))>>>0;}if(!((((p&8)>>>0)===0))){q=(q|(4))>>>0;}if(!((((p&16)>>>0)===0))){q=(q|(8))>>>0;}if(!((((p&4096)>>>0)===0))){q=(q|(16))>>>0;}return q;};GK=function(p){var $ptr,aa,ab,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:r=B.NetlinkRIB(22,0);$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=r;s=q[0];t=q[1];if(!($interfaceIsEqual(t,$ifaceNil))){$s=-1;return[QZ.nil,F.NewSyscallError("netlinkrib",t)];}u=B.ParseNetlinkMessage(s);v=u[0];t=u[1];if(!($interfaceIsEqual(t,$ifaceNil))){$s=-1;return[QZ.nil,F.NewSyscallError("parsenetlinkmessage",t)];}w=RA.nil;if(p===QY.nil){$s=2;continue;}$s=3;continue;case 2:x=$ifaceNil;z=GH(0);$s=4;case 4:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}y=z;w=y[0];x=y[1];if(!($interfaceIsEqual(x,$ifaceNil))){$s=-1;return[QZ.nil,x];}case 3:aa=GL(w,p,v);ab=aa[0];t=aa[1];if(!($interfaceIsEqual(t,$ifaceNil))){$s=-1;return[QZ.nil,t];}$s=-1;return[ab,$ifaceNil];}return;}if($f===undefined){$f={$blk:GK};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};GL=function(p,q,r){var $ptr,aa,ab,ac,ad,p,q,r,s,t,u,v,w,x,y,z;s=QZ.nil;t=r;u=0;loop:while(true){if(!(u<t.$length)){break;}v=$clone(((u<0||u>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+u]),B.NetlinkMessage);w=v.Header.Type;if(w===(3)){break loop;}else if(w===(20)){x=$pointerOfStructConversion($sliceToArray(v.Data),RC);if(!((p.$length===0))||(q.Index===(x.Index>>0))){if(!((p.$length===0))){y=$ifaceNil;z=GB(p,(x.Index>>0));q=z[0];y=z[1];if(!($interfaceIsEqual(y,$ifaceNil))){return[QZ.nil,y];}}aa=B.ParseNetlinkRouteAttr(v);ab=aa[0];ac=aa[1];if(!($interfaceIsEqual(ac,$ifaceNil))){return[QZ.nil,F.NewSyscallError("parsenetlinkrouteattr",ac)];}ad=GM(q,x,ab);if(!($interfaceIsEqual(ad,$ifaceNil))){s=$append(s,ad);}}}u++;}return[s,$ifaceNil];};GM=function(p,q,r){var $ptr,aa,ab,ac,ad,ae,p,q,r,s,t,u,v,w,x,y,z;s=false;t=r;u=0;while(true){if(!(u<t.$length)){break;}v=$clone(((u<0||u>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+u]),B.NetlinkRouteAttr);if(v.Attr.Type===2){s=true;break;}u++;}w=r;x=0;while(true){if(!(x<w.$length)){break;}y=$clone(((x<0||x>=w.$length)?($throwRuntimeError("index out of range"),undefined):w.$array[w.$offset+x]),B.NetlinkRouteAttr);if(s&&(y.Attr.Type===1)){x++;continue;}z=q.Family;if(z===(2)){return new GS.ptr(GT((aa=y.Value,(0>=aa.$length?($throwRuntimeError("index out of range"),undefined):aa.$array[aa.$offset+0])),(ab=y.Value,(1>=ab.$length?($throwRuntimeError("index out of range"),undefined):ab.$array[ab.$offset+1])),(ac=y.Value,(2>=ac.$length?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+2])),(ad=y.Value,(3>=ad.$length?($throwRuntimeError("index out of range"),undefined):ad.$array[ad.$offset+3]))),GW((q.Prefixlen>>0),32));}else if(z===(10)){ae=new GS.ptr($makeSlice(GQ,16),GW((q.Prefixlen>>0),128));$copySlice(ae.IP,y.Value);return ae;}x++;}return $ifaceNil;};GN=function(p){var $ptr,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=GO("/proc/net/igmp",p);$s=1;case 1:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=q;s=GP("/proc/net/igmp6",p);$s=2;case 2:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}t=s;$s=-1;return[$appendSlice(r,t),$ifaceNil];}return;}if($f===undefined){$f={$blk:GN};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};GO=function(p,q){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,p,q,r,s,t,u,v,w,x,y,z,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);r=KZ(p);s=r[0];t=r[1];if(!($interfaceIsEqual(t,$ifaceNil))){$s=-1;return QZ.nil;}$deferred.push([$methodVal(s,"close"),[]]);u=QZ.nil;v="";w=s.readLine();$s=1;case 1:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}w;x=$makeSlice(PE,4);z=s.readLine();$s=2;case 2:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}y=z;aa=y[0];ab=y[1];case 3:if(!(ab)){$s=4;continue;}ac=LC(aa," :\r\t\n");if(ac.$length<4){$s=5;continue;}$s=6;continue;case 5:ae=s.readLine();$s=7;case 7:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}ad=ae;aa=ad[0];ab=ad[1];$s=3;continue;case 6:if(!((aa.charCodeAt(0)===32))&&!((aa.charCodeAt(0)===9))){v=(1>=ac.$length?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+1]);}else if(((0>=ac.$length?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+0]).length===8)){if(q===QY.nil||v===q.Name){af=0;while(true){if(!((af+1>>0)<(0>=ac.$length?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+0]).length)){break;}ag=LG($substring((0>=ac.$length?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+0]),af,(af+2>>0)),0);(ah=(ai=af/2,(ai===ai&&ai!==1/0&&ai!==-1/0)?ai>>0:$throwRuntimeError("integer divide by zero")),((ah<0||ah>=x.$length)?($throwRuntimeError("index out of range"),undefined):x.$array[x.$offset+ah]=ag[0]));af=af+(2)>>0;}ak=(aj=$subslice(x,0,4),(0>=aj.$length?($throwRuntimeError("index out of range"),undefined):aj.$array[aj.$offset+0]));al=new HL.ptr(GT(((ak>>>24>>>0)<<24>>>24),((ak>>>16>>>0)<<24>>>24),((ak>>>8>>>0)<<24>>>24),(ak<<24>>>24)),"");u=$append(u,al);}}an=s.readLine();$s=8;case 8:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}am=an;aa=am[0];ab=am[1];$s=3;continue;case 4:$s=-1;return u;}return;}}catch(err){$err=err;$s=-1;return QZ.nil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:GO};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};GP=function(p,q){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,p,q,r,s,t,u,v,w,x,y,z,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);r=KZ(p);s=r[0];t=r[1];if(!($interfaceIsEqual(t,$ifaceNil))){$s=-1;return QZ.nil;}$deferred.push([$methodVal(s,"close"),[]]);u=QZ.nil;v=$makeSlice(PE,16);x=s.readLine();$s=1;case 1:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}w=x;y=w[0];z=w[1];case 2:if(!(z)){$s=3;continue;}aa=LC(y," \r\t\n");if(aa.$length<6){$s=4;continue;}$s=5;continue;case 4:ac=s.readLine();$s=6;case 6:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ab=ac;y=ab[0];z=ab[1];$s=2;continue;case 5:if(q===QY.nil||(1>=aa.$length?($throwRuntimeError("index out of range"),undefined):aa.$array[aa.$offset+1])===q.Name){ad=0;while(true){if(!((ad+1>>0)<(2>=aa.$length?($throwRuntimeError("index out of range"),undefined):aa.$array[aa.$offset+2]).length)){break;}ae=LG($substring((2>=aa.$length?($throwRuntimeError("index out of range"),undefined):aa.$array[aa.$offset+2]),ad,(ad+2>>0)),0);(af=(ag=ad/2,(ag===ag&&ag!==1/0&&ag!==-1/0)?ag>>0:$throwRuntimeError("integer divide by zero")),((af<0||af>=v.$length)?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+af]=ae[0]));ad=ad+(2)>>0;}ah=new HL.ptr(new GQ([(0>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+0]),(1>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+1]),(2>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+2]),(3>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+3]),(4>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+4]),(5>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+5]),(6>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+6]),(7>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+7]),(8>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+8]),(9>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+9]),(10>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+10]),(11>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+11]),(12>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+12]),(13>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+13]),(14>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+14]),(15>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+15])]),"");u=$append(u,ah);}aj=s.readLine();$s=7;case 7:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ai=aj;y=ai[0];z=ai[1];$s=2;continue;case 3:$s=-1;return u;}return;}}catch(err){$err=err;$s=-1;return QZ.nil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:GP};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};GT=function(p,q,r,s){var $ptr,p,q,r,s,t;t=$makeSlice(GQ,16);$copySlice(t,GU);(12>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+12]=p);(13>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+13]=q);(14>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+14]=r);(15>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+15]=s);return t;};$pkg.IPv4=GT;GV=function(p,q,r,s){var $ptr,p,q,r,s,t;t=$makeSlice(GR,4);(0>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+0]=p);(1>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+1]=q);(2>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+2]=r);(3>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+3]=s);return t;};$pkg.IPv4Mask=GV;GW=function(p,q){var $ptr,p,q,r,s,t,u,v,w;if(!((q===32))&&!((q===128))){return GR.nil;}if(p<0||p>q){return GR.nil;}s=(r=q/8,(r===r&&r!==1/0&&r!==-1/0)?r>>0:$throwRuntimeError("integer divide by zero"));t=$makeSlice(GR,s);u=(p>>>0);v=0;while(true){if(!(v<s)){break;}if(u>=8){((v<0||v>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+v]=255);u=u-(8)>>>0;v=v+(1)>>0;continue;}((v<0||v>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+v]=(~((w=u,w<32?(255>>>w):0)<<24>>>24)<<24>>>24));u=0;v=v+(1)>>0;}return t;};$pkg.CIDRMask=GW;GQ.prototype.IsUnspecified=function(){var $ptr,p;p=this;return p.Equal($pkg.IPv4zero)||p.Equal($pkg.IPv6unspecified);};$ptrType(GQ).prototype.IsUnspecified=function(){return this.$get().IsUnspecified();};GQ.prototype.IsLoopback=function(){var $ptr,p,q;p=this;q=p.To4();if(!(q===GQ.nil)){return(0>=q.$length?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+0])===127;}return p.Equal($pkg.IPv6loopback);};$ptrType(GQ).prototype.IsLoopback=function(){return this.$get().IsLoopback();};GQ.prototype.IsMulticast=function(){var $ptr,p,q;p=this;q=p.To4();if(!(q===GQ.nil)){return(((0>=q.$length?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+0])&240)>>>0)===224;}return(p.$length===16)&&((0>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+0])===255);};$ptrType(GQ).prototype.IsMulticast=function(){return this.$get().IsMulticast();};GQ.prototype.IsInterfaceLocalMulticast=function(){var $ptr,p;p=this;return(p.$length===16)&&((0>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+0])===255)&&((((1>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+1])&15)>>>0)===1);};$ptrType(GQ).prototype.IsInterfaceLocalMulticast=function(){return this.$get().IsInterfaceLocalMulticast();};GQ.prototype.IsLinkLocalMulticast=function(){var $ptr,p,q;p=this;q=p.To4();if(!(q===GQ.nil)){return((0>=q.$length?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+0])===224)&&((1>=q.$length?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+1])===0)&&((2>=q.$length?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+2])===0);}return(p.$length===16)&&((0>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+0])===255)&&((((1>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+1])&15)>>>0)===2);};$ptrType(GQ).prototype.IsLinkLocalMulticast=function(){return this.$get().IsLinkLocalMulticast();};GQ.prototype.IsLinkLocalUnicast=function(){var $ptr,p,q;p=this;q=p.To4();if(!(q===GQ.nil)){return((0>=q.$length?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+0])===169)&&((1>=q.$length?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+1])===254);}return(p.$length===16)&&((0>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+0])===254)&&((((1>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+1])&192)>>>0)===128);};$ptrType(GQ).prototype.IsLinkLocalUnicast=function(){return this.$get().IsLinkLocalUnicast();};GQ.prototype.IsGlobalUnicast=function(){var $ptr,p;p=this;return((p.$length===4)||(p.$length===16))&&!p.Equal($pkg.IPv4bcast)&&!p.IsUnspecified()&&!p.IsLoopback()&&!p.IsMulticast()&&!p.IsLinkLocalUnicast();};$ptrType(GQ).prototype.IsGlobalUnicast=function(){return this.$get().IsGlobalUnicast();};GX=function(p){var $ptr,p,q;q=0;while(true){if(!(q<p.$length)){break;}if(!((((q<0||q>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+q])===0))){return false;}q=q+(1)>>0;}return true;};GQ.prototype.To4=function(){var $ptr,p;p=this;if(p.$length===4){return p;}if((p.$length===16)&&GX($subslice(p,0,10))&&((10>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+10])===255)&&((11>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+11])===255)){return $subslice(p,12,16);}return GQ.nil;};$ptrType(GQ).prototype.To4=function(){return this.$get().To4();};GQ.prototype.To16=function(){var $ptr,p;p=this;if(p.$length===4){return GT((0>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+0]),(1>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+1]),(2>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+2]),(3>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+3]));}if(p.$length===16){return p;}return GQ.nil;};$ptrType(GQ).prototype.To16=function(){return this.$get().To16();};GQ.prototype.DefaultMask=function(){var $ptr,p,q;p=this;p=p.To4();if(p===GQ.nil){return GR.nil;}q=true;if(q===((0>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+0])<128)){return GY;}else if(q===((0>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+0])<192)){return GZ;}else{return HA;}};$ptrType(GQ).prototype.DefaultMask=function(){return this.$get().DefaultMask();};HB=function(p){var $ptr,p,q,r,s;q=p;r=0;while(true){if(!(r<q.$length)){break;}s=((r<0||r>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+r]);if(!((s===255))){return false;}r++;}return true;};GQ.prototype.Mask=function(p){var $ptr,p,q,r,s,t,u,v;q=this;if((p.$length===16)&&(q.$length===4)&&HB((r=$subslice(p,0,12),$subslice(new PE(r.$array),r.$offset,r.$offset+r.$length)))){p=$subslice(p,12);}if((p.$length===4)&&(q.$length===16)&&HE((s=$subslice(q,0,12),$subslice(new PE(s.$array),s.$offset,s.$offset+s.$length)),GU)){q=$subslice(q,12);}t=q.$length;if(!((t===p.$length))){return GQ.nil;}u=$makeSlice(GQ,t);v=0;while(true){if(!(v<t)){break;}((v<0||v>=u.$length)?($throwRuntimeError("index out of range"),undefined):u.$array[u.$offset+v]=((((v<0||v>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+v])&((v<0||v>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+v]))>>>0));v=v+(1)>>0;}return u;};$ptrType(GQ).prototype.Mask=function(p){return this.$get().Mask(p);};GQ.prototype.String=function(){var $ptr,p,q,r,s,t,u,v,w,x,y,z;p=this;q=p;if(p.$length===0){return"<nil>";}r=q.To4();if(r.$length===4){return LI(((0>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+0])>>>0))+"."+LI(((1>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+1])>>>0))+"."+LI(((2>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+2])>>>0))+"."+LI(((3>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+3])>>>0));}if(!((q.$length===16))){return"?"+HC($subslice(new PE(p.$array),p.$offset,p.$offset+p.$length));}s=-1;t=-1;u=0;while(true){if(!(u<16)){break;}v=u;while(true){if(!(v<16&&(((v<0||v>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+v])===0)&&((w=v+1>>0,((w<0||w>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+w]))===0))){break;}v=v+(2)>>0;}if(v>u&&(v-u>>0)>(t-s>>0)){s=u;t=v;u=v;}u=u+(2)>>0;}if((t-s>>0)<=2){s=-1;t=-1;}x=$makeSlice(PE,0,39);y=0;while(true){if(!(y<16)){break;}if(y===s){x=$append(x,58,58);y=t;if(y>=16){break;}}else if(y>0){x=$append(x,58);}x=LJ(x,((((((y<0||y>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+y])>>>0)<<8>>>0))|((z=y+1>>0,((z<0||z>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+z]))>>>0))>>>0);y=y+(2)>>0;}return $bytesToString(x);};$ptrType(GQ).prototype.String=function(){return this.$get().String();};HC=function(p){var $ptr,p,q,r,s,t,u,v,w,x,y;q=$makeSlice(PE,($imul(p.$length,2)));r=p;s=0;while(true){if(!(s<r.$length)){break;}t=s;u=((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s]);v="0123456789abcdef".charCodeAt((u>>>4<<24>>>24));w="0123456789abcdef".charCodeAt(((u&15)>>>0));(x=$imul(t,2),((x<0||x>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+x]=v));(y=($imul(t,2))+1>>0,((y<0||y>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+y]=w));s++;}return $bytesToString(q);};HD=function(p){var $ptr,p;if(p.$length===0){return"";}return p.String();};GQ.prototype.MarshalText=function(){var $ptr,p;p=this;if(p.$length===0){return[new PE($stringToBytes("")),$ifaceNil];}if(!((p.$length===4))&&!((p.$length===16))){return[PE.nil,new KE.ptr("invalid IP address",HC($subslice(new PE(p.$array),p.$offset,p.$offset+p.$length)))];}return[new PE($stringToBytes(p.String())),$ifaceNil];};$ptrType(GQ).prototype.MarshalText=function(){return this.$get().MarshalText();};$ptrType(GQ).prototype.UnmarshalText=function(p){var $ptr,p,q,r,s;q=this;if(p.$length===0){q.$set(GQ.nil);return $ifaceNil;}r=$bytesToString(p);s=HJ(r);if(s===GQ.nil){return new KD.ptr("IP address",r);}q.$set(s);return $ifaceNil;};GQ.prototype.Equal=function(p){var $ptr,p,q,r,s,t,u;q=this;if(q.$length===p.$length){return HE($subslice(new PE(q.$array),q.$offset,q.$offset+q.$length),$subslice(new PE(p.$array),p.$offset,p.$offset+p.$length));}if((q.$length===4)&&(p.$length===16)){return HE((r=$subslice(p,0,12),$subslice(new PE(r.$array),r.$offset,r.$offset+r.$length)),GU)&&HE($subslice(new PE(q.$array),q.$offset,q.$offset+q.$length),(s=$subslice(p,12),$subslice(new PE(s.$array),s.$offset,s.$offset+s.$length)));}if((q.$length===16)&&(p.$length===4)){return HE((t=$subslice(q,0,12),$subslice(new PE(t.$array),t.$offset,t.$offset+t.$length)),GU)&&HE((u=$subslice(q,12),$subslice(new PE(u.$array),u.$offset,u.$offset+u.$length)),$subslice(new PE(p.$array),p.$offset,p.$offset+p.$length));}return false;};$ptrType(GQ).prototype.Equal=function(p){return this.$get().Equal(p);};HE=function(p,q){var $ptr,p,q,r,s,t,u;if(!((p.$length===q.$length))){return false;}r=p;s=0;while(true){if(!(s<r.$length)){break;}t=s;u=((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s]);if(!((((t<0||t>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+t])===u))){return false;}s++;}return true;};HF=function(p){var $ptr,p,q,r,s,t,u,v;q=0;r=p;s=0;while(true){if(!(s<r.$length)){break;}t=s;u=((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s]);if(u===255){q=q+(8)>>0;s++;continue;}while(true){if(!(!((((u&128)>>>0)===0)))){break;}q=q+(1)>>0;u=(v=(1),v<32?(u<<v):0)<<24>>>24;}if(!((u===0))){return-1;}t=t+(1)>>0;while(true){if(!(t<p.$length)){break;}if(!((((t<0||t>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+t])===0))){return-1;}t=t+(1)>>0;}break;}return q;};GR.prototype.Size=function(){var $ptr,p,q,r,s,t,u,v;p=0;q=0;r=this;s=HF(r);t=$imul(r.$length,8);p=s;q=t;if(p===-1){u=0;v=0;p=u;q=v;return[p,q];}return[p,q];};$ptrType(GR).prototype.Size=function(){return this.$get().Size();};GR.prototype.String=function(){var $ptr,p;p=this;if(p.$length===0){return"<nil>";}return HC($subslice(new PE(p.$array),p.$offset,p.$offset+p.$length));};$ptrType(GR).prototype.String=function(){return this.$get().String();};HG=function(p){var $ptr,p,q,r,s,t,u,v,w,x,y;q=GQ.nil;r=GR.nil;q=p.IP.To4();if(q===GQ.nil){q=p.IP;if(!((q.$length===16))){s=GQ.nil;t=GR.nil;q=s;r=t;return[q,r];}}r=p.Mask;u=r.$length;if(u===(4)){if(!((q.$length===4))){v=GQ.nil;w=GR.nil;q=v;r=w;return[q,r];}}else if(u===(16)){if(q.$length===4){r=$subslice(r,12);}}else{x=GQ.nil;y=GR.nil;q=x;r=y;return[q,r];}return[q,r];};GS.ptr.prototype.Contains=function(p){var $ptr,p,q,r,s,t,u,v,w;q=this;r=HG(q);s=r[0];t=r[1];u=p.To4();if(!(u===GQ.nil)){p=u;}v=p.$length;if(!((v===s.$length))){return false;}w=0;while(true){if(!(w<v)){break;}if(!((((((w<0||w>=s.$length)?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+w])&((w<0||w>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+w]))>>>0)===((((w<0||w>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+w])&((w<0||w>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+w]))>>>0)))){return false;}w=w+(1)>>0;}return true;};GS.prototype.Contains=function(p){return this.$val.Contains(p);};GS.ptr.prototype.Network=function(){var $ptr,p;p=this;return"ip+net";};GS.prototype.Network=function(){return this.$val.Network();};GS.ptr.prototype.String=function(){var $ptr,p,q,r,s,t;p=this;q=HG(p);r=q[0];s=q[1];if(r===GQ.nil||s===GR.nil){return"<nil>";}t=HF(s);if(t===-1){return r.String()+"/"+s.String();}return r.String()+"/"+LI((t>>>0));};GS.prototype.String=function(){return this.$val.String();};HH=function(p){var $ptr,p,q,r,s,t,u,v;q=RD.zero();r=0;while(true){if(!(r<4)){break;}if(p.length===0){return GQ.nil;}if(r>0){if(!((p.charCodeAt(0)===46))){return GQ.nil;}p=$substring(p,1);}s=LE(p);t=s[0];u=s[1];v=s[2];if(!v||t>255){return GQ.nil;}p=$substring(p,u);((r<0||r>=q.length)?($throwRuntimeError("index out of range"),undefined):q[r]=(t<<24>>>24));r=r+(1)>>0;}if(!((p.length===0))){return GQ.nil;}return GT(q[0],q[1],q[2],q[3]);};HI=function(p,q){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,p,q,r,s,t,u,v,w,x,y,z;r=GQ.nil;s="";r=$makeSlice(GQ,16);t=-1;if(q){u=IE(p);p=u[0];s=u[1];}if(p.length>=2&&(p.charCodeAt(0)===58)&&(p.charCodeAt(1)===58)){t=0;p=$substring(p,2);if(p.length===0){v=r;w=s;r=v;s=w;return[r,s];}}x=0;while(true){if(!(x<16)){break;}y=LF(p);z=y[0];aa=y[1];ab=y[2];if(!ab||z>65535){ac=GQ.nil;ad=s;r=ac;s=ad;return[r,s];}if(aa<p.length&&(p.charCodeAt(aa)===46)){if(t<0&&!((x===12))){ae=GQ.nil;af=s;r=ae;s=af;return[r,s];}if((x+4>>0)>16){ag=GQ.nil;ah=s;r=ag;s=ah;return[r,s];}ai=HH(p);if(ai===GQ.nil){aj=GQ.nil;ak=s;r=aj;s=ak;return[r,s];}((x<0||x>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+x]=(12>=ai.$length?($throwRuntimeError("index out of range"),undefined):ai.$array[ai.$offset+12]));(al=x+1>>0,((al<0||al>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+al]=(13>=ai.$length?($throwRuntimeError("index out of range"),undefined):ai.$array[ai.$offset+13])));(am=x+2>>0,((am<0||am>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+am]=(14>=ai.$length?($throwRuntimeError("index out of range"),undefined):ai.$array[ai.$offset+14])));(an=x+3>>0,((an<0||an>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+an]=(15>=ai.$length?($throwRuntimeError("index out of range"),undefined):ai.$array[ai.$offset+15])));p="";x=x+(4)>>0;break;}((x<0||x>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+x]=((z>>8>>0)<<24>>>24));(ao=x+1>>0,((ao<0||ao>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+ao]=(z<<24>>>24)));x=x+(2)>>0;p=$substring(p,aa);if(p.length===0){break;}if(!((p.charCodeAt(0)===58))||(p.length===1)){ap=GQ.nil;aq=s;r=ap;s=aq;return[r,s];}p=$substring(p,1);if(p.charCodeAt(0)===58){if(t>=0){ar=GQ.nil;as=s;r=ar;s=as;return[r,s];}t=x;p=$substring(p,1);if(p.length===0){break;}}}if(!((p.length===0))){at=GQ.nil;au=s;r=at;s=au;return[r,s];}if(x<16){if(t<0){av=GQ.nil;aw=s;r=av;s=aw;return[r,s];}ax=16-x>>0;ay=x-1>>0;while(true){if(!(ay>=t)){break;}(az=ay+ax>>0,((az<0||az>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+az]=((ay<0||ay>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+ay])));ay=ay-(1)>>0;}ba=(t+ax>>0)-1>>0;while(true){if(!(ba>=t)){break;}((ba<0||ba>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+ba]=0);ba=ba-(1)>>0;}}else if(t>=0){bb=GQ.nil;bc=s;r=bb;s=bc;return[r,s];}bd=r;be=s;r=bd;s=be;return[r,s];};HJ=function(p){var $ptr,p,q,r,s,t;q=0;while(true){if(!(q<p.length)){break;}r=p.charCodeAt(q);if(r===(46)){return HH(p);}else if(r===(58)){s=HI(p,false);t=s[0];return t;}q=q+(1)>>0;}return GQ.nil;};$pkg.ParseIP=HJ;HK=function(p){var $ptr,aa,ab,p,q,r,s,t,u,v,w,x,y,z;q=O(p,47);if(q<0){return[GQ.nil,PH.nil,new KD.ptr("CIDR address",p)];}r=$substring(p,0,q);s=$substring(p,(q+1>>0));t=r;u=s;v=4;w=HH(t);if(w===GQ.nil){v=16;x=HI(t,false);w=x[0];}y=LE(u);z=y[0];q=y[1];aa=y[2];if(w===GQ.nil||!aa||!((q===u.length))||z<0||z>($imul(8,v))){return[GQ.nil,PH.nil,new KD.ptr("CIDR address",p)];}ab=GW(z,$imul(8,v));return[w,new GS.ptr(w.Mask(ab),ab),$ifaceNil];};$pkg.ParseCIDR=HK;HL.ptr.prototype.Network=function(){var $ptr,p;p=this;return"ip";};HL.prototype.Network=function(){return this.$val.Network();};HL.ptr.prototype.String=function(){var $ptr,p,q;p=this;if(p===PO.nil){return"<nil>";}q=HD(p.IP);if(!(p.Zone==="")){return q+"%"+p.Zone;}return q;};HL.prototype.String=function(){return this.$val.String();};ID=function(p){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q="";r="";s=$ifaceNil;t=(function(t,u){var $ptr,aa,t,u,v,w,x,y,z;v="";w="";x=$ifaceNil;y="";z="";aa=new KE.ptr(u,t);v=y;w=z;x=aa;return[v,w,x];});u=0;v=0;w=u;x=v;y=LL(p,58);if(y<0){$s=1;continue;}$s=2;continue;case 1:aa=t(p,"missing port in address");$s=3;case 3:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}z=aa;q=z[0];r=z[1];s=z[2];$s=-1;return[q,r,s];case 2:if(p.charCodeAt(0)===91){$s=4;continue;}$s=5;continue;case 4:ab=O(p,93);if(ab<0){$s=7;continue;}$s=8;continue;case 7:ad=t(p,"missing ']' in address");$s=9;case 9:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}ac=ad;q=ac[0];r=ac[1];s=ac[2];$s=-1;return[q,r,s];case 8:ae=ab+1>>0;if(ae===(p.length)){$s=11;continue;}if(ae===(y)){$s=12;continue;}$s=13;continue;case 11:ag=t(p,"missing port in address");$s=15;case 15:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}af=ag;q=af[0];r=af[1];s=af[2];$s=-1;return[q,r,s];case 12:$s=14;continue;case 13:if(p.charCodeAt((ab+1>>0))===58){$s=16;continue;}$s=17;continue;case 16:ai=t(p,"too many colons in address");$s=18;case 18:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ah=ai;q=ah[0];r=ah[1];s=ah[2];$s=-1;return[q,r,s];case 17:ak=t(p,"missing port in address");$s=19;case 19:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}aj=ak;q=aj[0];r=aj[1];s=aj[2];$s=-1;return[q,r,s];case 14:case 10:q=$substring(p,1,ab);al=1;am=ab+1>>0;w=al;x=am;$s=6;continue;case 5:q=$substring(p,0,y);if(O(q,58)>=0){$s=20;continue;}$s=21;continue;case 20:ao=t(p,"too many colons in address");$s=22;case 22:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}an=ao;q=an[0];r=an[1];s=an[2];$s=-1;return[q,r,s];case 21:if(O(q,37)>=0){$s=23;continue;}$s=24;continue;case 23:aq=t(p,"missing brackets in address");$s=25;case 25:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ap=aq;q=ap[0];r=ap[1];s=ap[2];$s=-1;return[q,r,s];case 24:case 6:if(O($substring(p,w),91)>=0){$s=26;continue;}$s=27;continue;case 26:as=t(p,"unexpected '[' in address");$s=28;case 28:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}ar=as;q=ar[0];r=ar[1];s=ar[2];$s=-1;return[q,r,s];case 27:if(O($substring(p,x),93)>=0){$s=29;continue;}$s=30;continue;case 29:au=t(p,"unexpected ']' in address");$s=31;case 31:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}at=au;q=at[0];r=at[1];s=at[2];$s=-1;return[q,r,s];case 30:r=$substring(p,(y+1>>0));av=q;aw=r;ax=$ifaceNil;q=av;r=aw;s=ax;$s=-1;return[q,r,s];}return;}if($f===undefined){$f={$blk:ID};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$pkg.SplitHostPort=ID;IE=function(p){var $ptr,p,q,r,s,t,u;q="";r="";s=LL(p,37);if(s>0){t=$substring(p,0,s);u=$substring(p,(s+1>>0));q=t;r=u;}else{q=p;}return[q,r];};JE.prototype.String=function(){var $ptr,p,q,r,s,t,u;p=this;if(p.$length===0){return"";}q=$makeSlice(PE,0,(($imul(p.$length,3))-1>>0));r=p;s=0;while(true){if(!(s<r.$length)){break;}t=s;u=((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s]);if(t>0){q=$append(q,58);}q=$append(q,"0123456789abcdef".charCodeAt((u>>>4<<24>>>24)));q=$append(q,"0123456789abcdef".charCodeAt(((u&15)>>>0)));s++;}return $bytesToString(q);};$ptrType(JE).prototype.String=function(){return this.$get().String();};JI=function(){var $ptr,p;Q();HV=R();p=S();HW=p[0];HX=p[1];};JW.ptr.prototype.Error=function(){var $ptr,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;if(p===RU.nil){$s=-1;return"<nil>";}q=p.Op;if(!(p.Net==="")){q=q+(" "+p.Net);}if(!($interfaceIsEqual(p.Source,$ifaceNil))){$s=1;continue;}$s=2;continue;case 1:r=p.Source.String();$s=3;case 3:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=q+(" "+r);case 2:if(!($interfaceIsEqual(p.Addr,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:if(!($interfaceIsEqual(p.Source,$ifaceNil))){q=q+("->");}else{q=q+(" ");}s=p.Addr.String();$s=6;case 6:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}q=q+(s);case 5:t=p.Err.Error();$s=7;case 7:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}q=q+(": "+t);$s=-1;return q;}return;}if($f===undefined){$f={$blk:JW.ptr.prototype.Error};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};JW.prototype.Error=function(){return this.$val.Error();};JW.ptr.prototype.Timeout=function(){var $ptr,aa,ab,ac,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;q=$assertType(p.Err,QR,true);r=q[0];s=q[1];if(s){$s=1;continue;}$s=2;continue;case 1:t=$assertType(r.Err,KA,true);u=t[0];v=t[1];if(!(v)){w=false;$s=3;continue s;}x=u.Timeout();$s=4;case 4:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}w=x;case 3:$s=-1;return w;case 2:y=$assertType(p.Err,KA,true);z=y[0];aa=y[1];if(!(aa)){ab=false;$s=5;continue s;}ac=z.Timeout();$s=6;case 6:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ab=ac;case 5:$s=-1;return ab;}return;}if($f===undefined){$f={$blk:JW.ptr.prototype.Timeout};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};JW.prototype.Timeout=function(){return this.$val.Timeout();};JW.ptr.prototype.Temporary=function(){var $ptr,aa,ab,ac,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;q=$assertType(p.Err,QR,true);r=q[0];s=q[1];if(s){$s=1;continue;}$s=2;continue;case 1:t=$assertType(r.Err,KB,true);u=t[0];v=t[1];if(!(v)){w=false;$s=3;continue s;}x=u.Temporary();$s=4;case 4:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}w=x;case 3:$s=-1;return w;case 2:y=$assertType(p.Err,KB,true);z=y[0];aa=y[1];if(!(aa)){ab=false;$s=5;continue s;}ac=z.Temporary();$s=6;case 6:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ab=ac;case 5:$s=-1;return ab;}return;}if($f===undefined){$f={$blk:JW.ptr.prototype.Temporary};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};JW.prototype.Temporary=function(){return this.$val.Temporary();};KD.ptr.prototype.Error=function(){var $ptr,p;p=this;return"invalid "+p.Type+": "+p.Text;};KD.prototype.Error=function(){return this.$val.Error();};KE.ptr.prototype.Error=function(){var $ptr,p,q;p=this;if(p===RV.nil){return"<nil>";}q=p.Err;if(!(p.Addr==="")){q="address "+p.Addr+": "+q;}return q;};KE.prototype.Error=function(){return this.$val.Error();};KE.ptr.prototype.Timeout=function(){var $ptr,p;p=this;return false;};KE.prototype.Timeout=function(){return this.$val.Timeout();};KE.ptr.prototype.Temporary=function(){var $ptr,p;p=this;return false;};KE.prototype.Temporary=function(){return this.$val.Temporary();};KY.ptr.prototype.close=function(){var $ptr,p;p=this;p.file.Close();};KY.prototype.close=function(){return this.$val.close();};KY.ptr.prototype.getLineFromData=function(){var $ptr,p,q,r,s,t,u;p="";q=false;r=this;s=r.data;t=0;t=0;while(true){if(!(t<s.$length)){break;}if(((t<0||t>=s.$length)?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+t])===10){p=$bytesToString($subslice(s,0,t));q=true;t=t+(1)>>0;u=s.$length-t>>0;$copySlice($subslice(s,0),$subslice(s,t));r.data=$subslice(s,0,u);return[p,q];}t=t+(1)>>0;}if(r.atEOF&&r.data.$length>0){p=$bytesToString(s);r.data=$subslice(r.data,0,0);q=true;}return[p,q];};KY.prototype.getLineFromData=function(){return this.$val.getLineFromData();};KY.ptr.prototype.readLine=function(){var $ptr,p,q,r,s,t,u,v,w,x,y,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p="";q=false;r=this;s=r.getLineFromData();p=s[0];q=s[1];if(q){$s=-1;return[p,q];}if(r.data.$length<r.data.$capacity){$s=1;continue;}$s=2;continue;case 1:t=r.data.$length;v=L.ReadFull(r.file,$subslice(r.data,t,r.data.$capacity));$s=3;case 3:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}u=v;w=u[0];x=u[1];if(w>=0){r.data=$subslice(r.data,0,(t+w>>0));}if($interfaceIsEqual(x,L.EOF)||$interfaceIsEqual(x,L.ErrUnexpectedEOF)){r.atEOF=true;}case 2:y=r.getLineFromData();p=y[0];q=y[1];$s=-1;return[p,q];}return;}if($f===undefined){$f={$blk:KY.ptr.prototype.readLine};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.$s=$s;$f.$r=$r;return $f;};KY.prototype.readLine=function(){return this.$val.readLine();};KZ=function(p){var $ptr,p,q,r,s;q=F.Open(p);r=q[0];s=q[1];if(!($interfaceIsEqual(s,$ifaceNil))){return[QX.nil,s];}return[new KY.ptr(r,$makeSlice(PE,0,F.Getpagesize()),false),$ifaceNil];};LB=function(p,q){var $ptr,p,q,r,s;r=0;s=0;while(true){if(!(s<p.length)){break;}if(O(q,p.charCodeAt(s))>=0){r=r+(1)>>0;}s=s+(1)>>0;}return r;};LC=function(p,q){var $ptr,p,q,r,s,t,u;r=$makeSlice(OY,(1+LB(p,q)>>0));s=0;t=0;u=0;while(true){if(!(u<p.length)){break;}if(O(q,p.charCodeAt(u))>=0){if(t<u){((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s]=$substring(p,t,u));s=s+(1)>>0;}t=u+1>>0;}u=u+(1)>>0;}if(t<p.length){((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s]=$substring(p,t));s=s+(1)>>0;}return $subslice(r,0,s);};LE=function(p){var $ptr,aa,ab,p,q,r,s,t,u,v,w,x,y,z;q=0;r=0;s=false;q=0;r=0;while(true){if(!(r<p.length&&48<=p.charCodeAt(r)&&p.charCodeAt(r)<=57)){break;}q=($imul(q,10))+((p.charCodeAt(r)-48<<24>>>24)>>0)>>0;if(q>=16777215){t=16777215;u=r;v=false;q=t;r=u;s=v;return[q,r,s];}r=r+(1)>>0;}if(r===0){w=0;x=0;y=false;q=w;r=x;s=y;return[q,r,s];}z=q;aa=r;ab=true;q=z;r=aa;s=ab;return[q,r,s];};LF=function(p){var $ptr,aa,ab,p,q,r,s,t,u,v,w,x,y,z;q=0;r=0;s=false;q=0;r=0;while(true){if(!(r<p.length)){break;}if(48<=p.charCodeAt(r)&&p.charCodeAt(r)<=57){q=$imul(q,(16));q=q+(((p.charCodeAt(r)-48<<24>>>24)>>0))>>0;}else if(97<=p.charCodeAt(r)&&p.charCodeAt(r)<=102){q=$imul(q,(16));q=q+((((p.charCodeAt(r)-97<<24>>>24)>>0)+10>>0))>>0;}else if(65<=p.charCodeAt(r)&&p.charCodeAt(r)<=70){q=$imul(q,(16));q=q+((((p.charCodeAt(r)-65<<24>>>24)>>0)+10>>0))>>0;}else{break;}if(q>=16777215){t=0;u=r;v=false;q=t;r=u;s=v;return[q,r,s];}r=r+(1)>>0;}if(r===0){w=0;x=r;y=false;q=w;r=x;s=y;return[q,r,s];}z=q;aa=r;ab=true;q=z;r=aa;s=ab;return[q,r,s];};LG=function(p,q){var $ptr,p,q,r,s,t,u;if(p.length>2&&!((p.charCodeAt(2)===q))){return[0,false];}r=LF($substring(p,0,2));s=r[0];t=r[1];u=r[2];return[(s<<24>>>24),u&&(t===2)];};LI=function(p){var $ptr,p,q,r,s,t;if(p===0){return"0";}q=RX.zero();r=19;while(true){if(!(p>=10)){break;}t=(s=p/10,(s===s&&s!==1/0&&s!==-1/0)?s>>>0:$throwRuntimeError("integer divide by zero"));((r<0||r>=q.length)?($throwRuntimeError("index out of range"),undefined):q[r]=(((48+p>>>0)-(t*10>>>0)>>>0)<<24>>>24));r=r-(1)>>0;p=t;}((r<0||r>=q.length)?($throwRuntimeError("index out of range"),undefined):q[r]=((48+p>>>0)<<24>>>24));return $bytesToString($subslice(new PE(q),r));};LJ=function(p,q){var $ptr,p,q,r,s,t;if(q===0){return $append(p,48);}r=7;while(true){if(!(r>=0)){break;}t=(s=(($imul(r,4))>>>0),s<32?(q>>>s):0)>>>0;if(t>0){p=$append(p,"0123456789abcdef".charCodeAt(((t&15)>>>0)));}r=r-(1)>>0;}return p;};LL=function(p,q){var $ptr,p,q,r;r=p.length;r=r-(1)>>0;while(true){if(!(r>=0)){break;}if(p.charCodeAt(r)===q){break;}r=r-(1)>>0;}return r;};AC.methods=[{prop:"Classify",name:"Classify",pkg:"",typ:$funcType([GQ],[AB],false)}];AF.methods=[{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Swap",name:"Swap",pkg:"",typ:$funcType([$Int,$Int],[],false)},{prop:"Less",name:"Less",pkg:"",typ:$funcType([$Int,$Int],[$Bool],false)}];PU.methods=[{prop:"Header",name:"Header",pkg:"",typ:$funcType([],[PU],false)},{prop:"Walk",name:"Walk",pkg:"",typ:$funcType([SK],[$Bool],false)}];PV.methods=[{prop:"Header",name:"Header",pkg:"",typ:$funcType([],[PU],false)},{prop:"Walk",name:"Walk",pkg:"",typ:$funcType([SK],[$Bool],false)}];RO.methods=[{prop:"Header",name:"Header",pkg:"",typ:$funcType([],[PU],false)},{prop:"Walk",name:"Walk",pkg:"",typ:$funcType([SK],[$Bool],false)}];RR.methods=[{prop:"Header",name:"Header",pkg:"",typ:$funcType([],[PU],false)},{prop:"Walk",name:"Walk",pkg:"",typ:$funcType([SK],[$Bool],false)}];QD.methods=[{prop:"Header",name:"Header",pkg:"",typ:$funcType([],[PU],false)},{prop:"Walk",name:"Walk",pkg:"",typ:$funcType([SK],[$Bool],false)}];SN.methods=[{prop:"Header",name:"Header",pkg:"",typ:$funcType([],[PU],false)},{prop:"Walk",name:"Walk",pkg:"",typ:$funcType([SK],[$Bool],false)}];RS.methods=[{prop:"Header",name:"Header",pkg:"",typ:$funcType([],[PU],false)},{prop:"Walk",name:"Walk",pkg:"",typ:$funcType([SK],[$Bool],false)}];RL.methods=[{prop:"Header",name:"Header",pkg:"",typ:$funcType([],[PU],false)},{prop:"Walk",name:"Walk",pkg:"",typ:$funcType([SK],[$Bool],false)}];QA.methods=[{prop:"Header",name:"Header",pkg:"",typ:$funcType([],[PU],false)},{prop:"Walk",name:"Walk",pkg:"",typ:$funcType([SK],[$Bool],false)}];QB.methods=[{prop:"Header",name:"Header",pkg:"",typ:$funcType([],[PU],false)},{prop:"Walk",name:"Walk",pkg:"",typ:$funcType([SK],[$Bool],false)}];QY.methods=[{prop:"Addrs",name:"Addrs",pkg:"",typ:$funcType([],[QZ,$error],false)},{prop:"MulticastAddrs",name:"MulticastAddrs",pkg:"",typ:$funcType([],[QZ,$error],false)}];FW.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];SS.methods=[{prop:"update",name:"update",pkg:"net",typ:$funcType([RA],[],false)}];GQ.methods=[{prop:"IsUnspecified",name:"IsUnspecified",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"IsLoopback",name:"IsLoopback",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"IsMulticast",name:"IsMulticast",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"IsInterfaceLocalMulticast",name:"IsInterfaceLocalMulticast",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"IsLinkLocalMulticast",name:"IsLinkLocalMulticast",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"IsLinkLocalUnicast",name:"IsLinkLocalUnicast",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"IsGlobalUnicast",name:"IsGlobalUnicast",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"To4",name:"To4",pkg:"",typ:$funcType([],[GQ],false)},{prop:"To16",name:"To16",pkg:"",typ:$funcType([],[GQ],false)},{prop:"DefaultMask",name:"DefaultMask",pkg:"",typ:$funcType([],[GR],false)},{prop:"Mask",name:"Mask",pkg:"",typ:$funcType([GR],[GQ],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"MarshalText",name:"MarshalText",pkg:"",typ:$funcType([],[PE,$error],false)},{prop:"Equal",name:"Equal",pkg:"",typ:$funcType([GQ],[$Bool],false)},{prop:"matchAddrFamily",name:"matchAddrFamily",pkg:"net",typ:$funcType([GQ],[$Bool],false)}];SV.methods=[{prop:"UnmarshalText",name:"UnmarshalText",pkg:"",typ:$funcType([PE],[$error],false)}];GR.methods=[{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int,$Int],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];PH.methods=[{prop:"Contains",name:"Contains",pkg:"",typ:$funcType([GQ],[$Bool],false)},{prop:"Network",name:"Network",pkg:"",typ:$funcType([],[$String],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];PO.methods=[{prop:"Network",name:"Network",pkg:"",typ:$funcType([],[$String],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"isWildcard",name:"isWildcard",pkg:"net",typ:$funcType([],[$Bool],false)},{prop:"opAddr",name:"opAddr",pkg:"net",typ:$funcType([],[JJ],false)},{prop:"family",name:"family",pkg:"net",typ:$funcType([],[$Int],false)},{prop:"sockaddr",name:"sockaddr",pkg:"net",typ:$funcType([$Int],[B.Sockaddr,$error],false)},{prop:"toLocal",name:"toLocal",pkg:"net",typ:$funcType([$String],[MK],false)}];JE.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];RU.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)},{prop:"Timeout",name:"Timeout",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Temporary",name:"Temporary",pkg:"",typ:$funcType([],[$Bool],false)}];SY.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];RV.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)},{prop:"Timeout",name:"Timeout",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Temporary",name:"Temporary",pkg:"",typ:$funcType([],[$Bool],false)}];QX.methods=[{prop:"close",name:"close",pkg:"net",typ:$funcType([],[],false)},{prop:"getLineFromData",name:"getLineFromData",pkg:"net",typ:$funcType([],[$String,$Bool],false)},{prop:"readLine",name:"readLine",pkg:"net",typ:$funcType([],[$String,$Bool],false)}];AB.init("",[{prop:"Prefix",name:"Prefix",exported:true,typ:PH,tag:""},{prop:"Precedence",name:"Precedence",exported:true,typ:$Uint8,tag:""},{prop:"Label",name:"Label",exported:true,typ:$Uint8,tag:""}]);AC.init(AB);AF.init(AB);CZ.init("",[{prop:"Name",name:"Name",exported:true,typ:$String,tag:""},{prop:"Rrtype",name:"Rrtype",exported:true,typ:$Uint16,tag:""},{prop:"Class",name:"Class",exported:true,typ:$Uint16,tag:""},{prop:"Ttl",name:"Ttl",exported:true,typ:$Uint32,tag:""},{prop:"Rdlength",name:"Rdlength",exported:true,typ:$Uint16,tag:""}]);DB.init("",[{prop:"Hdr",name:"Hdr",exported:true,typ:CZ,tag:""},{prop:"Cname",name:"Cname",exported:true,typ:$String,tag:""}]);DC.init("",[{prop:"Hdr",name:"Hdr",exported:true,typ:CZ,tag:""},{prop:"Pref",name:"Pref",exported:true,typ:$Uint16,tag:""},{prop:"Mx",name:"Mx",exported:true,typ:$String,tag:""}]);DD.init("",[{prop:"Hdr",name:"Hdr",exported:true,typ:CZ,tag:""},{prop:"Ns",name:"Ns",exported:true,typ:$String,tag:""}]);DE.init("",[{prop:"Hdr",name:"Hdr",exported:true,typ:CZ,tag:""},{prop:"Ptr",name:"Ptr",exported:true,typ:$String,tag:""}]);DF.init("",[{prop:"Hdr",name:"Hdr",exported:true,typ:CZ,tag:""},{prop:"Ns",name:"Ns",exported:true,typ:$String,tag:""},{prop:"Mbox",name:"Mbox",exported:true,typ:$String,tag:""},{prop:"Serial",name:"Serial",exported:true,typ:$Uint32,tag:""},{prop:"Refresh",name:"Refresh",exported:true,typ:$Uint32,tag:""},{prop:"Retry",name:"Retry",exported:true,typ:$Uint32,tag:""},{prop:"Expire",name:"Expire",exported:true,typ:$Uint32,tag:""},{prop:"Minttl",name:"Minttl",exported:true,typ:$Uint32,tag:""}]);DG.init("",[{prop:"Hdr",name:"Hdr",exported:true,typ:CZ,tag:""},{prop:"Txt",name:"Txt",exported:true,typ:$String,tag:""}]);DH.init("",[{prop:"Hdr",name:"Hdr",exported:true,typ:CZ,tag:""},{prop:"Priority",name:"Priority",exported:true,typ:$Uint16,tag:""},{prop:"Weight",name:"Weight",exported:true,typ:$Uint16,tag:""},{prop:"Port",name:"Port",exported:true,typ:$Uint16,tag:""},{prop:"Target",name:"Target",exported:true,typ:$String,tag:""}]);DI.init("",[{prop:"Hdr",name:"Hdr",exported:true,typ:CZ,tag:""},{prop:"A",name:"A",exported:true,typ:$Uint32,tag:""}]);DJ.init("",[{prop:"Hdr",name:"Hdr",exported:true,typ:CZ,tag:""},{prop:"AAAA",name:"AAAA",exported:true,typ:PD,tag:""}]);FV.init("",[{prop:"Index",name:"Index",exported:true,typ:$Int,tag:""},{prop:"MTU",name:"MTU",exported:true,typ:$Int,tag:""},{prop:"Name",name:"Name",exported:true,typ:$String,tag:""},{prop:"HardwareAddr",name:"HardwareAddr",exported:true,typ:JE,tag:""},{prop:"Flags",name:"Flags",exported:true,typ:FW,tag:""}]);GD.init("net",[{prop:"RWMutex",name:"",exported:true,typ:H.RWMutex,tag:""},{prop:"lastFetched",name:"lastFetched",exported:false,typ:J.Time,tag:""},{prop:"toIndex",name:"toIndex",exported:false,typ:ST,tag:""},{prop:"toName",name:"toName",exported:false,typ:SU,tag:""}]);GQ.init($Uint8);GR.init($Uint8);GS.init("",[{prop:"IP",name:"IP",exported:true,typ:GQ,tag:""},{prop:"Mask",name:"Mask",exported:true,typ:GR,tag:""}]);HL.init("",[{prop:"IP",name:"IP",exported:true,typ:GQ,tag:""},{prop:"Zone",name:"Zone",exported:true,typ:$String,tag:""}]);JE.init($Uint8);JJ.init([{prop:"Network",name:"Network",pkg:"",typ:$funcType([],[$String],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}]);JW.init("",[{prop:"Op",name:"Op",exported:true,typ:$String,tag:""},{prop:"Net",name:"Net",exported:true,typ:$String,tag:""},{prop:"Source",name:"Source",exported:true,typ:JJ,tag:""},{prop:"Addr",name:"Addr",exported:true,typ:JJ,tag:""},{prop:"Err",name:"Err",exported:true,typ:$error,tag:""}]);KA.init([{prop:"Timeout",name:"Timeout",pkg:"",typ:$funcType([],[$Bool],false)}]);KB.init([{prop:"Temporary",name:"Temporary",pkg:"",typ:$funcType([],[$Bool],false)}]);KD.init("",[{prop:"Type",name:"Type",exported:true,typ:$String,tag:""},{prop:"Text",name:"Text",exported:true,typ:$String,tag:""}]);KE.init("",[{prop:"Err",name:"Err",exported:true,typ:$String,tag:""},{prop:"Addr",name:"Addr",exported:true,typ:$String,tag:""}]);KY.init("net",[{prop:"file",name:"file",exported:false,typ:QT,tag:""},{prop:"data",name:"data",exported:false,typ:PE,tag:""},{prop:"atEOF",name:"atEOF",exported:false,typ:$Bool,tag:""}]);MK.init([{prop:"Network",name:"Network",pkg:"",typ:$funcType([],[$String],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"family",name:"family",pkg:"net",typ:$funcType([],[$Int],false)},{prop:"isWildcard",name:"isWildcard",pkg:"net",typ:$funcType([],[$Bool],false)},{prop:"sockaddr",name:"sockaddr",pkg:"net",typ:$funcType([$Int],[B.Sockaddr,$error],false)},{prop:"toLocal",name:"toLocal",pkg:"net",typ:$funcType([$String],[MK],false)}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=E.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=N.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=L.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=K.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=M.$init();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$init();$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}HV=false;HW=false;HX=false;JG=false;DK=$makeMap($Int.keyFor,[{k:5,v:(function(){var $ptr;return new DB.ptr(new CZ.ptr("",0,0,0,0),"");})},{k:15,v:(function(){var $ptr;return new DC.ptr(new CZ.ptr("",0,0,0,0),0,"");})},{k:2,v:(function(){var $ptr;return new DD.ptr(new CZ.ptr("",0,0,0,0),"");})},{k:12,v:(function(){var $ptr;return new DE.ptr(new CZ.ptr("",0,0,0,0),"");})},{k:6,v:(function(){var $ptr;return new DF.ptr(new CZ.ptr("",0,0,0,0),"","",0,0,0,0,0);})},{k:16,v:(function(){var $ptr;return new DG.ptr(new CZ.ptr("",0,0,0,0),"");})},{k:33,v:(function(){var $ptr;return new DH.ptr(new CZ.ptr("",0,0,0,0),0,0,0,"");})},{k:1,v:(function(){var $ptr;return new DI.ptr(new CZ.ptr("",0,0,0,0),0);})},{k:28,v:(function(){var $ptr;return new DJ.ptr(new CZ.ptr("",0,0,0,0),PD.zero());})}]);FA=(function $b(g,h,i){var $ptr,g,h,i,j,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;g=$f.g;h=$f.h;i=$f.i;j=$f.j;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:j=h(g,i);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=-1;return j;}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;});FQ=A.New("invalid network interface");FR=A.New("invalid network interface index");FS=A.New("invalid network interface name");FT=A.New("no such network interface");FU=A.New("no such multicast network interface");FX=new OY(["up","broadcast","loopback","pointtopoint","multicast"]);GE=new GD.ptr(new H.RWMutex.ptr(new H.Mutex.ptr(0,0),0,0,0,0),new J.Time.ptr(new $Int64(0,0),0,OV.nil),{},{});GU=new PE([0,0,0,0,0,0,0,0,0,0,255,255]);$pkg.IPv4bcast=GT(255,255,255,255);$pkg.IPv4allsys=GT(224,0,0,1);$pkg.IPv4allrouter=GT(224,0,0,2);$pkg.IPv4zero=GT(0,0,0,0);$pkg.IPv6unspecified=new GQ([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]);$pkg.IPv6loopback=new GQ([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1]);GY=GV(255,0,0,0);GZ=GV(255,255,0,0);HA=GV(255,255,255,0);JN=U();JQ=A.New("no suitable address found");JR=A.New("missing address");JT=A.New("operation was canceled");JU=A.New("use of closed network connection");$pkg.ErrWriteToConnected=A.New("use of WriteTo with pre-connected connection");JX=$clone(J.Unix(new $Int64(0,233431200),new $Int64(0,0)),J.Time);KI=A.New("no such host");KM=new $Chan(PF,500);g=AG("::1/128");$s=15;case 15:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=AG("::/0");$s=16;case 16:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=AG("::ffff:0:0/96");$s=17;case 17:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=AG("2002::/16");$s=18;case 18:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=AG("2001::/32");$s=19;case 19:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=AG("fc00::/7");$s=20;case 20:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=AG("::/96");$s=21;case 21:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=AG("fec0::/10");$s=22;case 22:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=AG("3ffe::/16");$s=23;case 23:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}AD=new AC([new AB.ptr(g,50,0),new AB.ptr(h,40,1),new AB.ptr(i,35,4),new AB.ptr(j,30,2),new AB.ptr(k,5,5),new AB.ptr(l,3,13),new AB.ptr(m,1,3),new AB.ptr(n,1,11),new AB.ptr(o,1,12)]);$r=AE();$s=24;case 24:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}AK();JI();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["github.com/satori/go.uuid"]=(function(){var $pkg={},$init,A,B,C,D,E,F,G,H,I,J,K,L,M,AC,AT,AU,AV,AW,AX,T,U,V,W,a,b,c,d,e,f,g,h,AG,AJ,AQ,AR;A=$packages["bytes"];B=$packages["crypto/md5"];C=$packages["crypto/rand"];D=$packages["crypto/sha1"];E=$packages["database/sql/driver"];F=$packages["encoding/binary"];G=$packages["encoding/hex"];H=$packages["fmt"];I=$packages["hash"];J=$packages["net"];K=$packages["os"];L=$packages["sync"];M=$packages["time"];AC=$pkg.UUID=$newType(16,$kindArray,"uuid.UUID",true,"github.com/satori/go.uuid",true,null);AT=$sliceType($Uint8);AU=$sliceType($Int);AV=$arrayType($Uint8,16);AW=$sliceType($emptyInterface);AX=$ptrType(AC);AG=function(i,j){var $ptr,i,j;return A.Equal(new AT(i),new AT(j));};$pkg.Equal=AG;AC.prototype.Version=function(){var $ptr,i;i=this.$val;return((i[6]>>>4<<24>>>24)>>>0);};$ptrType(AC).prototype.Version=function(){return new AC(this.$get()).Version();};AC.prototype.Variant=function(){var $ptr,i;i=this.$val;if(((((i[8]&128)>>>0))===0)){return 0;}else if(((((((i[8]&192)>>>0))|128)>>>0)===128)){return 1;}else if(((((((i[8]&224)>>>0))|192)>>>0)===192)){return 2;}return 3;};$ptrType(AC).prototype.Variant=function(){return new AC(this.$get()).Variant();};AC.prototype.Bytes=function(){var $ptr,i;i=this.$val;return new AT(i);};$ptrType(AC).prototype.Bytes=function(){return new AC(this.$get()).Bytes();};AC.prototype.String=function(){var $ptr,i,j;i=this.$val;j=$makeSlice(AT,36);G.Encode($subslice(j,0,8),$subslice(new AT(i),0,4));(8>=j.$length?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+8]=45);G.Encode($subslice(j,9,13),$subslice(new AT(i),4,6));(13>=j.$length?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+13]=45);G.Encode($subslice(j,14,18),$subslice(new AT(i),6,8));(18>=j.$length?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+18]=45);G.Encode($subslice(j,19,23),$subslice(new AT(i),8,10));(23>=j.$length?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+23]=45);G.Encode($subslice(j,24),$subslice(new AT(i),10));return $bytesToString(j);};$ptrType(AC).prototype.String=function(){return new AC(this.$get()).String();};AC.prototype.SetVersion=function(i){var $ptr,i,j;j=this.$val;j.nilCheck,j[6]=((((((j.nilCheck,j[6])&15)>>>0))|((i<<4<<24>>>24)))>>>0);};$ptrType(AC).prototype.SetVersion=function(i){return(new AC(this.$get())).SetVersion(i);};AC.prototype.SetVariant=function(){var $ptr,i;i=this.$val;i.nilCheck,i[8]=((((((i.nilCheck,i[8])&191)>>>0))|128)>>>0);};$ptrType(AC).prototype.SetVariant=function(){return(new AC(this.$get())).SetVariant();};AC.prototype.MarshalText=function(){var $ptr,i,j,k;i=AT.nil;j=$ifaceNil;k=this.$val;i=new AT($stringToBytes(new AC($clone(k,AC)).String()));return[i,j];};$ptrType(AC).prototype.MarshalText=function(){return new AC(this.$get()).MarshalText();};AC.prototype.UnmarshalText=function(i){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:j=$ifaceNil;k=this.$val;if(i.$length<32){$s=1;continue;}$s=2;continue;case 1:l=H.Errorf("uuid: UUID string too short: %s",new AW([i]));$s=3;case 3:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}j=l;$s=-1;return j;case 2:m=i;n=false;if(A.Equal($subslice(m,0,9),V)){m=$subslice(m,9);}else if((0>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+0])===123){n=true;m=$subslice(m,1);}o=new AT(k);p=W;q=0;case 4:if(!(q<p.$length)){$s=5;continue;}r=q;s=((q<0||q>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+q]);if(r>0){$s=6;continue;}$s=7;continue;case 6:if(!(((0>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+0])===45))){$s=8;continue;}$s=9;continue;case 8:t=H.Errorf("uuid: invalid string format",new AW([]));$s=10;case 10:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}j=t;$s=-1;return j;case 9:m=$subslice(m,1);case 7:if(m.$length<s){$s=11;continue;}$s=12;continue;case 11:u=H.Errorf("uuid: UUID string too short: %s",new AW([i]));$s=13;case 13:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}j=u;$s=-1;return j;case 12:if((r===4)&&m.$length>s&&((n&&!((((s<0||s>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+s])===125)))||$subslice(m,s).$length>1||!n)){$s=14;continue;}$s=15;continue;case 14:v=H.Errorf("uuid: UUID string too long: %s",new AW([i]));$s=16;case 16:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}j=v;$s=-1;return j;case 15:w=G.Decode($subslice(o,0,(x=s/2,(x===x&&x!==1/0&&x!==-1/0)?x>>0:$throwRuntimeError("integer divide by zero"))),$subslice(m,0,s));j=w[1];if(!($interfaceIsEqual(j,$ifaceNil))){$s=-1;return j;}m=$subslice(m,s);o=$subslice(o,(y=s/2,(y===y&&y!==1/0&&y!==-1/0)?y>>0:$throwRuntimeError("integer divide by zero")));q++;$s=4;continue;case 5:$s=-1;return j;}return;}if($f===undefined){$f={$blk:AC.prototype.UnmarshalText};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(AC).prototype.UnmarshalText=function(i){return(new AC(this.$get())).UnmarshalText(i);};AC.prototype.MarshalBinary=function(){var $ptr,i,j,k;i=AT.nil;j=$ifaceNil;k=this.$val;i=new AC($clone(k,AC)).Bytes();return[i,j];};$ptrType(AC).prototype.MarshalBinary=function(){return new AC(this.$get()).MarshalBinary();};AC.prototype.UnmarshalBinary=function(i){var $ptr,i,j,k,l,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:j=$ifaceNil;k=this.$val;if(!((i.$length===16))){$s=1;continue;}$s=2;continue;case 1:l=H.Errorf("uuid: UUID must be exactly 16 bytes long, got %d bytes",new AW([new $Int(i.$length)]));$s=3;case 3:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}j=l;$s=-1;return j;case 2:$copySlice(new AT(k),i);$s=-1;return j;}return;}if($f===undefined){$f={$blk:AC.prototype.UnmarshalBinary};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(AC).prototype.UnmarshalBinary=function(i){return(new AC(this.$get())).UnmarshalBinary(i);};AC.prototype.Value=function(){var $ptr,i;i=this.$val;return[new $String(new AC($clone(i,AC)).String()),$ifaceNil];};$ptrType(AC).prototype.Value=function(){return new AC(this.$get()).Value();};AC.prototype.Scan=function(i){var $ptr,i,j,k,l,m,n,o,p,q,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:j=this.$val;k=i;if($assertType(k,AT,true)[1]){$s=1;continue;}if($assertType(k,$String,true)[1]){$s=2;continue;}$s=3;continue;case 1:l=k.$val;if(l.$length===16){$s=4;continue;}$s=5;continue;case 4:n=new AX(j).UnmarshalBinary(l);$s=6;case 6:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$s=-1;return n;case 5:o=new AX(j).UnmarshalText(l);$s=7;case 7:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$s=-1;return o;case 2:m=k.$val;p=new AX(j).UnmarshalText(new AT($stringToBytes(m)));$s=8;case 8:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}$s=-1;return p;case 3:q=H.Errorf("uuid: cannot convert %T to UUID",new AW([i]));$s=9;case 9:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}$s=-1;return q;}return;}if($f===undefined){$f={$blk:AC.prototype.Scan};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(AC).prototype.Scan=function(i){return(new AC(this.$get())).Scan(i);};AJ=function(i){var $ptr,i,j,k,l,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:j=AV.zero();k=$ifaceNil;l=new AX(j).UnmarshalText(new AT($stringToBytes(i)));$s=1;case 1:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}k=l;$s=-1;return[j,k];}return;}if($f===undefined){$f={$blk:AJ};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};$pkg.FromString=AJ;AQ=function(i,j){var $ptr,i,j,k,l,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:k=AR(D.New(),$clone(i,AC),j);$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=$clone(k,AC);new AX(l).SetVersion(5);new AX(l).SetVariant();$s=-1;return l;}return;}if($f===undefined){$f={$blk:AQ};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};$pkg.NewV5=AQ;AR=function(i,j,k){var $ptr,i,j,k,l,m,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:l=AV.zero();m=i.Write(new AT(j));$s=1;case 1:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}m;n=i.Write(new AT($stringToBytes(k)));$s=2;case 2:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}n;o=i.Sum(AT.nil);$s=3;case 3:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$copySlice(new AT(l),o);$s=-1;return l;}return;}if($f===undefined){$f={$blk:AR};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};AC.methods=[{prop:"Version",name:"Version",pkg:"",typ:$funcType([],[$Uint],false)},{prop:"Variant",name:"Variant",pkg:"",typ:$funcType([],[$Uint],false)},{prop:"Bytes",name:"Bytes",pkg:"",typ:$funcType([],[AT],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"MarshalText",name:"MarshalText",pkg:"",typ:$funcType([],[AT,$error],false)},{prop:"MarshalBinary",name:"MarshalBinary",pkg:"",typ:$funcType([],[AT,$error],false)},{prop:"Value",name:"Value",pkg:"",typ:$funcType([],[E.Value,$error],false)}];AX.methods=[{prop:"SetVersion",name:"SetVersion",pkg:"",typ:$funcType([$Uint8],[],false)},{prop:"SetVariant",name:"SetVariant",pkg:"",typ:$funcType([],[],false)},{prop:"UnmarshalText",name:"UnmarshalText",pkg:"",typ:$funcType([AT],[$error],false)},{prop:"UnmarshalBinary",name:"UnmarshalBinary",pkg:"",typ:$funcType([AT],[$error],false)},{prop:"Scan",name:"Scan",pkg:"",typ:$funcType([$emptyInterface],[$error],false)}];AC.init($Uint8,16);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=K.$init();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=L.$init();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=M.$init();$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}T=(K.Getuid()>>>0);U=(K.Getgid()>>>0);V=new AT($stringToBytes("urn:uuid:"));W=new AU([8,4,4,4,12]);$pkg.Nil=AV.zero();b=AJ("6ba7b810-9dad-11d1-80b4-00c04fd430c8");$s=14;case 14:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}a=b;$pkg.NamespaceDNS=$clone(a[0],AC);d=AJ("6ba7b811-9dad-11d1-80b4-00c04fd430c8");$s=15;case 15:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;$pkg.NamespaceURL=$clone(c[0],AC);f=AJ("6ba7b812-9dad-11d1-80b4-00c04fd430c8");$s=16;case 16:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;$pkg.NamespaceOID=$clone(e[0],AC);h=AJ("6ba7b814-9dad-11d1-80b4-00c04fd430c8");$s=17;case 17:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;$pkg.NamespaceX500=$clone(g[0],AC);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["crypto/sha256"]=(function(){var $pkg={},$init,A,B,D,L,M,N,O,P,R,S,I,K,C,E,F,J;A=$packages["crypto"];B=$packages["hash"];D=$pkg.digest=$newType(0,$kindStruct,"sha256.digest",true,"crypto/sha256",false,function(h_,x_,nx_,len_,is224_){this.$val=this;if(arguments.length===0){this.h=M.zero();this.x=N.zero();this.nx=0;this.len=new $Uint64(0,0);this.is224=false;return;}this.h=h_;this.x=x_;this.nx=nx_;this.len=len_;this.is224=is224_;});L=$sliceType($Uint32);M=$arrayType($Uint32,8);N=$arrayType($Uint8,64);O=$sliceType($Uint8);P=$arrayType($Uint8,32);R=$arrayType($Uint32,64);S=$ptrType(D);C=function(){var $ptr;A.RegisterHash(4,F);A.RegisterHash(5,E);};D.ptr.prototype.Reset=function(){var $ptr,a;a=this;if(!a.is224){a.h[0]=1779033703;a.h[1]=3144134277;a.h[2]=1013904242;a.h[3]=2773480762;a.h[4]=1359893119;a.h[5]=2600822924;a.h[6]=528734635;a.h[7]=1541459225;}else{a.h[0]=3238371032;a.h[1]=914150663;a.h[2]=812702999;a.h[3]=4144912697;a.h[4]=4290775857;a.h[5]=1750603025;a.h[6]=1694076839;a.h[7]=3204075428;}a.nx=0;a.len=new $Uint64(0,0);};D.prototype.Reset=function(){return this.$val.Reset();};E=function(){var $ptr,a;a=new D.ptr(M.zero(),N.zero(),0,new $Uint64(0,0),false);a.Reset();return a;};$pkg.New=E;F=function(){var $ptr,a;a=new D.ptr(M.zero(),N.zero(),0,new $Uint64(0,0),false);a.is224=true;a.Reset();return a;};$pkg.New224=F;D.ptr.prototype.Size=function(){var $ptr,a;a=this;if(!a.is224){return 32;}return 28;};D.prototype.Size=function(){return this.$val.Size();};D.ptr.prototype.BlockSize=function(){var $ptr,a;a=this;return 64;};D.prototype.BlockSize=function(){return this.$val.BlockSize();};D.ptr.prototype.Write=function(a){var $ptr,a,b,c,d,e,f,g,h,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=0;c=$ifaceNil;d=this;b=a.$length;d.len=(e=d.len,f=new $Uint64(0,b),new $Uint64(e.$high+f.$high,e.$low+f.$low));if(d.nx>0){$s=1;continue;}$s=2;continue;case 1:g=$copySlice($subslice(new O(d.x),d.nx),a);d.nx=d.nx+(g)>>0;if(d.nx===64){$s=3;continue;}$s=4;continue;case 3:$r=K(d,new O(d.x));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d.nx=0;case 4:a=$subslice(a,g);case 2:if(a.$length>=64){$s=6;continue;}$s=7;continue;case 6:h=(a.$length&~63)>>0;$r=K(d,$subslice(a,0,h));$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}a=$subslice(a,h);case 7:if(a.$length>0){d.nx=$copySlice(new O(d.x),a);}$s=-1;return[b,c];}return;}if($f===undefined){$f={$blk:D.ptr.prototype.Write};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};D.prototype.Write=function(a){return this.$val.Write(a);};D.ptr.prototype.Sum=function(a){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=$clone(b,D);d=c.checkSum();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=$clone(d,P);if(c.is224){$s=-1;return $appendSlice(a,$subslice(new O(e),0,28));}$s=-1;return $appendSlice(a,new O(e));}return;}if($f===undefined){$f={$blk:D.ptr.prototype.Sum};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};D.prototype.Sum=function(a){return this.$val.Sum(a);};D.ptr.prototype.checkSum=function(){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.len;c=N.zero();c[0]=128;if((d=$div64(b,new $Uint64(0,64),true),(d.$high<0||(d.$high===0&&d.$low<56)))){$s=1;continue;}$s=2;continue;case 1:f=a.Write($subslice(new O(c),0,$flatten64((e=$div64(b,new $Uint64(0,64),true),new $Uint64(0-e.$high,56-e.$low)))));$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;$s=3;continue;case 2:h=a.Write($subslice(new O(c),0,$flatten64((g=$div64(b,new $Uint64(0,64),true),new $Uint64(0-g.$high,120-g.$low)))));$s=5;case 5:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}h;case 3:b=$shiftLeft64(b,(3));i=0;while(true){if(!(i<8)){break;}((i<0||i>=c.length)?($throwRuntimeError("index out of range"),undefined):c[i]=($shiftRightUint64(b,((56-(8*i>>>0)>>>0))).$low<<24>>>24));i=i+(1)>>>0;}j=a.Write($subslice(new O(c),0,8));$s=6;case 6:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;if(!((a.nx===0))){$panic(new $String("d.nx != 0"));}k=new L(a.h);if(a.is224){k=$subslice(new L(a.h),0,7);}l=P.zero();m=k;n=0;while(true){if(!(n<m.$length)){break;}o=n;p=((n<0||n>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+n]);(q=$imul(o,4),((q<0||q>=l.length)?($throwRuntimeError("index out of range"),undefined):l[q]=((p>>>24>>>0)<<24>>>24)));(r=($imul(o,4))+1>>0,((r<0||r>=l.length)?($throwRuntimeError("index out of range"),undefined):l[r]=((p>>>16>>>0)<<24>>>24)));(s=($imul(o,4))+2>>0,((s<0||s>=l.length)?($throwRuntimeError("index out of range"),undefined):l[s]=((p>>>8>>>0)<<24>>>24)));(t=($imul(o,4))+3>>0,((t<0||t>=l.length)?($throwRuntimeError("index out of range"),undefined):l[t]=(p<<24>>>24)));n++;}$s=-1;return l;}return;}if($f===undefined){$f={$blk:D.ptr.prototype.checkSum};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};D.prototype.checkSum=function(){return this.$val.checkSum();};J=function(a,b){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,bd,be,bf,bg,bh,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;c=R.zero();d=a.h[0];e=a.h[1];f=a.h[2];g=a.h[3];h=a.h[4];i=a.h[5];j=a.h[6];k=a.h[7];l=d;m=e;n=f;o=g;p=h;q=i;r=j;s=k;while(true){if(!(b.$length>=64)){break;}t=0;while(true){if(!(t<16)){break;}u=$imul(t,4);((t<0||t>=c.length)?($throwRuntimeError("index out of range"),undefined):c[t]=((((((((((u<0||u>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+u])>>>0)<<24>>>0)|(((v=u+1>>0,((v<0||v>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+v]))>>>0)<<16>>>0))>>>0)|(((w=u+2>>0,((w<0||w>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+w]))>>>0)<<8>>>0))>>>0)|((x=u+3>>0,((x<0||x>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+x]))>>>0))>>>0));t=t+(1)>>0;}y=16;while(true){if(!(y<64)){break;}aa=(z=y-2>>0,((z<0||z>=c.length)?($throwRuntimeError("index out of range"),undefined):c[z]));ab=(((((((aa>>>17>>>0)|(aa<<15>>>0))>>>0))^((((aa>>>19>>>0)|(aa<<13>>>0))>>>0)))>>>0)^((aa>>>10>>>0)))>>>0;ad=(ac=y-15>>0,((ac<0||ac>=c.length)?($throwRuntimeError("index out of range"),undefined):c[ac]));ae=(((((((ad>>>7>>>0)|(ad<<25>>>0))>>>0))^((((ad>>>18>>>0)|(ad<<14>>>0))>>>0)))>>>0)^((ad>>>3>>>0)))>>>0;((y<0||y>=c.length)?($throwRuntimeError("index out of range"),undefined):c[y]=(((ab+(af=y-7>>0,((af<0||af>=c.length)?($throwRuntimeError("index out of range"),undefined):c[af]))>>>0)+ae>>>0)+(ag=y-16>>0,((ag<0||ag>=c.length)?($throwRuntimeError("index out of range"),undefined):c[ag]))>>>0));y=y+(1)>>0;}ah=l;ai=m;aj=n;ak=o;al=p;am=q;an=r;ao=s;ap=ah;aq=ai;ar=aj;as=ak;at=al;au=am;av=an;aw=ao;ax=0;while(true){if(!(ax<64)){break;}ay=(((aw+(((((((((at>>>6>>>0)|(at<<26>>>0))>>>0))^((((at>>>11>>>0)|(at<<21>>>0))>>>0)))>>>0)^((((at>>>25>>>0)|(at<<7>>>0))>>>0)))>>>0))>>>0)+((((((at&au)>>>0))^((((~at>>>0)&av)>>>0)))>>>0))>>>0)+((ax<0||ax>=I.$length)?($throwRuntimeError("index out of range"),undefined):I.$array[I.$offset+ax])>>>0)+((ax<0||ax>=c.length)?($throwRuntimeError("index out of range"),undefined):c[ax])>>>0;az=(((((((((ap>>>2>>>0)|(ap<<30>>>0))>>>0))^((((ap>>>13>>>0)|(ap<<19>>>0))>>>0)))>>>0)^((((ap>>>22>>>0)|(ap<<10>>>0))>>>0)))>>>0))+((((((((ap&aq)>>>0))^(((ap&ar)>>>0)))>>>0)^(((aq&ar)>>>0)))>>>0))>>>0;aw=av;av=au;au=at;at=as+ay>>>0;as=ar;ar=aq;aq=ap;ap=ay+az>>>0;ax=ax+(1)>>0;}l=l+(ap)>>>0;m=m+(aq)>>>0;n=n+(ar)>>>0;o=o+(as)>>>0;p=p+(at)>>>0;q=q+(au)>>>0;r=r+(av)>>>0;s=s+(aw)>>>0;b=$subslice(b,64);}ba=l;bb=m;bc=n;bd=o;be=p;bf=q;bg=r;bh=s;a.h[0]=ba;a.h[1]=bb;a.h[2]=bc;a.h[3]=bd;a.h[4]=be;a.h[5]=bf;a.h[6]=bg;a.h[7]=bh;};S.methods=[{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([],[],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int],false)},{prop:"BlockSize",name:"BlockSize",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([O],[$Int,$error],false)},{prop:"Sum",name:"Sum",pkg:"",typ:$funcType([O],[O],false)},{prop:"checkSum",name:"checkSum",pkg:"crypto/sha256",typ:$funcType([],[P],false)}];D.init("crypto/sha256",[{prop:"h",name:"h",exported:false,typ:M,tag:""},{prop:"x",name:"x",exported:false,typ:N,tag:""},{prop:"nx",name:"nx",exported:false,typ:$Int,tag:""},{prop:"len",name:"len",exported:false,typ:$Uint64,tag:""},{prop:"is224",name:"is224",exported:false,typ:$Bool,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}I=new L([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]);K=J;C();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["crypto/sha512"]=(function(){var $pkg={},$init,A,B,D,P,Q,R,S,T,X,Y,M,O,C,E,F,G,H,I,N;A=$packages["crypto"];B=$packages["hash"];D=$pkg.digest=$newType(0,$kindStruct,"sha512.digest",true,"crypto/sha512",false,function(h_,x_,nx_,len_,function$4_){this.$val=this;if(arguments.length===0){this.h=Q.zero();this.x=R.zero();this.nx=0;this.len=new $Uint64(0,0);this.function$4=0;return;}this.h=h_;this.x=x_;this.nx=nx_;this.len=len_;this.function$4=function$4_;});P=$sliceType($Uint64);Q=$arrayType($Uint64,8);R=$arrayType($Uint8,128);S=$sliceType($Uint8);T=$arrayType($Uint8,64);X=$arrayType($Uint64,80);Y=$ptrType(D);C=function(){var $ptr;A.RegisterHash(6,H);A.RegisterHash(7,E);A.RegisterHash(14,F);A.RegisterHash(15,G);};D.ptr.prototype.Reset=function(){var $ptr,a,b;a=this;b=a.function$4;if(b===(6)){a.h[0]=new $Uint64(3418070365,3238371032);a.h[1]=new $Uint64(1654270250,914150663);a.h[2]=new $Uint64(2438529370,812702999);a.h[3]=new $Uint64(355462360,4144912697);a.h[4]=new $Uint64(1731405415,4290775857);a.h[5]=new $Uint64(2394180231,1750603025);a.h[6]=new $Uint64(3675008525,1694076839);a.h[7]=new $Uint64(1203062813,3204075428);}else if(b===(14)){a.h[0]=new $Uint64(2352822216,424955298);a.h[1]=new $Uint64(1944164710,2312950998);a.h[2]=new $Uint64(502970286,855612546);a.h[3]=new $Uint64(1738396948,1479516111);a.h[4]=new $Uint64(258812777,2077511080);a.h[5]=new $Uint64(2011393907,79989058);a.h[6]=new $Uint64(1067287976,1780299464);a.h[7]=new $Uint64(286451373,2446758561);}else if(b===(15)){a.h[0]=new $Uint64(573645204,4230739756);a.h[1]=new $Uint64(2673172387,3360449730);a.h[2]=new $Uint64(596883563,1867755857);a.h[3]=new $Uint64(2520282905,1497426621);a.h[4]=new $Uint64(2519219938,2827943907);a.h[5]=new $Uint64(3193839141,1401305490);a.h[6]=new $Uint64(721525244,746961066);a.h[7]=new $Uint64(246885852,2177182882);}else{a.h[0]=new $Uint64(1779033703,4089235720);a.h[1]=new $Uint64(3144134277,2227873595);a.h[2]=new $Uint64(1013904242,4271175723);a.h[3]=new $Uint64(2773480762,1595750129);a.h[4]=new $Uint64(1359893119,2917565137);a.h[5]=new $Uint64(2600822924,725511199);a.h[6]=new $Uint64(528734635,4215389547);a.h[7]=new $Uint64(1541459225,327033209);}a.nx=0;a.len=new $Uint64(0,0);};D.prototype.Reset=function(){return this.$val.Reset();};E=function(){var $ptr,a;a=new D.ptr(Q.zero(),R.zero(),0,new $Uint64(0,0),7);a.Reset();return a;};$pkg.New=E;F=function(){var $ptr,a;a=new D.ptr(Q.zero(),R.zero(),0,new $Uint64(0,0),14);a.Reset();return a;};$pkg.New512_224=F;G=function(){var $ptr,a;a=new D.ptr(Q.zero(),R.zero(),0,new $Uint64(0,0),15);a.Reset();return a;};$pkg.New512_256=G;H=function(){var $ptr,a;a=new D.ptr(Q.zero(),R.zero(),0,new $Uint64(0,0),6);a.Reset();return a;};$pkg.New384=H;D.ptr.prototype.Size=function(){var $ptr,a,b;a=this;b=a.function$4;if(b===(14)){return 28;}else if(b===(15)){return 32;}else if(b===(6)){return 48;}else{return 64;}};D.prototype.Size=function(){return this.$val.Size();};D.ptr.prototype.BlockSize=function(){var $ptr,a;a=this;return 128;};D.prototype.BlockSize=function(){return this.$val.BlockSize();};D.ptr.prototype.Write=function(a){var $ptr,a,b,c,d,e,f,g,h,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=0;c=$ifaceNil;d=this;b=a.$length;d.len=(e=d.len,f=new $Uint64(0,b),new $Uint64(e.$high+f.$high,e.$low+f.$low));if(d.nx>0){$s=1;continue;}$s=2;continue;case 1:g=$copySlice($subslice(new S(d.x),d.nx),a);d.nx=d.nx+(g)>>0;if(d.nx===128){$s=3;continue;}$s=4;continue;case 3:$r=O(d,new S(d.x));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d.nx=0;case 4:a=$subslice(a,g);case 2:if(a.$length>=128){$s=6;continue;}$s=7;continue;case 6:h=(a.$length&~127)>>0;$r=O(d,$subslice(a,0,h));$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}a=$subslice(a,h);case 7:if(a.$length>0){d.nx=$copySlice(new S(d.x),a);}$s=-1;return[b,c];}return;}if($f===undefined){$f={$blk:D.ptr.prototype.Write};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};D.prototype.Write=function(a){return this.$val.Write(a);};D.ptr.prototype.Sum=function(a){var $ptr,a,b,c,d,e,f,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=new D.ptr(Q.zero(),R.zero(),0,new $Uint64(0,0),0);D.copy(c,b);d=c.checkSum();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=$clone(d,T);f=c.function$4;if(f===(6)){$s=-1;return $appendSlice(a,$subslice(new S(e),0,48));}else if(f===(14)){$s=-1;return $appendSlice(a,$subslice(new S(e),0,28));}else if(f===(15)){$s=-1;return $appendSlice(a,$subslice(new S(e),0,32));}else{$s=-1;return $appendSlice(a,new S(e));}$s=-1;return S.nil;}return;}if($f===undefined){$f={$blk:D.ptr.prototype.Sum};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};D.prototype.Sum=function(a){return this.$val.Sum(a);};D.ptr.prototype.checkSum=function(){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.len;c=R.zero();c[0]=128;if((d=$div64(b,new $Uint64(0,128),true),(d.$high<0||(d.$high===0&&d.$low<112)))){$s=1;continue;}$s=2;continue;case 1:f=a.Write($subslice(new S(c),0,$flatten64((e=$div64(b,new $Uint64(0,128),true),new $Uint64(0-e.$high,112-e.$low)))));$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;$s=3;continue;case 2:h=a.Write($subslice(new S(c),0,$flatten64((g=$div64(b,new $Uint64(0,128),true),new $Uint64(0-g.$high,240-g.$low)))));$s=5;case 5:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}h;case 3:b=$shiftLeft64(b,(3));i=0;while(true){if(!(i<16)){break;}((i<0||i>=c.length)?($throwRuntimeError("index out of range"),undefined):c[i]=($shiftRightUint64(b,((120-(8*i>>>0)>>>0))).$low<<24>>>24));i=i+(1)>>>0;}j=a.Write($subslice(new S(c),0,16));$s=6;case 6:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;if(!((a.nx===0))){$panic(new $String("d.nx != 0"));}k=new P(a.h);if(a.function$4===6){k=$subslice(new P(a.h),0,6);}l=T.zero();m=k;n=0;while(true){if(!(n<m.$length)){break;}o=n;p=((n<0||n>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+n]);(q=$imul(o,8),((q<0||q>=l.length)?($throwRuntimeError("index out of range"),undefined):l[q]=($shiftRightUint64(p,56).$low<<24>>>24)));(r=($imul(o,8))+1>>0,((r<0||r>=l.length)?($throwRuntimeError("index out of range"),undefined):l[r]=($shiftRightUint64(p,48).$low<<24>>>24)));(s=($imul(o,8))+2>>0,((s<0||s>=l.length)?($throwRuntimeError("index out of range"),undefined):l[s]=($shiftRightUint64(p,40).$low<<24>>>24)));(t=($imul(o,8))+3>>0,((t<0||t>=l.length)?($throwRuntimeError("index out of range"),undefined):l[t]=($shiftRightUint64(p,32).$low<<24>>>24)));(u=($imul(o,8))+4>>0,((u<0||u>=l.length)?($throwRuntimeError("index out of range"),undefined):l[u]=($shiftRightUint64(p,24).$low<<24>>>24)));(v=($imul(o,8))+5>>0,((v<0||v>=l.length)?($throwRuntimeError("index out of range"),undefined):l[v]=($shiftRightUint64(p,16).$low<<24>>>24)));(w=($imul(o,8))+6>>0,((w<0||w>=l.length)?($throwRuntimeError("index out of range"),undefined):l[w]=($shiftRightUint64(p,8).$low<<24>>>24)));(x=($imul(o,8))+7>>0,((x<0||x>=l.length)?($throwRuntimeError("index out of range"),undefined):l[x]=(p.$low<<24>>>24)));n++;}$s=-1;return l;}return;}if($f===undefined){$f={$blk:D.ptr.prototype.checkSum};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.$s=$s;$f.$r=$r;return $f;};D.prototype.checkSum=function(){return this.$val.checkSum();};I=function(a){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=new D.ptr(Q.zero(),R.zero(),0,new $Uint64(0,0),7);b.Reset();c=b.Write(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}c;d=b.checkSum();$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=-1;return d;}return;}if($f===undefined){$f={$blk:I};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Sum512=I;N=function(a,b){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,c,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,cu,cv,cw,cx,cy,cz,d,da,db,dc,dd,de,df,dg,dh,di,dj,dk,dl,dm,dn,dp,dq,dr,ds,dt,du,dv,dw,dx,dy,dz,e,ea,eb,ec,ed,ee,ef,eg,eh,ei,ej,ek,el,em,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;c=X.zero();d=a.h[0];e=a.h[1];f=a.h[2];g=a.h[3];h=a.h[4];i=a.h[5];j=a.h[6];k=a.h[7];l=d;m=e;n=f;o=g;p=h;q=i;r=j;s=k;while(true){if(!(b.$length>=128)){break;}t=0;while(true){if(!(t<16)){break;}u=$imul(t,8);((t<0||t>=c.length)?($throwRuntimeError("index out of range"),undefined):c[t]=(v=(w=(x=(y=(z=(aa=(ab=$shiftLeft64(new $Uint64(0,((u<0||u>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+u])),56),ac=$shiftLeft64(new $Uint64(0,(ad=u+1>>0,((ad<0||ad>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+ad]))),48),new $Uint64(ab.$high|ac.$high,(ab.$low|ac.$low)>>>0)),ae=$shiftLeft64(new $Uint64(0,(af=u+2>>0,((af<0||af>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+af]))),40),new $Uint64(aa.$high|ae.$high,(aa.$low|ae.$low)>>>0)),ag=$shiftLeft64(new $Uint64(0,(ah=u+3>>0,((ah<0||ah>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+ah]))),32),new $Uint64(z.$high|ag.$high,(z.$low|ag.$low)>>>0)),ai=$shiftLeft64(new $Uint64(0,(aj=u+4>>0,((aj<0||aj>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+aj]))),24),new $Uint64(y.$high|ai.$high,(y.$low|ai.$low)>>>0)),ak=$shiftLeft64(new $Uint64(0,(al=u+5>>0,((al<0||al>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+al]))),16),new $Uint64(x.$high|ak.$high,(x.$low|ak.$low)>>>0)),am=$shiftLeft64(new $Uint64(0,(an=u+6>>0,((an<0||an>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+an]))),8),new $Uint64(w.$high|am.$high,(w.$low|am.$low)>>>0)),ao=new $Uint64(0,(ap=u+7>>0,((ap<0||ap>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+ap]))),new $Uint64(v.$high|ao.$high,(v.$low|ao.$low)>>>0)));t=t+(1)>>0;}aq=16;while(true){if(!(aq<80)){break;}as=(ar=aq-2>>0,((ar<0||ar>=c.length)?($throwRuntimeError("index out of range"),undefined):c[ar]));bb=(at=(au=(av=$shiftRightUint64(as,19),aw=$shiftLeft64(as,45),new $Uint64(av.$high|aw.$high,(av.$low|aw.$low)>>>0)),ax=(ay=$shiftRightUint64(as,61),az=$shiftLeft64(as,3),new $Uint64(ay.$high|az.$high,(ay.$low|az.$low)>>>0)),new $Uint64(au.$high^ax.$high,(au.$low^ax.$low)>>>0)),ba=$shiftRightUint64(as,6),new $Uint64(at.$high^ba.$high,(at.$low^ba.$low)>>>0));bd=(bc=aq-15>>0,((bc<0||bc>=c.length)?($throwRuntimeError("index out of range"),undefined):c[bc]));bm=(be=(bf=(bg=$shiftRightUint64(bd,1),bh=$shiftLeft64(bd,63),new $Uint64(bg.$high|bh.$high,(bg.$low|bh.$low)>>>0)),bi=(bj=$shiftRightUint64(bd,8),bk=$shiftLeft64(bd,56),new $Uint64(bj.$high|bk.$high,(bj.$low|bk.$low)>>>0)),new $Uint64(bf.$high^bi.$high,(bf.$low^bi.$low)>>>0)),bl=$shiftRightUint64(bd,7),new $Uint64(be.$high^bl.$high,(be.$low^bl.$low)>>>0));((aq<0||aq>=c.length)?($throwRuntimeError("index out of range"),undefined):c[aq]=(bn=(bo=(bp=(bq=aq-7>>0,((bq<0||bq>=c.length)?($throwRuntimeError("index out of range"),undefined):c[bq])),new $Uint64(bb.$high+bp.$high,bb.$low+bp.$low)),new $Uint64(bo.$high+bm.$high,bo.$low+bm.$low)),br=(bs=aq-16>>0,((bs<0||bs>=c.length)?($throwRuntimeError("index out of range"),undefined):c[bs])),new $Uint64(bn.$high+br.$high,bn.$low+br.$low)));aq=aq+(1)>>0;}bt=l;bu=m;bv=n;bw=o;bx=p;by=q;bz=r;ca=s;cb=bt;cc=bu;cd=bv;ce=bw;cf=bx;cg=by;ch=bz;ci=ca;cj=0;while(true){if(!(cj<80)){break;}de=(ck=(cl=(cm=(cn=(co=(cp=(cq=$shiftRightUint64(cf,14),cr=$shiftLeft64(cf,50),new $Uint64(cq.$high|cr.$high,(cq.$low|cr.$low)>>>0)),cs=(ct=$shiftRightUint64(cf,18),cu=$shiftLeft64(cf,46),new $Uint64(ct.$high|cu.$high,(ct.$low|cu.$low)>>>0)),new $Uint64(cp.$high^cs.$high,(cp.$low^cs.$low)>>>0)),cv=(cw=$shiftRightUint64(cf,41),cx=$shiftLeft64(cf,23),new $Uint64(cw.$high|cx.$high,(cw.$low|cx.$low)>>>0)),new $Uint64(co.$high^cv.$high,(co.$low^cv.$low)>>>0)),new $Uint64(ci.$high+cn.$high,ci.$low+cn.$low)),cy=(cz=new $Uint64(cf.$high&cg.$high,(cf.$low&cg.$low)>>>0),da=(db=new $Uint64(~cf.$high,~cf.$low>>>0),new $Uint64(db.$high&ch.$high,(db.$low&ch.$low)>>>0)),new $Uint64(cz.$high^da.$high,(cz.$low^da.$low)>>>0)),new $Uint64(cm.$high+cy.$high,cm.$low+cy.$low)),dc=((cj<0||cj>=M.$length)?($throwRuntimeError("index out of range"),undefined):M.$array[M.$offset+cj]),new $Uint64(cl.$high+dc.$high,cl.$low+dc.$low)),dd=((cj<0||cj>=c.length)?($throwRuntimeError("index out of range"),undefined):c[cj]),new $Uint64(ck.$high+dd.$high,ck.$low+dd.$low));dw=(df=(dg=(dh=(di=$shiftRightUint64(cb,28),dj=$shiftLeft64(cb,36),new $Uint64(di.$high|dj.$high,(di.$low|dj.$low)>>>0)),dk=(dl=$shiftRightUint64(cb,34),dm=$shiftLeft64(cb,30),new $Uint64(dl.$high|dm.$high,(dl.$low|dm.$low)>>>0)),new $Uint64(dh.$high^dk.$high,(dh.$low^dk.$low)>>>0)),dn=(dp=$shiftRightUint64(cb,39),dq=$shiftLeft64(cb,25),new $Uint64(dp.$high|dq.$high,(dp.$low|dq.$low)>>>0)),new $Uint64(dg.$high^dn.$high,(dg.$low^dn.$low)>>>0)),dr=(ds=(dt=new $Uint64(cb.$high&cc.$high,(cb.$low&cc.$low)>>>0),du=new $Uint64(cb.$high&cd.$high,(cb.$low&cd.$low)>>>0),new $Uint64(dt.$high^du.$high,(dt.$low^du.$low)>>>0)),dv=new $Uint64(cc.$high&cd.$high,(cc.$low&cd.$low)>>>0),new $Uint64(ds.$high^dv.$high,(ds.$low^dv.$low)>>>0)),new $Uint64(df.$high+dr.$high,df.$low+dr.$low));ci=ch;ch=cg;cg=cf;cf=new $Uint64(ce.$high+de.$high,ce.$low+de.$low);ce=cd;cd=cc;cc=cb;cb=new $Uint64(de.$high+dw.$high,de.$low+dw.$low);cj=cj+(1)>>0;}l=(dx=cb,new $Uint64(l.$high+dx.$high,l.$low+dx.$low));m=(dy=cc,new $Uint64(m.$high+dy.$high,m.$low+dy.$low));n=(dz=cd,new $Uint64(n.$high+dz.$high,n.$low+dz.$low));o=(ea=ce,new $Uint64(o.$high+ea.$high,o.$low+ea.$low));p=(eb=cf,new $Uint64(p.$high+eb.$high,p.$low+eb.$low));q=(ec=cg,new $Uint64(q.$high+ec.$high,q.$low+ec.$low));r=(ed=ch,new $Uint64(r.$high+ed.$high,r.$low+ed.$low));s=(ee=ci,new $Uint64(s.$high+ee.$high,s.$low+ee.$low));b=$subslice(b,128);}ef=l;eg=m;eh=n;ei=o;ej=p;ek=q;el=r;em=s;a.h[0]=ef;a.h[1]=eg;a.h[2]=eh;a.h[3]=ei;a.h[4]=ej;a.h[5]=ek;a.h[6]=el;a.h[7]=em;};Y.methods=[{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([],[],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int],false)},{prop:"BlockSize",name:"BlockSize",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([S],[$Int,$error],false)},{prop:"Sum",name:"Sum",pkg:"",typ:$funcType([S],[S],false)},{prop:"checkSum",name:"checkSum",pkg:"crypto/sha512",typ:$funcType([],[T],false)}];D.init("crypto/sha512",[{prop:"h",name:"h",exported:false,typ:Q,tag:""},{prop:"x",name:"x",exported:false,typ:R,tag:""},{prop:"nx",name:"nx",exported:false,typ:$Int,tag:""},{prop:"len",name:"len",exported:false,typ:$Uint64,tag:""},{prop:"function$4",name:"function",exported:false,typ:A.Hash,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}M=new P([new $Uint64(1116352408,3609767458),new $Uint64(1899447441,602891725),new $Uint64(3049323471,3964484399),new $Uint64(3921009573,2173295548),new $Uint64(961987163,4081628472),new $Uint64(1508970993,3053834265),new $Uint64(2453635748,2937671579),new $Uint64(2870763221,3664609560),new $Uint64(3624381080,2734883394),new $Uint64(310598401,1164996542),new $Uint64(607225278,1323610764),new $Uint64(1426881987,3590304994),new $Uint64(1925078388,4068182383),new $Uint64(2162078206,991336113),new $Uint64(2614888103,633803317),new $Uint64(3248222580,3479774868),new $Uint64(3835390401,2666613458),new $Uint64(4022224774,944711139),new $Uint64(264347078,2341262773),new $Uint64(604807628,2007800933),new $Uint64(770255983,1495990901),new $Uint64(1249150122,1856431235),new $Uint64(1555081692,3175218132),new $Uint64(1996064986,2198950837),new $Uint64(2554220882,3999719339),new $Uint64(2821834349,766784016),new $Uint64(2952996808,2566594879),new $Uint64(3210313671,3203337956),new $Uint64(3336571891,1034457026),new $Uint64(3584528711,2466948901),new $Uint64(113926993,3758326383),new $Uint64(338241895,168717936),new $Uint64(666307205,1188179964),new $Uint64(773529912,1546045734),new $Uint64(1294757372,1522805485),new $Uint64(1396182291,2643833823),new $Uint64(1695183700,2343527390),new $Uint64(1986661051,1014477480),new $Uint64(2177026350,1206759142),new $Uint64(2456956037,344077627),new $Uint64(2730485921,1290863460),new $Uint64(2820302411,3158454273),new $Uint64(3259730800,3505952657),new $Uint64(3345764771,106217008),new $Uint64(3516065817,3606008344),new $Uint64(3600352804,1432725776),new $Uint64(4094571909,1467031594),new $Uint64(275423344,851169720),new $Uint64(430227734,3100823752),new $Uint64(506948616,1363258195),new $Uint64(659060556,3750685593),new $Uint64(883997877,3785050280),new $Uint64(958139571,3318307427),new $Uint64(1322822218,3812723403),new $Uint64(1537002063,2003034995),new $Uint64(1747873779,3602036899),new $Uint64(1955562222,1575990012),new $Uint64(2024104815,1125592928),new $Uint64(2227730452,2716904306),new $Uint64(2361852424,442776044),new $Uint64(2428436474,593698344),new $Uint64(2756734187,3733110249),new $Uint64(3204031479,2999351573),new $Uint64(3329325298,3815920427),new $Uint64(3391569614,3928383900),new $Uint64(3515267271,566280711),new $Uint64(3940187606,3454069534),new $Uint64(4118630271,4000239992),new $Uint64(116418474,1914138554),new $Uint64(174292421,2731055270),new $Uint64(289380356,3203993006),new $Uint64(460393269,320620315),new $Uint64(685471733,587496836),new $Uint64(852142971,1086792851),new $Uint64(1017036298,365543100),new $Uint64(1126000580,2618297676),new $Uint64(1288033470,3409855158),new $Uint64(1501505948,4234509866),new $Uint64(1607167915,987167468),new $Uint64(1816402316,1246189591)]);O=N;C();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["encoding/base64"]=(function(){var $pkg={},$init,A,B,C,E,G,H,I,K,L,M,N,O,P,Q,R,S,T,U,D,F,J;A=$packages["io"];B=$packages["strconv"];C=$pkg.Encoding=$newType(0,$kindStruct,"base64.Encoding",true,"encoding/base64",true,function(encode_,decodeMap_,padChar_,strict_){this.$val=this;if(arguments.length===0){this.encode=K.zero();this.decodeMap=L.zero();this.padChar=0;this.strict=false;return;}this.encode=encode_;this.decodeMap=decodeMap_;this.padChar=padChar_;this.strict=strict_;});E=$pkg.encoder=$newType(0,$kindStruct,"base64.encoder",true,"encoding/base64",false,function(err_,enc_,w_,buf_,nbuf_,out_){this.$val=this;if(arguments.length===0){this.err=$ifaceNil;this.enc=N.nil;this.w=$ifaceNil;this.buf=O.zero();this.nbuf=0;this.out=P.zero();return;}this.err=err_;this.enc=enc_;this.w=w_;this.buf=buf_;this.nbuf=nbuf_;this.out=out_;});G=$pkg.CorruptInputError=$newType(8,$kindInt64,"base64.CorruptInputError",true,"encoding/base64",true,null);H=$pkg.decoder=$newType(0,$kindStruct,"base64.decoder",true,"encoding/base64",false,function(err_,readErr_,enc_,r_,end_,buf_,nbuf_,out_,outbuf_){this.$val=this;if(arguments.length===0){this.err=$ifaceNil;this.readErr=$ifaceNil;this.enc=N.nil;this.r=$ifaceNil;this.end=false;this.buf=P.zero();this.nbuf=0;this.out=M.nil;this.outbuf=R.zero();return;}this.err=err_;this.readErr=readErr_;this.enc=enc_;this.r=r_;this.end=end_;this.buf=buf_;this.nbuf=nbuf_;this.out=out_;this.outbuf=outbuf_;});I=$pkg.newlineFilteringReader=$newType(0,$kindStruct,"base64.newlineFilteringReader",true,"encoding/base64",false,function(wrapped_){this.$val=this;if(arguments.length===0){this.wrapped=$ifaceNil;return;}this.wrapped=wrapped_;});K=$arrayType($Uint8,64);L=$arrayType($Uint8,256);M=$sliceType($Uint8);N=$ptrType(C);O=$arrayType($Uint8,3);P=$arrayType($Uint8,1024);Q=$arrayType($Uint8,4);R=$arrayType($Uint8,768);S=$ptrType(E);T=$ptrType(H);U=$ptrType(I);D=function(a){var $ptr,a,b,c,d,e,f,g;if(!((a.length===64))){$panic(new $String("encoding alphabet is not 64-bytes long"));}b=new C.ptr(K.zero(),L.zero(),0,false);b.padChar=61;$copyString(new M(b.encode),a);c=0;while(true){if(!(c<256)){break;}(d=b.decodeMap,((c<0||c>=d.length)?($throwRuntimeError("index out of range"),undefined):d[c]=255));c=c+(1)>>0;}e=0;while(true){if(!(e<a.length)){break;}(f=b.decodeMap,g=a.charCodeAt(e),((g<0||g>=f.length)?($throwRuntimeError("index out of range"),undefined):f[g]=(e<<24>>>24)));e=e+(1)>>0;}return b;};$pkg.NewEncoding=D;C.ptr.prototype.WithPadding=function(a){var $ptr,a,b;b=this;b.padChar=a;return b;};C.prototype.WithPadding=function(a){return this.$val.WithPadding(a);};C.ptr.prototype.Strict=function(){var $ptr,a;a=this;a.strict=true;return a;};C.prototype.Strict=function(){return this.$val.Strict();};C.ptr.prototype.Encode=function(a,b){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;c=this;if(b.$length===0){return;}d=0;e=0;f=d;g=e;i=$imul(((h=b.$length/3,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero"))),3);while(true){if(!(g<i)){break;}m=((((((j=g+0>>0,((j<0||j>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+j]))>>>0)<<16>>>0)|(((k=g+1>>0,((k<0||k>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+k]))>>>0)<<8>>>0))>>>0)|((l=g+2>>0,((l<0||l>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+l]))>>>0))>>>0;(p=f+0>>0,((p<0||p>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+p]=(n=c.encode,o=((m>>>18>>>0)&63)>>>0,((o<0||o>=n.length)?($throwRuntimeError("index out of range"),undefined):n[o]))));(s=f+1>>0,((s<0||s>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+s]=(q=c.encode,r=((m>>>12>>>0)&63)>>>0,((r<0||r>=q.length)?($throwRuntimeError("index out of range"),undefined):q[r]))));(v=f+2>>0,((v<0||v>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+v]=(t=c.encode,u=((m>>>6>>>0)&63)>>>0,((u<0||u>=t.length)?($throwRuntimeError("index out of range"),undefined):t[u]))));(y=f+3>>0,((y<0||y>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+y]=(w=c.encode,x=(m&63)>>>0,((x<0||x>=w.length)?($throwRuntimeError("index out of range"),undefined):w[x]))));g=g+(3)>>0;f=f+(4)>>0;}z=b.$length-g>>0;if(z===0){return;}ab=((aa=g+0>>0,((aa<0||aa>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+aa]))>>>0)<<16>>>0;if(z===2){ab=(ab|((((ac=g+1>>0,((ac<0||ac>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+ac]))>>>0)<<8>>>0)))>>>0;}(af=f+0>>0,((af<0||af>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+af]=(ad=c.encode,ae=((ab>>>18>>>0)&63)>>>0,((ae<0||ae>=ad.length)?($throwRuntimeError("index out of range"),undefined):ad[ae]))));(ai=f+1>>0,((ai<0||ai>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ai]=(ag=c.encode,ah=((ab>>>12>>>0)&63)>>>0,((ah<0||ah>=ag.length)?($throwRuntimeError("index out of range"),undefined):ag[ah]))));aj=z;if(aj===(2)){(am=f+2>>0,((am<0||am>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+am]=(ak=c.encode,al=((ab>>>6>>>0)&63)>>>0,((al<0||al>=ak.length)?($throwRuntimeError("index out of range"),undefined):ak[al]))));if(!((c.padChar===-1))){(an=f+3>>0,((an<0||an>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+an]=(c.padChar<<24>>>24)));}}else if(aj===(1)){if(!((c.padChar===-1))){(ao=f+2>>0,((ao<0||ao>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ao]=(c.padChar<<24>>>24)));(ap=f+3>>0,((ap<0||ap>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ap]=(c.padChar<<24>>>24)));}}};C.prototype.Encode=function(a,b){return this.$val.Encode(a,b);};C.ptr.prototype.EncodeToString=function(a){var $ptr,a,b,c;b=this;c=$makeSlice(M,b.EncodedLen(a.$length));b.Encode(c,a);return $bytesToString(c);};C.prototype.EncodeToString=function(a){return this.$val.EncodeToString(a);};E.ptr.prototype.Write=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=0;c=$ifaceNil;d=this;if(!($interfaceIsEqual(d.err,$ifaceNil))){e=0;f=d.err;b=e;c=f;$s=-1;return[b,c];}if(d.nbuf>0){$s=1;continue;}$s=2;continue;case 1:g=0;g=0;while(true){if(!(g<a.$length&&d.nbuf<3)){break;}(h=d.buf,i=d.nbuf,((i<0||i>=h.length)?($throwRuntimeError("index out of range"),undefined):h[i]=((g<0||g>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+g])));d.nbuf=d.nbuf+(1)>>0;g=g+(1)>>0;}b=b+(g)>>0;a=$subslice(a,g);if(d.nbuf<3){$s=-1;return[b,c];}d.enc.Encode(new M(d.out),new M(d.buf));k=d.w.Write($subslice(new M(d.out),0,4));$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;d.err=j[1];if(!($interfaceIsEqual(d.err,$ifaceNil))){l=b;m=d.err;b=l;c=m;$s=-1;return[b,c];}d.nbuf=0;case 2:case 4:if(!(a.$length>=3)){$s=5;continue;}n=768;if(n>a.$length){n=a.$length;n=n-((o=n%3,o===o?o:$throwRuntimeError("integer divide by zero")))>>0;}d.enc.Encode(new M(d.out),$subslice(a,0,n));r=d.w.Write($subslice(new M(d.out),0,($imul((q=n/3,(q===q&&q!==1/0&&q!==-1/0)?q>>0:$throwRuntimeError("integer divide by zero")),4))));$s=6;case 6:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}p=r;d.err=p[1];if(!($interfaceIsEqual(d.err,$ifaceNil))){s=b;t=d.err;b=s;c=t;$s=-1;return[b,c];}b=b+(n)>>0;a=$subslice(a,n);$s=4;continue;case 5:u=0;while(true){if(!(u<a.$length)){break;}(v=d.buf,((u<0||u>=v.length)?($throwRuntimeError("index out of range"),undefined):v[u]=((u<0||u>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+u])));u=u+(1)>>0;}d.nbuf=a.$length;b=b+(a.$length)>>0;$s=-1;return[b,c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.Write};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.$s=$s;$f.$r=$r;return $f;};E.prototype.Write=function(a){return this.$val.Write(a);};E.ptr.prototype.Close=function(){var $ptr,a,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;if($interfaceIsEqual(a.err,$ifaceNil)&&a.nbuf>0){$s=1;continue;}$s=2;continue;case 1:a.enc.Encode(new M(a.out),$subslice(new M(a.buf),0,a.nbuf));c=a.w.Write($subslice(new M(a.out),0,a.enc.EncodedLen(a.nbuf)));$s=3;case 3:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;a.err=b[1];a.nbuf=0;case 2:$s=-1;return a.err;}return;}if($f===undefined){$f={$blk:E.ptr.prototype.Close};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};E.prototype.Close=function(){return this.$val.Close();};F=function(a,b){var $ptr,a,b;return new E.ptr($ifaceNil,a,b,O.zero(),0,P.zero());};$pkg.NewEncoder=F;C.ptr.prototype.EncodedLen=function(a){var $ptr,a,b,c,d;b=this;if(b.padChar===-1){return(c=((($imul(a,8))+5>>0))/6,(c===c&&c!==1/0&&c!==-1/0)?c>>0:$throwRuntimeError("integer divide by zero"));}return $imul((d=((a+2>>0))/3,(d===d&&d!==1/0&&d!==-1/0)?d>>0:$throwRuntimeError("integer divide by zero")),4);};C.prototype.EncodedLen=function(a){return this.$val.EncodedLen(a);};G.prototype.Error=function(){var $ptr,a;a=this;return"illegal base64 data at input byte "+B.FormatInt(new $Int64(a.$high,a.$low),10);};$ptrType(G).prototype.Error=function(){return this.$get().Error();};C.ptr.prototype.decode=function(a,b){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;c=0;d=false;e=$ifaceNil;f=this;g=0;while(true){if(!(g<b.$length&&((((g<0||g>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+g])===10)||(((g<0||g>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+g])===13)))){break;}g=g+(1)>>0;}while(true){if(!(g<b.$length&&!d)){break;}h=Q.zero();i=3;j=4;k=i;l=j;m=h;n=0;while(true){if(!(n<4)){break;}o=n;if(b.$length===g){if(!((f.padChar===-1))||o<2){p=c;q=false;r=new G(0,(g-o>>0));c=p;d=q;e=r;return[c,d,e];}s=o-1>>0;t=o;u=true;k=s;l=t;d=u;break;}v=((g<0||g>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+g]);g=g+(1)>>0;while(true){if(!(g<b.$length&&((((g<0||g>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+g])===10)||(((g<0||g>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+g])===13)))){break;}g=g+(1)>>0;}if((v>>0)===f.padChar){w=o;if((w===(0))||(w===(1))){x=c;y=false;z=new G(0,(g-1>>0));c=x;d=y;e=z;return[c,d,e];}else if(w===(2)){if(g===b.$length){aa=c;ab=false;ac=new G(0,b.$length);c=aa;d=ab;e=ac;return[c,d,e];}if(!(((((g<0||g>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+g])>>0)===f.padChar))){ad=c;ae=false;af=new G(0,(g-1>>0));c=ad;d=ae;e=af;return[c,d,e];}g=g+(1)>>0;while(true){if(!(g<b.$length&&((((g<0||g>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+g])===10)||(((g<0||g>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+g])===13)))){break;}g=g+(1)>>0;}}if(g<b.$length){e=new G(0,g);}ag=3;ah=o;ai=true;k=ag;l=ah;d=ai;break;}((o<0||o>=h.length)?($throwRuntimeError("index out of range"),undefined):h[o]=(aj=f.decodeMap,((v<0||v>=aj.length)?($throwRuntimeError("index out of range"),undefined):aj[v])));if(((o<0||o>=h.length)?($throwRuntimeError("index out of range"),undefined):h[o])===255){ak=c;al=false;am=new G(0,(g-1>>0));c=ak;d=al;e=am;return[c,d,e];}n++;}an=(((((((h[0]>>>0)<<18>>>0)|((h[1]>>>0)<<12>>>0))>>>0)|((h[2]>>>0)<<6>>>0))>>>0)|(h[3]>>>0))>>>0;ao=((an>>>0>>>0)<<24>>>24);ap=((an>>>8>>>0)<<24>>>24);aq=((an>>>16>>>0)<<24>>>24);h[2]=ao;h[1]=ap;h[0]=aq;ar=l;if(ar===(4)){(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]=h[2]);h[2]=0;(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=h[1]);if(f.strict&&!((h[2]===0))){as=c;at=d;au=new G(0,(g-1>>0));c=as;d=at;e=au;return[c,d,e];}h[1]=0;(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=h[0]);if(f.strict&&(!((h[1]===0))||!((h[2]===0)))){av=c;aw=d;ax=new G(0,(g-2>>0));c=av;d=aw;e=ax;return[c,d,e];}}else if(ar===(3)){(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=h[1]);if(f.strict&&!((h[2]===0))){ay=c;az=d;ba=new G(0,(g-1>>0));c=ay;d=az;e=ba;return[c,d,e];}h[1]=0;(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=h[0]);if(f.strict&&(!((h[1]===0))||!((h[2]===0)))){bb=c;bc=d;bd=new G(0,(g-2>>0));c=bb;d=bc;e=bd;return[c,d,e];}}else if(ar===(2)){(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=h[0]);if(f.strict&&(!((h[1]===0))||!((h[2]===0)))){be=c;bf=d;bg=new G(0,(g-2>>0));c=be;d=bf;e=bg;return[c,d,e];}}a=$subslice(a,k);c=c+((l-1>>0))>>0;}bh=c;bi=d;bj=e;c=bh;d=bi;e=bj;return[c,d,e];};C.prototype.decode=function(a,b){return this.$val.decode(a,b);};C.ptr.prototype.Decode=function(a,b){var $ptr,a,b,c,d,e,f;c=0;d=$ifaceNil;e=this;f=e.decode(a,b);c=f[0];d=f[2];return[c,d];};C.prototype.Decode=function(a,b){return this.$val.Decode(a,b);};C.ptr.prototype.DecodeString=function(a){var $ptr,a,b,c,d,e,f;b=this;c=$makeSlice(M,b.DecodedLen(a.length));d=b.decode(c,new M($stringToBytes(a)));e=d[0];f=d[2];return[$subslice(c,0,e),f];};C.prototype.DecodeString=function(a){return this.$val.DecodeString(a);};H.ptr.prototype.Read=function(a){var $ptr,a,aa,ab,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=0;c=$ifaceNil;d=this;if(d.out.$length>0){b=$copySlice(a,d.out);d.out=$subslice(d.out,b);e=b;f=$ifaceNil;b=e;c=f;$s=-1;return[b,c];}if(!($interfaceIsEqual(d.err,$ifaceNil))){g=0;h=d.err;b=g;c=h;$s=-1;return[b,c];}case 1:if(!(d.nbuf<4&&$interfaceIsEqual(d.readErr,$ifaceNil))){$s=2;continue;}j=$imul((i=a.$length/3,(i===i&&i!==1/0&&i!==-1/0)?i>>0:$throwRuntimeError("integer divide by zero")),4);if(j<4){j=4;}if(j>1024){j=1024;}l=d.r.Read($subslice(new M(d.buf),d.nbuf,j));$s=3;case 3:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}k=l;j=k[0];d.readErr=k[1];d.nbuf=d.nbuf+(j)>>0;$s=1;continue;case 2:if(d.nbuf<4){if((d.enc.padChar===-1)&&d.nbuf>0){m=0;n=d.enc.decode(new M(d.outbuf),$subslice(new M(d.buf),0,d.nbuf));m=n[0];d.err=n[2];d.nbuf=0;d.end=true;d.out=$subslice(new M(d.outbuf),0,m);b=$copySlice(a,d.out);d.out=$subslice(d.out,b);if(b>0||(a.$length===0)&&d.out.$length>0){o=b;p=$ifaceNil;b=o;c=p;$s=-1;return[b,c];}if(!($interfaceIsEqual(d.err,$ifaceNil))){q=0;r=d.err;b=q;c=r;$s=-1;return[b,c];}}d.err=d.readErr;if($interfaceIsEqual(d.err,A.EOF)&&d.nbuf>0){d.err=A.ErrUnexpectedEOF;}s=0;t=d.err;b=s;c=t;$s=-1;return[b,c];}v=$imul((u=d.nbuf/4,(u===u&&u!==1/0&&u!==-1/0)?u>>0:$throwRuntimeError("integer divide by zero")),4);x=$imul((w=d.nbuf/4,(w===w&&w!==1/0&&w!==-1/0)?w>>0:$throwRuntimeError("integer divide by zero")),3);if(x>a.$length){y=d.enc.decode(new M(d.outbuf),$subslice(new M(d.buf),0,v));x=y[0];d.end=y[1];d.err=y[2];d.out=$subslice(new M(d.outbuf),0,x);b=$copySlice(a,d.out);d.out=$subslice(d.out,b);}else{z=d.enc.decode(a,$subslice(new M(d.buf),0,v));b=z[0];d.end=z[1];d.err=z[2];}d.nbuf=d.nbuf-(v)>>0;$copySlice($subslice(new M(d.buf),0,d.nbuf),$subslice(new M(d.buf),v));aa=b;ab=d.err;b=aa;c=ab;$s=-1;return[b,c];}return;}if($f===undefined){$f={$blk:H.ptr.prototype.Read};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};H.prototype.Read=function(a){return this.$val.Read(a);};I.ptr.prototype.Read=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;d=b.wrapped.Read(a);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;e=c[0];f=c[1];case 2:if(!(e>0)){$s=3;continue;}g=0;h=$subslice(a,0,e);i=0;while(true){if(!(i<h.$length)){break;}j=i;k=((i<0||i>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+i]);if(!((k===13))&&!((k===10))){if(!((j===g))){((g<0||g>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+g]=k);}g=g+(1)>>0;}i++;}if(g>0){$s=-1;return[g,f];}m=b.wrapped.Read(a);$s=4;case 4:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;e=l[0];f=l[1];$s=2;continue;case 3:$s=-1;return[e,f];}return;}if($f===undefined){$f={$blk:I.ptr.prototype.Read};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};I.prototype.Read=function(a){return this.$val.Read(a);};J=function(a,b){var $ptr,a,b;return new H.ptr($ifaceNil,$ifaceNil,a,new I.ptr(b),false,P.zero(),0,M.nil,R.zero());};$pkg.NewDecoder=J;C.ptr.prototype.DecodedLen=function(a){var $ptr,a,b,c,d;b=this;if(b.padChar===-1){return(c=($imul(a,6))/8,(c===c&&c!==1/0&&c!==-1/0)?c>>0:$throwRuntimeError("integer divide by zero"));}return $imul((d=a/4,(d===d&&d!==1/0&&d!==-1/0)?d>>0:$throwRuntimeError("integer divide by zero")),3);};C.prototype.DecodedLen=function(a){return this.$val.DecodedLen(a);};C.methods=[{prop:"WithPadding",name:"WithPadding",pkg:"",typ:$funcType([$Int32],[N],false)},{prop:"Strict",name:"Strict",pkg:"",typ:$funcType([],[N],false)}];N.methods=[{prop:"Encode",name:"Encode",pkg:"",typ:$funcType([M,M],[],false)},{prop:"EncodeToString",name:"EncodeToString",pkg:"",typ:$funcType([M],[$String],false)},{prop:"EncodedLen",name:"EncodedLen",pkg:"",typ:$funcType([$Int],[$Int],false)},{prop:"decode",name:"decode",pkg:"encoding/base64",typ:$funcType([M,M],[$Int,$Bool,$error],false)},{prop:"Decode",name:"Decode",pkg:"",typ:$funcType([M,M],[$Int,$error],false)},{prop:"DecodeString",name:"DecodeString",pkg:"",typ:$funcType([$String],[M,$error],false)},{prop:"DecodedLen",name:"DecodedLen",pkg:"",typ:$funcType([$Int],[$Int],false)}];S.methods=[{prop:"Write",name:"Write",pkg:"",typ:$funcType([M],[$Int,$error],false)},{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)}];G.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];T.methods=[{prop:"Read",name:"Read",pkg:"",typ:$funcType([M],[$Int,$error],false)}];U.methods=[{prop:"Read",name:"Read",pkg:"",typ:$funcType([M],[$Int,$error],false)}];C.init("encoding/base64",[{prop:"encode",name:"encode",exported:false,typ:K,tag:""},{prop:"decodeMap",name:"decodeMap",exported:false,typ:L,tag:""},{prop:"padChar",name:"padChar",exported:false,typ:$Int32,tag:""},{prop:"strict",name:"strict",exported:false,typ:$Bool,tag:""}]);E.init("encoding/base64",[{prop:"err",name:"err",exported:false,typ:$error,tag:""},{prop:"enc",name:"enc",exported:false,typ:N,tag:""},{prop:"w",name:"w",exported:false,typ:A.Writer,tag:""},{prop:"buf",name:"buf",exported:false,typ:O,tag:""},{prop:"nbuf",name:"nbuf",exported:false,typ:$Int,tag:""},{prop:"out",name:"out",exported:false,typ:P,tag:""}]);H.init("encoding/base64",[{prop:"err",name:"err",exported:false,typ:$error,tag:""},{prop:"readErr",name:"readErr",exported:false,typ:$error,tag:""},{prop:"enc",name:"enc",exported:false,typ:N,tag:""},{prop:"r",name:"r",exported:false,typ:A.Reader,tag:""},{prop:"end",name:"end",exported:false,typ:$Bool,tag:""},{prop:"buf",name:"buf",exported:false,typ:P,tag:""},{prop:"nbuf",name:"nbuf",exported:false,typ:$Int,tag:""},{prop:"out",name:"out",exported:false,typ:M,tag:""},{prop:"outbuf",name:"outbuf",exported:false,typ:R,tag:""}]);I.init("encoding/base64",[{prop:"wrapped",name:"wrapped",exported:false,typ:A.Reader,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$pkg.StdEncoding=D("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/");$pkg.URLEncoding=D("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_");$pkg.RawStdEncoding=$clone($pkg.StdEncoding,C).WithPadding(-1);$pkg.RawURLEncoding=$clone($pkg.URLEncoding,C).WithPadding(-1);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["math"]=(function(){var $pkg={},$init,A,FI,FJ,FK,FL,GS,B,C,D,E,F,AS,EQ,P,T,V,W,X,Z,AC,AH,AT,AU,AV,AW,AX,AY,BI,BW,EG,ES;A=$packages["github.com/gopherjs/gopherjs/js"];FI=$arrayType($Uint32,2);FJ=$arrayType($Float32,2);FK=$arrayType($Float64,1);FL=$structType("math",[{prop:"uint32array",name:"uint32array",exported:false,typ:FI,tag:""},{prop:"float32array",name:"float32array",exported:false,typ:FJ,tag:""},{prop:"float64array",name:"float64array",exported:false,typ:FK,tag:""}]);GS=$arrayType($Float64,70);P=function(aq){var $ptr,aq;return $parseFloat(B.exp(aq));};$pkg.Exp=P;T=function(aq){var $ptr,aq,ar,as,at;ar=0;as=0;at=BW(aq);ar=at[0];as=at[1];return[ar,as];};$pkg.Frexp=T;V=function(aq){var $ptr,aq;if(aq>=0){return D;}else{return E;}};$pkg.Inf=V;W=function(aq,ar){var $ptr,aq,ar;if(aq===D){return ar>=0;}if(aq===E){return ar<=0;}return false;};$pkg.IsInf=W;X=function(aq){var $ptr,aq,ar;ar=false;ar=!((aq===aq));return ar;};$pkg.IsNaN=X;Z=function(aq){var $ptr,aq;if(!((aq===aq))){return F;}return $parseFloat(B.log(aq));};$pkg.Log=Z;AC=function(aq){var $ptr,aq;return EG(aq);};$pkg.Log2=AC;AH=function(){var $ptr;return F;};$pkg.NaN=AH;AT=function(){var $ptr,aq;aq=new($global.ArrayBuffer)(8);AS.uint32array=new($global.Uint32Array)(aq);AS.float32array=new($global.Float32Array)(aq);AS.float64array=new($global.Float64Array)(aq);};AU=function(aq){var $ptr,aq;AS.float32array[0]=aq;return AS.uint32array[0];};$pkg.Float32bits=AU;AV=function(aq){var $ptr,aq;AS.uint32array[0]=aq;return AS.float32array[0];};$pkg.Float32frombits=AV;AW=function(aq){var $ptr,aq,ar,as;AS.float64array[0]=aq;return(ar=$shiftLeft64(new $Uint64(0,AS.uint32array[1]),32),as=new $Uint64(0,AS.uint32array[0]),new $Uint64(ar.$high+as.$high,ar.$low+as.$low));};$pkg.Float64bits=AW;AX=function(aq){var $ptr,aq;AS.uint32array[0]=(aq.$low>>>0);AS.uint32array[1]=($shiftRightUint64(aq,32).$low>>>0);return AS.float64array[0];};$pkg.Float64frombits=AX;AY=function(aq){var $ptr,aq;if(aq<0){return-aq;}if(aq===0){return 0;}return aq;};$pkg.Abs=AY;BI=function(aq){var $ptr,aq,ar,as,at,au,av,aw;ar=0;as=0;if(AY(aq)<2.2250738585072014e-308){at=aq*4.503599627370496e+15;au=-52;ar=at;as=au;return[ar,as];}av=aq;aw=0;ar=av;as=aw;return[ar,as];};BW=function(aq){var $ptr,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb;ar=0;as=0;if((aq===0)){at=aq;au=0;ar=at;as=au;return[ar,as];}else if(W(aq,0)||X(aq)){av=aq;aw=0;ar=av;as=aw;return[ar,as];}ax=BI(aq);aq=ax[0];as=ax[1];ay=AW(aq);as=as+(((((az=$shiftRightUint64(ay,52),new $Uint64(az.$high&0,(az.$low&2047)>>>0)).$low>>0)-1023>>0)+1>>0))>>0;ay=(ba=new $Uint64(2146435072,0),new $Uint64(ay.$high&~ba.$high,(ay.$low&~ba.$low)>>>0));ay=(bb=new $Uint64(1071644672,0),new $Uint64(ay.$high|bb.$high,(ay.$low|bb.$low)>>>0));ar=AX(ay);return[ar,as];};EG=function(aq){var $ptr,aq,ar,as,at;ar=T(aq);as=ar[0];at=ar[1];if(as===0.5){return(at-1>>0);}return Z(as)*1.4426950408889634+at;};ES=function(){var $ptr,aq,ar,as,at;EQ[0]=1;EQ[1]=10;aq=2;while(true){if(!(aq<70)){break;}as=(ar=aq/2,(ar===ar&&ar!==1/0&&ar!==-1/0)?ar>>0:$throwRuntimeError("integer divide by zero"));((aq<0||aq>=EQ.length)?($throwRuntimeError("index out of range"),undefined):EQ[aq]=((as<0||as>=EQ.length)?($throwRuntimeError("index out of range"),undefined):EQ[as])*(at=aq-as>>0,((at<0||at>=EQ.length)?($throwRuntimeError("index out of range"),undefined):EQ[at])));aq=aq+(1)>>0;}};$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}AS=new FL.ptr(FI.zero(),FJ.zero(),FK.zero());EQ=GS.zero();B=$global.Math;C=0;D=1/C;E=-1/C;F=0/C;AT();ES();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["syscall"]=(function(){var $pkg={},$init,A,D,B,C,BT,BW,BZ,DT,DU,FT,FU,GC,GD,GE,GF,MT,NC,NH,NI,NJ,NK,NL,NM,NN,NO,OC,OE,OG,OH,OI,OV,OX,PF,PO,PP,PQ,PU,PV,PW,PX,PY,QC,QI,QJ,QK,QL,QM,QS,QT,QW,QX,QY,QZ,RA,RB,RC,RD,RE,RF,RI,E,F,N,O,P,AA,AB,AC,AD,FJ,FV,FW,FX,GY,PE,HD,G,H,I,J,K,L,Q,R,S,T,V,W,X,Y,Z,AF,AH,AW,BP,BQ,BR,BS,BU,BV,BX,BY,CA,CB,CN,CO,CT,CV,DB,DV,DY,FB,FC,FD,FE,FY,GA,GB,GG,GK,GL,GV,HG,HW,ID,IG,IH,II,IK,IN,IO,JI,KD,KH,KP,KQ,KS,KV,KX,LD,LE,LF,LG,LS,LY,ME,MH,MI,MJ,MM;A=$packages["github.com/gopherjs/gopherjs/js"];D=$packages["internal/race"];B=$packages["runtime"];C=$packages["sync"];BT=$pkg.NetlinkRouteRequest=$newType(0,$kindStruct,"syscall.NetlinkRouteRequest",true,"syscall",true,function(Header_,Data_){this.$val=this;if(arguments.length===0){this.Header=new OC.ptr(0,0,0,0,0);this.Data=new OE.ptr(0);return;}this.Header=Header_;this.Data=Data_;});BW=$pkg.NetlinkMessage=$newType(0,$kindStruct,"syscall.NetlinkMessage",true,"syscall",true,function(Header_,Data_){this.$val=this;if(arguments.length===0){this.Header=new OC.ptr(0,0,0,0,0);this.Data=OV.nil;return;}this.Header=Header_;this.Data=Data_;});BZ=$pkg.NetlinkRouteAttr=$newType(0,$kindStruct,"syscall.NetlinkRouteAttr",true,"syscall",true,function(Attr_,Value_){this.$val=this;if(arguments.length===0){this.Attr=new OG.ptr(0,0);this.Value=OV.nil;return;}this.Attr=Attr_;this.Value=Value_;});DT=$pkg.SockaddrLinklayer=$newType(0,$kindStruct,"syscall.SockaddrLinklayer",true,"syscall",true,function(Protocol_,Ifindex_,Hatype_,Pkttype_,Halen_,Addr_,raw_){this.$val=this;if(arguments.length===0){this.Protocol=0;this.Ifindex=0;this.Hatype=0;this.Pkttype=0;this.Halen=0;this.Addr=PO.zero();this.raw=new NK.ptr(0,0,0,0,0,0,PO.zero());return;}this.Protocol=Protocol_;this.Ifindex=Ifindex_;this.Hatype=Hatype_;this.Pkttype=Pkttype_;this.Halen=Halen_;this.Addr=Addr_;this.raw=raw_;});DU=$pkg.SockaddrNetlink=$newType(0,$kindStruct,"syscall.SockaddrNetlink",true,"syscall",true,function(Family_,Pad_,Pid_,Groups_,raw_){this.$val=this;if(arguments.length===0){this.Family=0;this.Pad=0;this.Pid=0;this.Groups=0;this.raw=new NL.ptr(0,0,0,0);return;}this.Family=Family_;this.Pad=Pad_;this.Pid=Pid_;this.Groups=Groups_;this.raw=raw_;});FT=$pkg.mmapper=$newType(0,$kindStruct,"syscall.mmapper",true,"syscall",false,function(Mutex_,active_,mmap_,munmap_){this.$val=this;if(arguments.length===0){this.Mutex=new C.Mutex.ptr(0,0);this.active=false;this.mmap=$throwNilPointerError;this.munmap=$throwNilPointerError;return;}this.Mutex=Mutex_;this.active=active_;this.mmap=mmap_;this.munmap=munmap_;});FU=$pkg.Errno=$newType(4,$kindUintptr,"syscall.Errno",true,"syscall",true,null);GC=$pkg.Sockaddr=$newType(8,$kindInterface,"syscall.Sockaddr",true,"syscall",true,null);GD=$pkg.SockaddrInet4=$newType(0,$kindStruct,"syscall.SockaddrInet4",true,"syscall",true,function(Port_,Addr_,raw_){this.$val=this;if(arguments.length===0){this.Port=0;this.Addr=QJ.zero();this.raw=new NH.ptr(0,0,QJ.zero(),PO.zero());return;}this.Port=Port_;this.Addr=Addr_;this.raw=raw_;});GE=$pkg.SockaddrInet6=$newType(0,$kindStruct,"syscall.SockaddrInet6",true,"syscall",true,function(Port_,ZoneId_,Addr_,raw_){this.$val=this;if(arguments.length===0){this.Port=0;this.ZoneId=0;this.Addr=PQ.zero();this.raw=new NI.ptr(0,0,0,PQ.zero(),0);return;}this.Port=Port_;this.ZoneId=ZoneId_;this.Addr=Addr_;this.raw=raw_;});GF=$pkg.SockaddrUnix=$newType(0,$kindStruct,"syscall.SockaddrUnix",true,"syscall",true,function(Name_,raw_){this.$val=this;if(arguments.length===0){this.Name="";this.raw=new NJ.ptr(0,QI.zero());return;}this.Name=Name_;this.raw=raw_;});MT=$pkg.Timespec=$newType(0,$kindStruct,"syscall.Timespec",true,"syscall",true,function(Sec_,Nsec_){this.$val=this;if(arguments.length===0){this.Sec=new $Int64(0,0);this.Nsec=new $Int64(0,0);return;}this.Sec=Sec_;this.Nsec=Nsec_;});NC=$pkg.Stat_t=$newType(0,$kindStruct,"syscall.Stat_t",true,"syscall",true,function(Dev_,Ino_,Nlink_,Mode_,Uid_,Gid_,X__pad0_,Rdev_,Size_,Blksize_,Blocks_,Atim_,Mtim_,Ctim_,X__unused_){this.$val=this;if(arguments.length===0){this.Dev=new $Uint64(0,0);this.Ino=new $Uint64(0,0);this.Nlink=new $Uint64(0,0);this.Mode=0;this.Uid=0;this.Gid=0;this.X__pad0=0;this.Rdev=new $Uint64(0,0);this.Size=new $Int64(0,0);this.Blksize=new $Int64(0,0);this.Blocks=new $Int64(0,0);this.Atim=new MT.ptr(new $Int64(0,0),new $Int64(0,0));this.Mtim=new MT.ptr(new $Int64(0,0),new $Int64(0,0));this.Ctim=new MT.ptr(new $Int64(0,0),new $Int64(0,0));this.X__unused=RI.zero();return;}this.Dev=Dev_;this.Ino=Ino_;this.Nlink=Nlink_;this.Mode=Mode_;this.Uid=Uid_;this.Gid=Gid_;this.X__pad0=X__pad0_;this.Rdev=Rdev_;this.Size=Size_;this.Blksize=Blksize_;this.Blocks=Blocks_;this.Atim=Atim_;this.Mtim=Mtim_;this.Ctim=Ctim_;this.X__unused=X__unused_;});NH=$pkg.RawSockaddrInet4=$newType(0,$kindStruct,"syscall.RawSockaddrInet4",true,"syscall",true,function(Family_,Port_,Addr_,Zero_){this.$val=this;if(arguments.length===0){this.Family=0;this.Port=0;this.Addr=QJ.zero();this.Zero=PO.zero();return;}this.Family=Family_;this.Port=Port_;this.Addr=Addr_;this.Zero=Zero_;});NI=$pkg.RawSockaddrInet6=$newType(0,$kindStruct,"syscall.RawSockaddrInet6",true,"syscall",true,function(Family_,Port_,Flowinfo_,Addr_,Scope_id_){this.$val=this;if(arguments.length===0){this.Family=0;this.Port=0;this.Flowinfo=0;this.Addr=PQ.zero();this.Scope_id=0;return;}this.Family=Family_;this.Port=Port_;this.Flowinfo=Flowinfo_;this.Addr=Addr_;this.Scope_id=Scope_id_;});NJ=$pkg.RawSockaddrUnix=$newType(0,$kindStruct,"syscall.RawSockaddrUnix",true,"syscall",true,function(Family_,Path_){this.$val=this;if(arguments.length===0){this.Family=0;this.Path=QI.zero();return;}this.Family=Family_;this.Path=Path_;});NK=$pkg.RawSockaddrLinklayer=$newType(0,$kindStruct,"syscall.RawSockaddrLinklayer",true,"syscall",true,function(Family_,Protocol_,Ifindex_,Hatype_,Pkttype_,Halen_,Addr_){this.$val=this;if(arguments.length===0){this.Family=0;this.Protocol=0;this.Ifindex=0;this.Hatype=0;this.Pkttype=0;this.Halen=0;this.Addr=PO.zero();return;}this.Family=Family_;this.Protocol=Protocol_;this.Ifindex=Ifindex_;this.Hatype=Hatype_;this.Pkttype=Pkttype_;this.Halen=Halen_;this.Addr=Addr_;});NL=$pkg.RawSockaddrNetlink=$newType(0,$kindStruct,"syscall.RawSockaddrNetlink",true,"syscall",true,function(Family_,Pad_,Pid_,Groups_){this.$val=this;if(arguments.length===0){this.Family=0;this.Pad=0;this.Pid=0;this.Groups=0;return;}this.Family=Family_;this.Pad=Pad_;this.Pid=Pid_;this.Groups=Groups_;});NM=$pkg.RawSockaddr=$newType(0,$kindStruct,"syscall.RawSockaddr",true,"syscall",true,function(Family_,Data_){this.$val=this;if(arguments.length===0){this.Family=0;this.Data=QK.zero();return;}this.Family=Family_;this.Data=Data_;});NN=$pkg.RawSockaddrAny=$newType(0,$kindStruct,"syscall.RawSockaddrAny",true,"syscall",true,function(Addr_,Pad_){this.$val=this;if(arguments.length===0){this.Addr=new NM.ptr(0,QK.zero());this.Pad=QL.zero();return;}this.Addr=Addr_;this.Pad=Pad_;});NO=$pkg._Socklen=$newType(4,$kindUint32,"syscall._Socklen",true,"syscall",false,null);OC=$pkg.NlMsghdr=$newType(0,$kindStruct,"syscall.NlMsghdr",true,"syscall",true,function(Len_,Type_,Flags_,Seq_,Pid_){this.$val=this;if(arguments.length===0){this.Len=0;this.Type=0;this.Flags=0;this.Seq=0;this.Pid=0;return;}this.Len=Len_;this.Type=Type_;this.Flags=Flags_;this.Seq=Seq_;this.Pid=Pid_;});OE=$pkg.RtGenmsg=$newType(0,$kindStruct,"syscall.RtGenmsg",true,"syscall",true,function(Family_){this.$val=this;if(arguments.length===0){this.Family=0;return;}this.Family=Family_;});OG=$pkg.RtAttr=$newType(0,$kindStruct,"syscall.RtAttr",true,"syscall",true,function(Len_,Type_){this.$val=this;if(arguments.length===0){this.Len=0;this.Type=0;return;}this.Len=Len_;this.Type=Type_;});OH=$pkg.IfInfomsg=$newType(0,$kindStruct,"syscall.IfInfomsg",true,"syscall",true,function(Family_,X__ifi_pad_,Type_,Index_,Flags_,Change_){this.$val=this;if(arguments.length===0){this.Family=0;this.X__ifi_pad=0;this.Type=0;this.Index=0;this.Flags=0;this.Change=0;return;}this.Family=Family_;this.X__ifi_pad=X__ifi_pad_;this.Type=Type_;this.Index=Index_;this.Flags=Flags_;this.Change=Change_;});OI=$pkg.IfAddrmsg=$newType(0,$kindStruct,"syscall.IfAddrmsg",true,"syscall",true,function(Family_,Prefixlen_,Flags_,Scope_,Index_){this.$val=this;if(arguments.length===0){this.Family=0;this.Prefixlen=0;this.Flags=0;this.Scope=0;this.Index=0;return;}this.Family=Family_;this.Prefixlen=Prefixlen_;this.Flags=Flags_;this.Scope=Scope_;this.Index=Index_;});OV=$sliceType($Uint8);OX=$sliceType($String);PF=$ptrType($Uint8);PO=$arrayType($Uint8,8);PP=$ptrType($Uint16);PQ=$arrayType($Uint8,16);PU=$ptrType(DU);PV=$sliceType(BW);PW=$ptrType(OC);PX=$sliceType(BZ);PY=$ptrType(OG);QC=$arrayType($Uint8,32);QI=$arrayType($Int8,108);QJ=$arrayType($Uint8,4);QK=$arrayType($Int8,14);QL=$arrayType($Int8,96);QM=$ptrType(NO);QS=$structType("syscall",[{prop:"addr",name:"addr",exported:false,typ:$Uintptr,tag:""},{prop:"len",name:"len",exported:false,typ:$Int,tag:""},{prop:"cap",name:"cap",exported:false,typ:$Int,tag:""}]);QT=$ptrType($Int64);QW=$ptrType(BT);QX=$ptrType(DT);QY=$ptrType(FT);QZ=$mapType(PF,OV);RA=$funcType([$Uintptr,$Uintptr,$Int,$Int,$Int,$Int64],[$Uintptr,$error],false);RB=$funcType([$Uintptr,$Uintptr],[$error],false);RC=$ptrType(GD);RD=$ptrType(GE);RE=$ptrType(GF);RF=$ptrType(MT);RI=$arrayType($Int64,3);G=function(){var $ptr;$flushConsole=(function(){var $ptr;if(!((F.$length===0))){$global.console.log($externalize($bytesToString(F),$String));F=OV.nil;}});};H=function(){var $ptr;if(!E){$global.console.error($externalize("warning: system calls not available, see https://github.com/gopherjs/gopherjs/blob/master/doc/syscalls.md",$String));}E=true;};I=function(i){var $ptr,i,j,k;j=$global.goPrintToConsole;if(!(j===undefined)){j(i);return;}F=$appendSlice(F,i);while(true){k=K(F,10);if(k===-1){break;}$global.console.log($externalize($bytesToString($subslice(F,0,k)),$String));F=$subslice(F,(k+1>>0));}};J=function(i){var $ptr,i;};K=function(i,j){var $ptr,i,j,k,l,m,n;k=i;l=0;while(true){if(!(l<k.$length)){break;}m=l;n=((l<0||l>=k.$length)?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+l]);if(n===j){return m;}l++;}return-1;};L=function(){var $ptr,i,j,k,l,m,n;i=$global.process;if(i===undefined){return OX.nil;}j=i.env;k=$global.Object.keys(j);l=$makeSlice(OX,$parseInt(k.length));m=0;while(true){if(!(m<$parseInt(k.length))){break;}n=$internalize(k[m],$String);((m<0||m>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+m]=n+"="+$internalize(j[$externalize(n,$String)],$String));m=m+(1)>>0;}return l;};Q=function(i){var $ptr,i,j,$deferred;var $err=null;try{$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);$deferred.push([(function(){var $ptr;$recover();}),[]]);if(N===null){if(O){return null;}O=true;j=$global.require;if(j===undefined){$panic(new $String(""));}N=j($externalize("syscall",$String));}return N[$externalize(i,$String)];}catch(err){$err=err;return null;}finally{$callDeferred($deferred,$err);}};R=function(i,j,k,l){var $ptr,aa,ab,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;m=0;n=0;o=0;p=Q("Syscall");if(!(p===null)){q=p(i,j,k,l);r=(($parseInt(q[0])>>0)>>>0);s=(($parseInt(q[1])>>0)>>>0);t=(($parseInt(q[2])>>0)>>>0);m=r;n=s;o=t;return[m,n,o];}if((i===1)&&((j===1)||(j===2))){u=k;v=$makeSlice(OV,$parseInt(u.length));v.$array=u;I(v);w=($parseInt(u.length)>>>0);x=0;y=0;m=w;n=x;o=y;return[m,n,o];}if(i===60){B.Goexit();}H();z=(P>>>0);aa=0;ab=13;m=z;n=aa;o=ab;return[m,n,o];};$pkg.Syscall=R;S=function(i,j,k,l,m,n,o){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;p=0;q=0;r=0;s=Q("Syscall6");if(!(s===null)){t=s(i,j,k,l,m,n,o);u=(($parseInt(t[0])>>0)>>>0);v=(($parseInt(t[1])>>0)>>>0);w=(($parseInt(t[2])>>0)>>>0);p=u;q=v;r=w;return[p,q,r];}if(!((i===202))){H();}x=(P>>>0);y=0;z=13;p=x;q=y;r=z;return[p,q,r];};$pkg.Syscall6=S;T=function(i,j,k,l){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w;m=0;n=0;o=0;p=Q("Syscall");if(!(p===null)){q=p(i,j,k,l);r=(($parseInt(q[0])>>0)>>>0);s=(($parseInt(q[1])>>0)>>>0);t=(($parseInt(q[2])>>0)>>>0);m=r;n=s;o=t;return[m,n,o];}H();u=(P>>>0);v=0;w=13;m=u;n=v;o=w;return[m,n,o];};$pkg.RawSyscall=T;V=function(i){var $ptr,i,j,k,l,m,n;j=new($global.Uint8Array)(i.length+1>>0);k=new OV($stringToBytes(i));l=0;while(true){if(!(l<k.$length)){break;}m=l;n=((l<0||l>=k.$length)?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+l]);if(n===0){return[PF.nil,new FU(22)];}j[m]=n;l++;}j[i.length]=0;return[j,$ifaceNil];};$pkg.BytePtrFromString=V;W=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q,r,s;l=new $Uint64(0,0);m=false;if(i.$length<((j+k>>>0)>>0)){n=new $Uint64(0,0);o=false;l=n;m=o;return[l,m];}if(false){p=X($subslice(i,j),k);q=true;l=p;m=q;return[l,m];}r=Y($subslice(i,j),k);s=true;l=r;m=s;return[l,m];};X=function(i,j){var $ptr,aa,ab,ac,ad,ae,af,ag,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;k=j;if(k===(1)){return new $Uint64(0,(0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0]));}else if(k===(2)){$unused((1>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+1]));return(l=new $Uint64(0,(1>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+1])),m=$shiftLeft64(new $Uint64(0,(0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0])),8),new $Uint64(l.$high|m.$high,(l.$low|m.$low)>>>0));}else if(k===(4)){$unused((3>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+3]));return(n=(o=(p=new $Uint64(0,(3>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+3])),q=$shiftLeft64(new $Uint64(0,(2>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+2])),8),new $Uint64(p.$high|q.$high,(p.$low|q.$low)>>>0)),r=$shiftLeft64(new $Uint64(0,(1>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+1])),16),new $Uint64(o.$high|r.$high,(o.$low|r.$low)>>>0)),s=$shiftLeft64(new $Uint64(0,(0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0])),24),new $Uint64(n.$high|s.$high,(n.$low|s.$low)>>>0));}else if(k===(8)){$unused((7>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+7]));return(t=(u=(v=(w=(x=(y=(z=new $Uint64(0,(7>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+7])),aa=$shiftLeft64(new $Uint64(0,(6>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+6])),8),new $Uint64(z.$high|aa.$high,(z.$low|aa.$low)>>>0)),ab=$shiftLeft64(new $Uint64(0,(5>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+5])),16),new $Uint64(y.$high|ab.$high,(y.$low|ab.$low)>>>0)),ac=$shiftLeft64(new $Uint64(0,(4>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+4])),24),new $Uint64(x.$high|ac.$high,(x.$low|ac.$low)>>>0)),ad=$shiftLeft64(new $Uint64(0,(3>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+3])),32),new $Uint64(w.$high|ad.$high,(w.$low|ad.$low)>>>0)),ae=$shiftLeft64(new $Uint64(0,(2>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+2])),40),new $Uint64(v.$high|ae.$high,(v.$low|ae.$low)>>>0)),af=$shiftLeft64(new $Uint64(0,(1>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+1])),48),new $Uint64(u.$high|af.$high,(u.$low|af.$low)>>>0)),ag=$shiftLeft64(new $Uint64(0,(0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0])),56),new $Uint64(t.$high|ag.$high,(t.$low|ag.$low)>>>0));}else{$panic(new $String("syscall: readInt with unsupported size"));}};Y=function(i,j){var $ptr,aa,ab,ac,ad,ae,af,ag,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;k=j;if(k===(1)){return new $Uint64(0,(0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0]));}else if(k===(2)){$unused((1>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+1]));return(l=new $Uint64(0,(0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0])),m=$shiftLeft64(new $Uint64(0,(1>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+1])),8),new $Uint64(l.$high|m.$high,(l.$low|m.$low)>>>0));}else if(k===(4)){$unused((3>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+3]));return(n=(o=(p=new $Uint64(0,(0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0])),q=$shiftLeft64(new $Uint64(0,(1>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+1])),8),new $Uint64(p.$high|q.$high,(p.$low|q.$low)>>>0)),r=$shiftLeft64(new $Uint64(0,(2>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+2])),16),new $Uint64(o.$high|r.$high,(o.$low|r.$low)>>>0)),s=$shiftLeft64(new $Uint64(0,(3>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+3])),24),new $Uint64(n.$high|s.$high,(n.$low|s.$low)>>>0));}else if(k===(8)){$unused((7>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+7]));return(t=(u=(v=(w=(x=(y=(z=new $Uint64(0,(0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0])),aa=$shiftLeft64(new $Uint64(0,(1>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+1])),8),new $Uint64(z.$high|aa.$high,(z.$low|aa.$low)>>>0)),ab=$shiftLeft64(new $Uint64(0,(2>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+2])),16),new $Uint64(y.$high|ab.$high,(y.$low|ab.$low)>>>0)),ac=$shiftLeft64(new $Uint64(0,(3>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+3])),24),new $Uint64(x.$high|ac.$high,(x.$low|ac.$low)>>>0)),ad=$shiftLeft64(new $Uint64(0,(4>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+4])),32),new $Uint64(w.$high|ad.$high,(w.$low|ad.$low)>>>0)),ae=$shiftLeft64(new $Uint64(0,(5>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+5])),40),new $Uint64(v.$high|ae.$high,(v.$low|ae.$low)>>>0)),af=$shiftLeft64(new $Uint64(0,(6>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+6])),48),new $Uint64(u.$high|af.$high,(u.$low|af.$low)>>>0)),ag=$shiftLeft64(new $Uint64(0,(7>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+7])),56),new $Uint64(t.$high|ag.$high,(t.$low|ag.$low)>>>0));}else{$panic(new $String("syscall: readInt with unsupported size"));}};Z=function(i,j,k){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;l=0;m=0;n=OX.nil;o=i.$length;m=0;while(true){if(!(!((j===0))&&i.$length>0)){break;}p=FD(i);q=p[0];r=p[1];if(!r||(s=new $Uint64(0,i.$length),(q.$high>s.$high||(q.$high===s.$high&&q.$low>s.$low)))){t=o;u=m;v=k;l=t;m=u;n=v;return[l,m,n];}w=$subslice(i,0,$flatten64(q));i=$subslice(i,$flatten64(q));x=FC(w);y=x[0];r=x[1];if(!r){break;}if((y.$high===0&&y.$low===0)){continue;}z=FE(w);aa=z[0];r=z[1];if(!r||(ab=new $Uint64(0+aa.$high,19+aa.$low),ac=new $Uint64(0,w.$length),(ab.$high>ac.$high||(ab.$high===ac.$high&&ab.$low>ac.$low)))){break;}ad=$subslice(w,19,$flatten64(new $Uint64(0+aa.$high,19+aa.$low)));ae=ad;af=0;while(true){if(!(af<ae.$length)){break;}ag=af;ah=((af<0||af>=ae.$length)?($throwRuntimeError("index out of range"),undefined):ae.$array[ae.$offset+af]);if(ah===0){ad=$subslice(ad,0,ag);break;}af++;}if($bytesToString(ad)==="."||$bytesToString(ad)===".."){continue;}j=j-(1)>>0;m=m+(1)>>0;k=$append(k,$bytesToString(ad));}ai=o-i.$length>>0;aj=m;ak=k;l=ai;m=aj;n=ak;return[l,m,n];};$pkg.ParseDirent=Z;AF=function(){var $ptr,i,j,k,l,m,n,o,p,q,r;AC={};i=AD;j=0;while(true){if(!(j<i.$length)){break;}k=j;l=((j<0||j>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+j]);m=0;while(true){if(!(m<l.length)){break;}if(l.charCodeAt(m)===61){n=$substring(l,0,m);o=(p=AC[$String.keyFor(n)],p!==undefined?[p.v,true]:[0,false]);q=o[1];if(!q){r=n;(AC||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(r)]={k:r,v:k};}else{((k<0||k>=AD.$length)?($throwRuntimeError("index out of range"),undefined):AD.$array[AD.$offset+k]="");}break;}m=m+(1)>>0;}j++;}};AH=function(i){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);j="";k=false;$r=AA.Do(AF);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(i.length===0){l="";m=false;j=l;k=m;$s=-1;return[j,k];}$r=AB.RLock();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(AB,"RUnlock"),[]]);n=(o=AC[$String.keyFor(i)],o!==undefined?[o.v,true]:[0,false]);p=n[0];q=n[1];if(!q){r="";s=false;j=r;k=s;$s=-1;return[j,k];}t=((p<0||p>=AD.$length)?($throwRuntimeError("index out of range"),undefined):AD.$array[AD.$offset+p]);u=0;while(true){if(!(u<t.length)){break;}if(t.charCodeAt(u)===61){v=$substring(t,(u+1>>0));w=true;j=v;k=w;$s=-1;return[j,k];}u=u+(1)>>0;}x="";y=false;j=x;k=y;$s=-1;return[j,k];}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if(!$curGoroutine.asleep){return[j,k];}if($curGoroutine.asleep){if($f===undefined){$f={$blk:AH};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};$pkg.Getenv=AH;AW=function(i){var $ptr,i;IK(i,2,1);};$pkg.CloseOnExec=AW;BP=function(i,j){var $ptr,i,j;};BQ=function(i,j){var $ptr,i,j;};BR=function(i){var $ptr,i;return(((i+4>>0)-1>>0))&-4;};BS=function(i){var $ptr,i;return(((i+4>>0)-1>>0))&-4;};BT.ptr.prototype.toWireFormat=function(){var $ptr,i,j;i=this;j=$makeSlice(OV,i.Header.Len);$sliceToArray($subslice(j,0,4)).$set(i.Header.Len);$sliceToArray($subslice(j,4,6)).$set(i.Header.Type);$sliceToArray($subslice(j,6,8)).$set(i.Header.Flags);$sliceToArray($subslice(j,8,12)).$set(i.Header.Seq);$sliceToArray($subslice(j,12,16)).$set(i.Header.Pid);(16>=j.$length?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+16]=i.Data.Family);return j;};BT.prototype.toWireFormat=function(){return this.$val.toWireFormat();};BU=function(i,j,k){var $ptr,i,j,k,l;l=new BT.ptr(new OC.ptr(0,0,0,0,0),new OE.ptr(0));l.Header.Len=17;l.Header.Type=(i<<16>>>16);l.Header.Flags=769;l.Header.Seq=(j>>>0);l.Data.Family=(k<<24>>>24);return l.toWireFormat();};BV=function(i,j){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);k=GV(16,3,0);l=k[0];m=k[1];if(!($interfaceIsEqual(m,$ifaceNil))){$s=-1;return[OV.nil,m];}$deferred.push([HW,[l]]);n=new DU.ptr(16,0,0,0,new NL.ptr(0,0,0,0));o=GG(l,n);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=o;if(!($interfaceIsEqual(p,$ifaceNil))){$s=-1;return[OV.nil,p];}q=BU(i,1,j);r=GL(l,q,0,n);$s=2;case 2:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=r;if(!($interfaceIsEqual(s,$ifaceNil))){$s=-1;return[OV.nil,s];}t=OV.nil;u=$makeSlice(OV,CT());done:while(true){v=u;w=GK(l,v,0);x=w[0];y=w[2];if(!($interfaceIsEqual(y,$ifaceNil))){$s=-1;return[OV.nil,y];}if(x<16){$s=-1;return[OV.nil,new FU(22)];}v=$subslice(v,0,x);t=$appendSlice(t,v);z=BX(v);aa=z[0];y=z[1];if(!($interfaceIsEqual(y,$ifaceNil))){$s=-1;return[OV.nil,y];}ab=aa;ac=0;while(true){if(!(ac<ab.$length)){break;}ad=$clone(((ac<0||ac>=ab.$length)?($throwRuntimeError("index out of range"),undefined):ab.$array[ab.$offset+ac]),BW);ae=DY(l);af=ae[0];ag=ae[1];if(!($interfaceIsEqual(ag,$ifaceNil))){$s=-1;return[OV.nil,ag];}ah=af;if($assertType(ah,PU,true)[1]){ai=ah.$val;if(!((ad.Header.Seq===1))||!((ad.Header.Pid===ai.Pid))){$s=-1;return[OV.nil,new FU(22)];}}else{aj=ah;$s=-1;return[OV.nil,new FU(22)];}if(ad.Header.Type===3){break done;}if(ad.Header.Type===2){$s=-1;return[OV.nil,new FU(22)];}ac++;}}$s=-1;return[t,$ifaceNil];}return;}}catch(err){$err=err;$s=-1;return[OV.nil,$ifaceNil];}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:BV};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};$pkg.NetlinkRIB=BV;BX=function(i){var $ptr,i,j,k,l,m,n,o,p;j=PV.nil;while(true){if(!(i.$length>=16)){break;}k=BY(i);l=k[0];m=k[1];n=k[2];o=k[3];if(!($interfaceIsEqual(o,$ifaceNil))){return[PV.nil,o];}p=new BW.ptr($clone(l,OC),$subslice(m,0,((l.Len>>0)-16>>0)));j=$append(j,p);i=$subslice(i,n);}return[j,$ifaceNil];};$pkg.ParseNetlinkMessage=BX;BY=function(i){var $ptr,i,j,k,l,m,n;m=(j=$sliceToArray(i),k=new OC.ptr(0,0,0,0,0),l=new DataView(j.buffer,j.byteOffset),k.Len=l.getUint32(0,true),k.Type=l.getUint16(4,true),k.Flags=l.getUint16(6,true),k.Seq=l.getUint32(8,true),k.Pid=l.getUint32(12,true),k);n=BR((m.Len>>0));if((m.Len>>0)<16||n>i.$length){return[PW.nil,OV.nil,0,new FU(22)];}return[m,$subslice(i,16),n,$ifaceNil];};CA=function(i){var $ptr,i,j,k,l,m,n,o,p,q,r;j=OV.nil;k=i.Header.Type;if((k===(16))||(k===(17))){j=$subslice(i.Data,16);}else if((k===(20))||(k===(21))){j=$subslice(i.Data,8);}else if((k===(24))||(k===(25))){j=$subslice(i.Data,12);}else{return[PX.nil,new FU(22)];}l=PX.nil;while(true){if(!(j.$length>=4)){break;}m=CB(j);n=m[0];o=m[1];p=m[2];q=m[3];if(!($interfaceIsEqual(q,$ifaceNil))){return[PX.nil,q];}r=new BZ.ptr($clone(n,OG),$subslice(o,0,((n.Len>>0)-4>>0)));l=$append(l,r);j=$subslice(j,p);}return[l,$ifaceNil];};$pkg.ParseNetlinkRouteAttr=CA;CB=function(i){var $ptr,i,j,k,l,m;m=(j=$sliceToArray(i),k=new OG.ptr(0,0),l=new DataView(j.buffer,j.byteOffset),k.Len=l.getUint16(0,true),k.Type=l.getUint16(2,true),k);if((m.Len>>0)<4||(m.Len>>0)>i.$length){return[PY.nil,OV.nil,0,new FU(22)];}return[m,$subslice(i,4),BS((m.Len>>0)),$ifaceNil];};CN=function(i){var $ptr,i;if(i<0){return"-"+CO((-i>>>0));}return CO((i>>>0));};CO=function(i){var $ptr,i,j,k,l,m;j=QC.zero();k=31;while(true){if(!(i>=10)){break;}((k<0||k>=j.length)?($throwRuntimeError("index out of range"),undefined):j[k]=(((l=i%10,l===l?l:$throwRuntimeError("integer divide by zero"))+48>>>0)<<24>>>24));k=k-(1)>>0;i=(m=i/(10),(m===m&&m!==1/0&&m!==-1/0)?m>>>0:$throwRuntimeError("integer divide by zero"));}((k<0||k>=j.length)?($throwRuntimeError("index out of range"),undefined):j[k]=((i+48>>>0)<<24>>>24));return $bytesToString($subslice(new OV(j),k));};MT.ptr.prototype.Unix=function(){var $ptr,i,j,k,l,m;i=new $Int64(0,0);j=new $Int64(0,0);k=this;l=k.Sec;m=k.Nsec;i=l;j=m;return[i,j];};MT.prototype.Unix=function(){return this.$val.Unix();};MT.ptr.prototype.Nano=function(){var $ptr,i,j,k;i=this;return(j=$mul64(i.Sec,new $Int64(0,1000000000)),k=i.Nsec,new $Int64(j.$high+k.$high,j.$low+k.$low));};MT.prototype.Nano=function(){return this.$val.Nano();};CT=function(){$throwRuntimeError("native function not implemented: syscall.Getpagesize");};$pkg.Getpagesize=CT;CV=function(i,j){var $ptr,i,j,k;k=$ifaceNil;k=II(-100,i,j,0);return k;};$pkg.Chmod=CV;DB=function(i,j,k){var $ptr,i,j,k,l,m,n;l=0;m=$ifaceNil;n=HG(-100,i,j|0,k);l=n[0];m=n[1];return[l,m];};$pkg.Open=DB;GD.ptr.prototype.sockaddr=function(){var $ptr,i,j,k,l,m,n,o,p,q;i=this;if(i.Port<0||i.Port>65535){return[0,0,new FU(22)];}i.raw.Family=2;k=(j=i.raw,(j.$ptr_Port||(j.$ptr_Port=new PP(function(){return this.$target.Port;},function($v){this.$target.Port=$v;},j))));k.nilCheck,k[0]=((i.Port>>8>>0)<<24>>>24);k.nilCheck,k[1]=(i.Port<<24>>>24);l=0;while(true){if(!(l<4)){break;}(n=i.raw.Addr,((l<0||l>=n.length)?($throwRuntimeError("index out of range"),undefined):n[l]=(m=i.Addr,((l<0||l>=m.length)?($throwRuntimeError("index out of range"),undefined):m[l]))));l=l+(1)>>0;}o=new Uint8Array(16);return[o,16,$ifaceNil];};GD.prototype.sockaddr=function(){return this.$val.sockaddr();};GE.ptr.prototype.sockaddr=function(){var $ptr,i,j,k,l,m,n,o,p,q;i=this;if(i.Port<0||i.Port>65535){return[0,0,new FU(22)];}i.raw.Family=10;k=(j=i.raw,(j.$ptr_Port||(j.$ptr_Port=new PP(function(){return this.$target.Port;},function($v){this.$target.Port=$v;},j))));k.nilCheck,k[0]=((i.Port>>8>>0)<<24>>>24);k.nilCheck,k[1]=(i.Port<<24>>>24);i.raw.Scope_id=i.ZoneId;l=0;while(true){if(!(l<16)){break;}(n=i.raw.Addr,((l<0||l>=n.length)?($throwRuntimeError("index out of range"),undefined):n[l]=(m=i.Addr,((l<0||l>=m.length)?($throwRuntimeError("index out of range"),undefined):m[l]))));l=l+(1)>>0;}o=new Uint8Array(28);return[o,28,$ifaceNil];};GE.prototype.sockaddr=function(){return this.$val.sockaddr();};GF.ptr.prototype.sockaddr=function(){var $ptr,i,j,k,l,m,n,o,p,q;i=this;j=i.Name;k=j.length;if(k>=108){return[0,0,new FU(22)];}i.raw.Family=1;l=0;while(true){if(!(l<k)){break;}(m=i.raw.Path,((l<0||l>=m.length)?($throwRuntimeError("index out of range"),undefined):m[l]=(j.charCodeAt(l)<<24>>24)));l=l+(1)>>0;}n=2;if(k>0){n=n+(((k>>>0)+1>>>0))>>>0;}if(i.raw.Path[0]===64){i.raw.Path[0]=0;n=n-(1)>>>0;}o=new Uint8Array(110);return[o,n,$ifaceNil];};GF.prototype.sockaddr=function(){return this.$val.sockaddr();};DT.ptr.prototype.sockaddr=function(){var $ptr,i,j,k,l,m,n,o;i=this;if(i.Ifindex<0||i.Ifindex>2147483647){return[0,0,new FU(22)];}i.raw.Family=17;i.raw.Protocol=i.Protocol;i.raw.Ifindex=(i.Ifindex>>0);i.raw.Hatype=i.Hatype;i.raw.Pkttype=i.Pkttype;i.raw.Halen=i.Halen;j=0;while(true){if(!(j<8)){break;}(l=i.raw.Addr,((j<0||j>=l.length)?($throwRuntimeError("index out of range"),undefined):l[j]=(k=i.Addr,((j<0||j>=k.length)?($throwRuntimeError("index out of range"),undefined):k[j]))));j=j+(1)>>0;}m=new Uint8Array(20);return[m,20,$ifaceNil];};DT.prototype.sockaddr=function(){return this.$val.sockaddr();};DU.ptr.prototype.sockaddr=function(){var $ptr,i,j,k,l;i=this;i.raw.Family=16;i.raw.Pad=i.Pad;i.raw.Pid=i.Pid;i.raw.Groups=i.Groups;j=new Uint8Array(12);return[j,12,$ifaceNil];};DU.prototype.sockaddr=function(){return this.$val.sockaddr();};DV=function(i){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;j=i.Addr.Family;if(j===(16)){n=new Uint8Array(112);q=(k=n,l=new NL.ptr(0,0,0,0),m=new DataView(k.buffer,k.byteOffset),l.Family=m.getUint16(0,true),l.Pad=m.getUint16(2,true),l.Pid=m.getUint32(4,true),l.Groups=m.getUint32(8,true),l);o=i,p=new DataView(n.buffer,n.byteOffset),o.Addr.Family=p.getUint16(0,true),o.Addr.Data=new($nativeArray($kindInt8))(n.buffer,$min(n.byteOffset+2,n.buffer.byteLength)),o.Pad=new($nativeArray($kindInt8))(n.buffer,$min(n.byteOffset+16,n.buffer.byteLength));r=new DU.ptr(0,0,0,0,new NL.ptr(0,0,0,0));r.Family=q.Family;r.Pad=q.Pad;r.Pid=q.Pid;r.Groups=q.Groups;return[r,$ifaceNil];}else if(j===(17)){v=new Uint8Array(112);y=(s=v,t=new NK.ptr(0,0,0,0,0,0,PO.zero()),u=new DataView(s.buffer,s.byteOffset),t.Family=u.getUint16(0,true),t.Protocol=u.getUint16(2,true),t.Ifindex=u.getInt32(4,true),t.Hatype=u.getUint16(8,true),t.Pkttype=u.getUint8(10,true),t.Halen=u.getUint8(11,true),t.Addr=new($nativeArray($kindUint8))(s.buffer,$min(s.byteOffset+12,s.buffer.byteLength)),t);w=i,x=new DataView(v.buffer,v.byteOffset),w.Addr.Family=x.getUint16(0,true),w.Addr.Data=new($nativeArray($kindInt8))(v.buffer,$min(v.byteOffset+2,v.buffer.byteLength)),w.Pad=new($nativeArray($kindInt8))(v.buffer,$min(v.byteOffset+16,v.buffer.byteLength));z=new DT.ptr(0,0,0,0,0,PO.zero(),new NK.ptr(0,0,0,0,0,0,PO.zero()));z.Protocol=y.Protocol;z.Ifindex=(y.Ifindex>>0);z.Hatype=y.Hatype;z.Pkttype=y.Pkttype;z.Halen=y.Halen;aa=0;while(true){if(!(aa<8)){break;}(ac=z.Addr,((aa<0||aa>=ac.length)?($throwRuntimeError("index out of range"),undefined):ac[aa]=(ab=y.Addr,((aa<0||aa>=ab.length)?($throwRuntimeError("index out of range"),undefined):ab[aa]))));aa=aa+(1)>>0;}return[z,$ifaceNil];}else if(j===(1)){ag=new Uint8Array(112);aj=(ad=ag,ae=new NJ.ptr(0,QI.zero()),af=new DataView(ad.buffer,ad.byteOffset),ae.Family=af.getUint16(0,true),ae.Path=new($nativeArray($kindInt8))(ad.buffer,$min(ad.byteOffset+2,ad.buffer.byteLength)),ae);ah=i,ai=new DataView(ag.buffer,ag.byteOffset),ah.Addr.Family=ai.getUint16(0,true),ah.Addr.Data=new($nativeArray($kindInt8))(ag.buffer,$min(ag.byteOffset+2,ag.buffer.byteLength)),ah.Pad=new($nativeArray($kindInt8))(ag.buffer,$min(ag.byteOffset+16,ag.buffer.byteLength));ak=new GF.ptr("",new NJ.ptr(0,QI.zero()));if(aj.Path[0]===0){aj.Path[0]=64;}al=0;while(true){if(!(al<108&&!(((am=aj.Path,((al<0||al>=am.length)?($throwRuntimeError("index out of range"),undefined):am[al]))===0)))){break;}al=al+(1)>>0;}an=$subslice(new OV($sliceToArray(new OV(aj.Path))),0,al);ak.Name=$bytesToString(an);return[ak,$ifaceNil];}else if(j===(2)){ar=new Uint8Array(112);au=(ao=ar,ap=new NH.ptr(0,0,QJ.zero(),PO.zero()),aq=new DataView(ao.buffer,ao.byteOffset),ap.Family=aq.getUint16(0,true),ap.Port=aq.getUint16(2,true),ap.Addr=new($nativeArray($kindUint8))(ao.buffer,$min(ao.byteOffset+4,ao.buffer.byteLength)),ap.Zero=new($nativeArray($kindUint8))(ao.buffer,$min(ao.byteOffset+8,ao.buffer.byteLength)),ap);as=i,at=new DataView(ar.buffer,ar.byteOffset),as.Addr.Family=at.getUint16(0,true),as.Addr.Data=new($nativeArray($kindInt8))(ar.buffer,$min(ar.byteOffset+2,ar.buffer.byteLength)),as.Pad=new($nativeArray($kindInt8))(ar.buffer,$min(ar.byteOffset+16,ar.buffer.byteLength));av=new GD.ptr(0,QJ.zero(),new NH.ptr(0,0,QJ.zero(),PO.zero()));aw=(au.$ptr_Port||(au.$ptr_Port=new PP(function(){return this.$target.Port;},function($v){this.$target.Port=$v;},au)));av.Port=(((aw.nilCheck,aw[0])>>0)<<8>>0)+((aw.nilCheck,aw[1])>>0)>>0;ax=0;while(true){if(!(ax<4)){break;}(az=av.Addr,((ax<0||ax>=az.length)?($throwRuntimeError("index out of range"),undefined):az[ax]=(ay=au.Addr,((ax<0||ax>=ay.length)?($throwRuntimeError("index out of range"),undefined):ay[ax]))));ax=ax+(1)>>0;}return[av,$ifaceNil];}else if(j===(10)){bd=new Uint8Array(112);bg=(ba=bd,bb=new NI.ptr(0,0,0,PQ.zero(),0),bc=new DataView(ba.buffer,ba.byteOffset),bb.Family=bc.getUint16(0,true),bb.Port=bc.getUint16(2,true),bb.Flowinfo=bc.getUint32(4,true),bb.Addr=new($nativeArray($kindUint8))(ba.buffer,$min(ba.byteOffset+8,ba.buffer.byteLength)),bb.Scope_id=bc.getUint32(24,true),bb);be=i,bf=new DataView(bd.buffer,bd.byteOffset),be.Addr.Family=bf.getUint16(0,true),be.Addr.Data=new($nativeArray($kindInt8))(bd.buffer,$min(bd.byteOffset+2,bd.buffer.byteLength)),be.Pad=new($nativeArray($kindInt8))(bd.buffer,$min(bd.byteOffset+16,bd.buffer.byteLength));bh=new GE.ptr(0,0,PQ.zero(),new NI.ptr(0,0,0,PQ.zero(),0));bi=(bg.$ptr_Port||(bg.$ptr_Port=new PP(function(){return this.$target.Port;},function($v){this.$target.Port=$v;},bg)));bh.Port=(((bi.nilCheck,bi[0])>>0)<<8>>0)+((bi.nilCheck,bi[1])>>0)>>0;bh.ZoneId=bg.Scope_id;bj=0;while(true){if(!(bj<16)){break;}(bl=bh.Addr,((bj<0||bj>=bl.length)?($throwRuntimeError("index out of range"),undefined):bl[bj]=(bk=bg.Addr,((bj<0||bj>=bk.length)?($throwRuntimeError("index out of range"),undefined):bk[bj]))));bj=bj+(1)>>0;}return[bh,$ifaceNil];}return[$ifaceNil,new FU(97)];};DY=function(i){var $ptr,i,j,k,l,m,n,o;j=$ifaceNil;k=$ifaceNil;l=new NN.ptr(new NM.ptr(0,QK.zero()),QL.zero());m=112;k=MH(i,l,(n||(n=new QM(function(){return m;},function($v){m=$v;}))));if(!($interfaceIsEqual(k,$ifaceNil))){return[j,k];}o=DV(l);j=o[0];k=o[1];return[j,k];};$pkg.Getsockname=DY;FB=function(i,j){var $ptr,i,j,k,l,m;k=0;l=$ifaceNil;m=IO(i,j);k=m[0];l=m[1];return[k,l];};$pkg.ReadDirent=FB;FC=function(i){var $ptr,i;return W(i,0,8);};FD=function(i){var $ptr,i;return W(i,16,2);};FE=function(i){var $ptr,i,j,k,l;j=FD(i);k=j[0];l=j[1];if(!l){return[new $Uint64(0,0),false];}return[new $Uint64(k.$high-0,k.$low-19),true];};FT.ptr.prototype.Mmap=function(i,j,k,l,m){var $ptr,aa,ab,ac,ad,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);n=[n];o=OV.nil;p=$ifaceNil;q=this;if(k<=0){r=OV.nil;s=new FU(22);o=r;p=s;$s=-1;return[o,p];}u=q.mmap(0,(k>>>0),l,m,i,j);$s=1;case 1:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}t=u;v=t[0];w=t[1];if(!($interfaceIsEqual(w,$ifaceNil))){x=OV.nil;y=w;o=x;p=y;$s=-1;return[o,p];}n[0]=new QS.ptr(v,k,k);z=n[0];aa=$indexPtr(z.$array,z.$offset+(z.$capacity-1>>0),PF);$r=q.Mutex.Lock();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(q.Mutex,"Unlock"),[]]);ab=aa;(q.active||$throwRuntimeError("assignment to entry in nil map"))[PF.keyFor(ab)]={k:ab,v:z};ac=z;ad=$ifaceNil;o=ac;p=ad;$s=-1;return[o,p];}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if(!$curGoroutine.asleep){return[o,p];}if($curGoroutine.asleep){if($f===undefined){$f={$blk:FT.ptr.prototype.Mmap};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};FT.prototype.Mmap=function(i,j,k,l,m){return this.$val.Mmap(i,j,k,l,m);};FT.ptr.prototype.Munmap=function(i){var $ptr,i,j,k,l,m,n,o,p,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);j=$ifaceNil;k=this;if((i.$length===0)||!((i.$length===i.$capacity))){j=new FU(22);$s=-1;return j;}l=$indexPtr(i.$array,i.$offset+(i.$capacity-1>>0),PF);$r=k.Mutex.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(k.Mutex,"Unlock"),[]]);n=(m=k.active[PF.keyFor(l)],m!==undefined?m.v:OV.nil);if(n===OV.nil||!($indexPtr(n.$array,n.$offset+0,PF)===$indexPtr(i.$array,i.$offset+0,PF))){j=new FU(22);$s=-1;return j;}o=k.munmap($sliceToArray(n),(n.$length>>>0));$s=2;case 2:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=o;if(!($interfaceIsEqual(p,$ifaceNil))){j=p;$s=-1;return j;}delete k.active[PF.keyFor(l)];j=$ifaceNil;$s=-1;return j;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if(!$curGoroutine.asleep){return j;}if($curGoroutine.asleep){if($f===undefined){$f={$blk:FT.ptr.prototype.Munmap};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};FT.prototype.Munmap=function(i){return this.$val.Munmap(i);};FU.prototype.Error=function(){var $ptr,i,j;i=this.$val;if(0<=(i>>0)&&(i>>0)<133){j=((i<0||i>=HD.length)?($throwRuntimeError("index out of range"),undefined):HD[i]);if(!(j==="")){return j;}}return"errno "+CN((i>>0));};$ptrType(FU).prototype.Error=function(){return new FU(this.$get()).Error();};FU.prototype.Temporary=function(){var $ptr,i;i=this.$val;return(i===4)||(i===24)||(i===104)||(i===103)||new FU(i).Timeout();};$ptrType(FU).prototype.Temporary=function(){return new FU(this.$get()).Temporary();};FU.prototype.Timeout=function(){var $ptr,i;i=this.$val;return(i===11)||(i===11)||(i===110);};$ptrType(FU).prototype.Timeout=function(){return new FU(this.$get()).Timeout();};FY=function(i){var $ptr,i,j;j=i;if(j===(0)){return $ifaceNil;}else if(j===(11)){return FV;}else if(j===(22)){return FW;}else if(j===(2)){return FX;}return new FU(i);};GA=function(i,j){var $ptr,i,j,k,l,m;k=0;l=$ifaceNil;m=JI(i,j);k=m[0];l=m[1];if(false){if(k>0){D.WriteRange($sliceToArray(j),k);}if($interfaceIsEqual(l,$ifaceNil)){D.Acquire((PE||(PE=new QT(function(){return GY;},function($v){GY=$v;}))));}}if(false&&k>0){BQ($sliceToArray(j),k);}return[k,l];};$pkg.Read=GA;GB=function(i,j){var $ptr,i,j,k,l,m;k=0;l=$ifaceNil;if(false){D.ReleaseMerge((PE||(PE=new QT(function(){return GY;},function($v){GY=$v;}))));}m=KD(i,j);k=m[0];l=m[1];if(false&&k>0){D.ReadRange($sliceToArray(j),k);}if(false&&k>0){BP($sliceToArray(j),k);}return[k,l];};$pkg.Write=GB;GG=function(i,j){var $ptr,i,j,k,l,m,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:k=$ifaceNil;m=j.sockaddr();$s=1;case 1:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;n=l[0];o=l[1];k=l[2];if(!($interfaceIsEqual(k,$ifaceNil))){k=k;$s=-1;return k;}k=LY(i,n,o);$s=-1;return k;}return;}if($f===undefined){$f={$blk:GG};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Bind=GG;GK=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q,r,s;l=0;m=$ifaceNil;n=$ifaceNil;o=new NN.ptr(new NM.ptr(0,QK.zero()),QL.zero());p=112;q=MI(i,j,k,o,(r||(r=new QM(function(){return p;},function($v){p=$v;}))));l=q[0];n=q[1];if(!($interfaceIsEqual(n,$ifaceNil))){return[l,m,n];}if(!((o.Addr.Family===0))){s=DV(o);m=s[0];n=s[1];}return[l,m,n];};$pkg.Recvfrom=GK;GL=function(i,j,k,l){var $ptr,i,j,k,l,m,n,o,p,q,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=$ifaceNil;o=l.sockaddr();$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n[0];q=n[1];m=n[2];if(!($interfaceIsEqual(m,$ifaceNil))){m=m;$s=-1;return m;}m=MJ(i,j,k,p,q);$s=-1;return m;}return;}if($f===undefined){$f={$blk:GL};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Sendto=GL;GV=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p;l=0;m=$ifaceNil;if((i===10)&&$pkg.SocketDisableIPv6){n=-1;o=new FU(97);l=n;m=o;return[l,m];}p=ME(i,j,k);l=p[0];m=p[1];return[l,m];};$pkg.Socket=GV;HG=function(i,j,k,l){var $ptr,i,j,k,l,m,n,o,p,q,r,s;m=0;n=$ifaceNil;o=PF.nil;p=V(j);o=p[0];n=p[1];if(!($interfaceIsEqual(n,$ifaceNil))){return[m,n];}q=S(257,(i>>>0),o,(k>>>0),(l>>>0),0,0);r=q[0];s=q[2];J(o);m=(r>>0);if(!((s===0))){n=FY(s);}return[m,n];};HW=function(i){var $ptr,i,j,k,l;j=$ifaceNil;k=R(3,(i>>>0),0,0);l=k[2];if(!((l===0))){j=FY(l);}return j;};$pkg.Close=HW;ID=function(i){var $ptr,i;R(231,(i>>>0),0,0);return;};$pkg.Exit=ID;IG=function(i){var $ptr,i,j,k,l;j=$ifaceNil;k=R(81,(i>>>0),0,0);l=k[2];if(!((l===0))){j=FY(l);}return j;};$pkg.Fchdir=IG;IH=function(i,j){var $ptr,i,j,k,l,m;k=$ifaceNil;l=R(91,(i>>>0),(j>>>0),0);m=l[2];if(!((m===0))){k=FY(m);}return k;};$pkg.Fchmod=IH;II=function(i,j,k,l){var $ptr,i,j,k,l,m,n,o,p,q;m=$ifaceNil;n=PF.nil;o=V(j);n=o[0];m=o[1];if(!($interfaceIsEqual(m,$ifaceNil))){return m;}p=S(268,(i>>>0),n,(k>>>0),(l>>>0),0,0);q=p[2];J(n);if(!((q===0))){m=FY(q);}return m;};$pkg.Fchmodat=II;IK=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p;l=0;m=$ifaceNil;n=R(72,(i>>>0),(j>>>0),(k>>>0));o=n[0];p=n[2];l=(o>>0);if(!((p===0))){m=FY(p);}return[l,m];};IN=function(i){var $ptr,i,j,k,l;j=$ifaceNil;k=R(74,(i>>>0),0,0);l=k[2];if(!((l===0))){j=FY(l);}return j;};$pkg.Fsync=IN;IO=function(i,j){var $ptr,i,j,k,l,m,n,o,p;k=0;l=$ifaceNil;m=0;if(j.$length>0){m=$sliceToArray(j);}else{m=new Uint8Array(0);}n=R(217,(i>>>0),m,(j.$length>>>0));o=n[0];p=n[2];k=(o>>0);if(!((p===0))){l=FY(p);}return[k,l];};$pkg.Getdents=IO;JI=function(i,j){var $ptr,i,j,k,l,m,n,o,p;k=0;l=$ifaceNil;m=0;if(j.$length>0){m=$sliceToArray(j);}else{m=new Uint8Array(0);}n=R(0,(i>>>0),m,(j.$length>>>0));o=n[0];p=n[2];k=(o>>0);if(!((p===0))){l=FY(p);}return[k,l];};KD=function(i,j){var $ptr,i,j,k,l,m,n,o,p;k=0;l=$ifaceNil;m=0;if(j.$length>0){m=$sliceToArray(j);}else{m=new Uint8Array(0);}n=R(1,(i>>>0),m,(j.$length>>>0));o=n[0];p=n[2];k=(o>>0);if(!((p===0))){l=FY(p);}return[k,l];};KH=function(i,j){var $ptr,i,j,k,l,m;k=$ifaceNil;l=R(11,i,j,0);m=l[2];if(!((m===0))){k=FY(m);}return k;};KP=function(i,j,k){var $ptr,i,j,k,l,m,n;l=$ifaceNil;m=R(93,(i>>>0),(j>>>0),(k>>>0));n=m[2];if(!((n===0))){l=FY(n);}return l;};$pkg.Fchown=KP;KQ=function(i,j){var $ptr,i,j,k,l,m,n,o,p;k=$ifaceNil;m=new Uint8Array(144);l=R(5,(i>>>0),m,0);n=j,o=new DataView(m.buffer,m.byteOffset),n.Dev=new $Uint64(o.getUint32(4,true),o.getUint32(0,true)),n.Ino=new $Uint64(o.getUint32(12,true),o.getUint32(8,true)),n.Nlink=new $Uint64(o.getUint32(20,true),o.getUint32(16,true)),n.Mode=o.getUint32(24,true),n.Uid=o.getUint32(28,true),n.Gid=o.getUint32(32,true),n.X__pad0=o.getInt32(36,true),n.Rdev=new $Uint64(o.getUint32(44,true),o.getUint32(40,true)),n.Size=new $Int64(o.getUint32(52,true),o.getUint32(48,true)),n.Blksize=new $Int64(o.getUint32(60,true),o.getUint32(56,true)),n.Blocks=new $Int64(o.getUint32(68,true),o.getUint32(64,true)),n.Atim.Sec=new $Int64(o.getUint32(76,true),o.getUint32(72,true)),n.Atim.Nsec=new $Int64(o.getUint32(84,true),o.getUint32(80,true)),n.Mtim.Sec=new $Int64(o.getUint32(92,true),o.getUint32(88,true)),n.Mtim.Nsec=new $Int64(o.getUint32(100,true),o.getUint32(96,true)),n.Ctim.Sec=new $Int64(o.getUint32(108,true),o.getUint32(104,true)),n.Ctim.Nsec=new $Int64(o.getUint32(116,true),o.getUint32(112,true)),n.X__unused=new($nativeArray($kindInt64))(m.buffer,$min(m.byteOffset+120,m.buffer.byteLength));p=l[2];if(!((p===0))){k=FY(p);}return k;};$pkg.Fstat=KQ;KS=function(i,j){var $ptr,i,j,k,l,m;k=$ifaceNil;l=R(77,(i>>>0),(j.$low>>>0),0);m=l[2];if(!((m===0))){k=FY(m);}return k;};$pkg.Ftruncate=KS;KV=function(){var $ptr,i,j,k;i=0;j=T(104,0,0,0);k=j[0];i=(k>>0);return i;};$pkg.Getgid=KV;KX=function(){var $ptr,i,j,k;i=0;j=T(102,0,0,0);k=j[0];i=(k>>0);return i;};$pkg.Getuid=KX;LD=function(i,j){var $ptr,i,j,k,l,m,n,o,p,q,r;k=$ifaceNil;l=PF.nil;m=V(i);l=m[0];k=m[1];if(!($interfaceIsEqual(k,$ifaceNil))){return k;}o=new Uint8Array(144);n=R(6,l,o,0);p=j,q=new DataView(o.buffer,o.byteOffset),p.Dev=new $Uint64(q.getUint32(4,true),q.getUint32(0,true)),p.Ino=new $Uint64(q.getUint32(12,true),q.getUint32(8,true)),p.Nlink=new $Uint64(q.getUint32(20,true),q.getUint32(16,true)),p.Mode=q.getUint32(24,true),p.Uid=q.getUint32(28,true),p.Gid=q.getUint32(32,true),p.X__pad0=q.getInt32(36,true),p.Rdev=new $Uint64(q.getUint32(44,true),q.getUint32(40,true)),p.Size=new $Int64(q.getUint32(52,true),q.getUint32(48,true)),p.Blksize=new $Int64(q.getUint32(60,true),q.getUint32(56,true)),p.Blocks=new $Int64(q.getUint32(68,true),q.getUint32(64,true)),p.Atim.Sec=new $Int64(q.getUint32(76,true),q.getUint32(72,true)),p.Atim.Nsec=new $Int64(q.getUint32(84,true),q.getUint32(80,true)),p.Mtim.Sec=new $Int64(q.getUint32(92,true),q.getUint32(88,true)),p.Mtim.Nsec=new $Int64(q.getUint32(100,true),q.getUint32(96,true)),p.Ctim.Sec=new $Int64(q.getUint32(108,true),q.getUint32(104,true)),p.Ctim.Nsec=new $Int64(q.getUint32(116,true),q.getUint32(112,true)),p.X__unused=new($nativeArray($kindInt64))(o.buffer,$min(o.byteOffset+120,o.buffer.byteLength));r=n[2];J(l);if(!((r===0))){k=FY(r);}return k;};$pkg.Lstat=LD;LE=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q;l=0;m=$ifaceNil;n=0;if(j.$length>0){n=$sliceToArray(j);}else{n=new Uint8Array(0);}o=S(17,(i>>>0),n,(j.$length>>>0),(k.$low>>>0),0,0);p=o[0];q=o[2];l=(p>>0);if(!((q===0))){m=FY(q);}return[l,m];};$pkg.Pread=LE;LF=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q;l=0;m=$ifaceNil;n=0;if(j.$length>0){n=$sliceToArray(j);}else{n=new Uint8Array(0);}o=S(18,(i>>>0),n,(j.$length>>>0),(k.$low>>>0),0,0);p=o[0];q=o[2];l=(p>>0);if(!((q===0))){m=FY(q);}return[l,m];};$pkg.Pwrite=LF;LG=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p;l=new $Int64(0,0);m=$ifaceNil;n=R(8,(i>>>0),(j.$low>>>0),(k>>>0));o=n[0];p=n[2];l=new $Int64(0,o.constructor===Number?o:1);if(!((p===0))){m=FY(p);}return[l,m];};$pkg.Seek=LG;LS=function(i,j){var $ptr,i,j,k,l,m,n,o,p,q,r;k=$ifaceNil;l=PF.nil;m=V(i);l=m[0];k=m[1];if(!($interfaceIsEqual(k,$ifaceNil))){return k;}o=new Uint8Array(144);n=R(4,l,o,0);p=j,q=new DataView(o.buffer,o.byteOffset),p.Dev=new $Uint64(q.getUint32(4,true),q.getUint32(0,true)),p.Ino=new $Uint64(q.getUint32(12,true),q.getUint32(8,true)),p.Nlink=new $Uint64(q.getUint32(20,true),q.getUint32(16,true)),p.Mode=q.getUint32(24,true),p.Uid=q.getUint32(28,true),p.Gid=q.getUint32(32,true),p.X__pad0=q.getInt32(36,true),p.Rdev=new $Uint64(q.getUint32(44,true),q.getUint32(40,true)),p.Size=new $Int64(q.getUint32(52,true),q.getUint32(48,true)),p.Blksize=new $Int64(q.getUint32(60,true),q.getUint32(56,true)),p.Blocks=new $Int64(q.getUint32(68,true),q.getUint32(64,true)),p.Atim.Sec=new $Int64(q.getUint32(76,true),q.getUint32(72,true)),p.Atim.Nsec=new $Int64(q.getUint32(84,true),q.getUint32(80,true)),p.Mtim.Sec=new $Int64(q.getUint32(92,true),q.getUint32(88,true)),p.Mtim.Nsec=new $Int64(q.getUint32(100,true),q.getUint32(96,true)),p.Ctim.Sec=new $Int64(q.getUint32(108,true),q.getUint32(104,true)),p.Ctim.Nsec=new $Int64(q.getUint32(116,true),q.getUint32(112,true)),p.X__unused=new($nativeArray($kindInt64))(o.buffer,$min(o.byteOffset+120,o.buffer.byteLength));r=n[2];J(l);if(!((r===0))){k=FY(r);}return k;};$pkg.Stat=LS;LY=function(i,j,k){var $ptr,i,j,k,l,m,n;l=$ifaceNil;m=R(49,(i>>>0),j,(k>>>0));n=m[2];if(!((n===0))){l=FY(n);}return l;};ME=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p;l=0;m=$ifaceNil;n=T(41,(i>>>0),(j>>>0),(k>>>0));o=n[0];p=n[2];l=(o>>0);if(!((p===0))){m=FY(p);}return[l,m];};MH=function(i,j,k){var $ptr,i,j,k,l,m,n,o,p,q;l=$ifaceNil;n=new Uint8Array(112);m=T(51,(i>>>0),n,k);o=j,p=new DataView(n.buffer,n.byteOffset),o.Addr.Family=p.getUint16(0,true),o.Addr.Data=new($nativeArray($kindInt8))(n.buffer,$min(n.byteOffset+2,n.buffer.byteLength)),o.Pad=new($nativeArray($kindInt8))(n.buffer,$min(n.byteOffset+16,n.buffer.byteLength));q=m[2];if(!((q===0))){l=FY(q);}return l;};MI=function(i,j,k,l,m){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v;n=0;o=$ifaceNil;p=0;if(j.$length>0){p=$sliceToArray(j);}else{p=new Uint8Array(0);}r=new Uint8Array(112);q=S(45,(i>>>0),p,(j.$length>>>0),(k>>>0),r,m);s=l,t=new DataView(r.buffer,r.byteOffset),s.Addr.Family=t.getUint16(0,true),s.Addr.Data=new($nativeArray($kindInt8))(r.buffer,$min(r.byteOffset+2,r.buffer.byteLength)),s.Pad=new($nativeArray($kindInt8))(r.buffer,$min(r.byteOffset+16,r.buffer.byteLength));u=q[0];v=q[2];n=(u>>0);if(!((v===0))){o=FY(v);}return[n,o];};MJ=function(i,j,k,l,m){var $ptr,i,j,k,l,m,n,o,p,q;n=$ifaceNil;o=0;if(j.$length>0){o=$sliceToArray(j);}else{o=new Uint8Array(0);}p=S(44,(i>>>0),o,(j.$length>>>0),(k>>>0),l,(m>>>0));q=p[2];if(!((q===0))){n=FY(q);}return n;};MM=function(i,j,k,l,m,n){var $ptr,i,j,k,l,m,n,o,p,q,r,s;o=0;p=$ifaceNil;q=S(9,i,j,(k>>>0),(l>>>0),(m>>>0),(n.$low>>>0));r=q[0];s=q[2];o=r;if(!((s===0))){p=FY(s);}return[o,p];};QW.methods=[{prop:"toWireFormat",name:"toWireFormat",pkg:"syscall",typ:$funcType([],[OV],false)}];QX.methods=[{prop:"sockaddr",name:"sockaddr",pkg:"syscall",typ:$funcType([],[$UnsafePointer,NO,$error],false)}];PU.methods=[{prop:"sockaddr",name:"sockaddr",pkg:"syscall",typ:$funcType([],[$UnsafePointer,NO,$error],false)}];QY.methods=[{prop:"Mmap",name:"Mmap",pkg:"",typ:$funcType([$Int,$Int64,$Int,$Int,$Int],[OV,$error],false)},{prop:"Munmap",name:"Munmap",pkg:"",typ:$funcType([OV],[$error],false)}];FU.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)},{prop:"Temporary",name:"Temporary",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Timeout",name:"Timeout",pkg:"",typ:$funcType([],[$Bool],false)}];RC.methods=[{prop:"sockaddr",name:"sockaddr",pkg:"syscall",typ:$funcType([],[$UnsafePointer,NO,$error],false)}];RD.methods=[{prop:"sockaddr",name:"sockaddr",pkg:"syscall",typ:$funcType([],[$UnsafePointer,NO,$error],false)}];RE.methods=[{prop:"sockaddr",name:"sockaddr",pkg:"syscall",typ:$funcType([],[$UnsafePointer,NO,$error],false)}];RF.methods=[{prop:"Unix",name:"Unix",pkg:"",typ:$funcType([],[$Int64,$Int64],false)},{prop:"Nano",name:"Nano",pkg:"",typ:$funcType([],[$Int64],false)}];BT.init("",[{prop:"Header",name:"Header",exported:true,typ:OC,tag:""},{prop:"Data",name:"Data",exported:true,typ:OE,tag:""}]);BW.init("",[{prop:"Header",name:"Header",exported:true,typ:OC,tag:""},{prop:"Data",name:"Data",exported:true,typ:OV,tag:""}]);BZ.init("",[{prop:"Attr",name:"Attr",exported:true,typ:OG,tag:""},{prop:"Value",name:"Value",exported:true,typ:OV,tag:""}]);DT.init("syscall",[{prop:"Protocol",name:"Protocol",exported:true,typ:$Uint16,tag:""},{prop:"Ifindex",name:"Ifindex",exported:true,typ:$Int,tag:""},{prop:"Hatype",name:"Hatype",exported:true,typ:$Uint16,tag:""},{prop:"Pkttype",name:"Pkttype",exported:true,typ:$Uint8,tag:""},{prop:"Halen",name:"Halen",exported:true,typ:$Uint8,tag:""},{prop:"Addr",name:"Addr",exported:true,typ:PO,tag:""},{prop:"raw",name:"raw",exported:false,typ:NK,tag:""}]);DU.init("syscall",[{prop:"Family",name:"Family",exported:true,typ:$Uint16,tag:""},{prop:"Pad",name:"Pad",exported:true,typ:$Uint16,tag:""},{prop:"Pid",name:"Pid",exported:true,typ:$Uint32,tag:""},{prop:"Groups",name:"Groups",exported:true,typ:$Uint32,tag:""},{prop:"raw",name:"raw",exported:false,typ:NL,tag:""}]);FT.init("syscall",[{prop:"Mutex",name:"",exported:true,typ:C.Mutex,tag:""},{prop:"active",name:"active",exported:false,typ:QZ,tag:""},{prop:"mmap",name:"mmap",exported:false,typ:RA,tag:""},{prop:"munmap",name:"munmap",exported:false,typ:RB,tag:""}]);GC.init([{prop:"sockaddr",name:"sockaddr",pkg:"syscall",typ:$funcType([],[$UnsafePointer,NO,$error],false)}]);GD.init("syscall",[{prop:"Port",name:"Port",exported:true,typ:$Int,tag:""},{prop:"Addr",name:"Addr",exported:true,typ:QJ,tag:""},{prop:"raw",name:"raw",exported:false,typ:NH,tag:""}]);GE.init("syscall",[{prop:"Port",name:"Port",exported:true,typ:$Int,tag:""},{prop:"ZoneId",name:"ZoneId",exported:true,typ:$Uint32,tag:""},{prop:"Addr",name:"Addr",exported:true,typ:PQ,tag:""},{prop:"raw",name:"raw",exported:false,typ:NI,tag:""}]);GF.init("syscall",[{prop:"Name",name:"Name",exported:true,typ:$String,tag:""},{prop:"raw",name:"raw",exported:false,typ:NJ,tag:""}]);MT.init("",[{prop:"Sec",name:"Sec",exported:true,typ:$Int64,tag:""},{prop:"Nsec",name:"Nsec",exported:true,typ:$Int64,tag:""}]);NC.init("",[{prop:"Dev",name:"Dev",exported:true,typ:$Uint64,tag:""},{prop:"Ino",name:"Ino",exported:true,typ:$Uint64,tag:""},{prop:"Nlink",name:"Nlink",exported:true,typ:$Uint64,tag:""},{prop:"Mode",name:"Mode",exported:true,typ:$Uint32,tag:""},{prop:"Uid",name:"Uid",exported:true,typ:$Uint32,tag:""},{prop:"Gid",name:"Gid",exported:true,typ:$Uint32,tag:""},{prop:"X__pad0",name:"X__pad0",exported:true,typ:$Int32,tag:""},{prop:"Rdev",name:"Rdev",exported:true,typ:$Uint64,tag:""},{prop:"Size",name:"Size",exported:true,typ:$Int64,tag:""},{prop:"Blksize",name:"Blksize",exported:true,typ:$Int64,tag:""},{prop:"Blocks",name:"Blocks",exported:true,typ:$Int64,tag:""},{prop:"Atim",name:"Atim",exported:true,typ:MT,tag:""},{prop:"Mtim",name:"Mtim",exported:true,typ:MT,tag:""},{prop:"Ctim",name:"Ctim",exported:true,typ:MT,tag:""},{prop:"X__unused",name:"X__unused",exported:true,typ:RI,tag:""}]);NH.init("",[{prop:"Family",name:"Family",exported:true,typ:$Uint16,tag:""},{prop:"Port",name:"Port",exported:true,typ:$Uint16,tag:""},{prop:"Addr",name:"Addr",exported:true,typ:QJ,tag:""},{prop:"Zero",name:"Zero",exported:true,typ:PO,tag:""}]);NI.init("",[{prop:"Family",name:"Family",exported:true,typ:$Uint16,tag:""},{prop:"Port",name:"Port",exported:true,typ:$Uint16,tag:""},{prop:"Flowinfo",name:"Flowinfo",exported:true,typ:$Uint32,tag:""},{prop:"Addr",name:"Addr",exported:true,typ:PQ,tag:""},{prop:"Scope_id",name:"Scope_id",exported:true,typ:$Uint32,tag:""}]);NJ.init("",[{prop:"Family",name:"Family",exported:true,typ:$Uint16,tag:""},{prop:"Path",name:"Path",exported:true,typ:QI,tag:""}]);NK.init("",[{prop:"Family",name:"Family",exported:true,typ:$Uint16,tag:""},{prop:"Protocol",name:"Protocol",exported:true,typ:$Uint16,tag:""},{prop:"Ifindex",name:"Ifindex",exported:true,typ:$Int32,tag:""},{prop:"Hatype",name:"Hatype",exported:true,typ:$Uint16,tag:""},{prop:"Pkttype",name:"Pkttype",exported:true,typ:$Uint8,tag:""},{prop:"Halen",name:"Halen",exported:true,typ:$Uint8,tag:""},{prop:"Addr",name:"Addr",exported:true,typ:PO,tag:""}]);NL.init("",[{prop:"Family",name:"Family",exported:true,typ:$Uint16,tag:""},{prop:"Pad",name:"Pad",exported:true,typ:$Uint16,tag:""},{prop:"Pid",name:"Pid",exported:true,typ:$Uint32,tag:""},{prop:"Groups",name:"Groups",exported:true,typ:$Uint32,tag:""}]);NM.init("",[{prop:"Family",name:"Family",exported:true,typ:$Uint16,tag:""},{prop:"Data",name:"Data",exported:true,typ:QK,tag:""}]);NN.init("",[{prop:"Addr",name:"Addr",exported:true,typ:NM,tag:""},{prop:"Pad",name:"Pad",exported:true,typ:QL,tag:""}]);OC.init("",[{prop:"Len",name:"Len",exported:true,typ:$Uint32,tag:""},{prop:"Type",name:"Type",exported:true,typ:$Uint16,tag:""},{prop:"Flags",name:"Flags",exported:true,typ:$Uint16,tag:""},{prop:"Seq",name:"Seq",exported:true,typ:$Uint32,tag:""},{prop:"Pid",name:"Pid",exported:true,typ:$Uint32,tag:""}]);OE.init("",[{prop:"Family",name:"Family",exported:true,typ:$Uint8,tag:""}]);OG.init("",[{prop:"Len",name:"Len",exported:true,typ:$Uint16,tag:""},{prop:"Type",name:"Type",exported:true,typ:$Uint16,tag:""}]);OH.init("",[{prop:"Family",name:"Family",exported:true,typ:$Uint8,tag:""},{prop:"X__ifi_pad",name:"X__ifi_pad",exported:true,typ:$Uint8,tag:""},{prop:"Type",name:"Type",exported:true,typ:$Uint16,tag:""},{prop:"Index",name:"Index",exported:true,typ:$Int32,tag:""},{prop:"Flags",name:"Flags",exported:true,typ:$Uint32,tag:""},{prop:"Change",name:"Change",exported:true,typ:$Uint32,tag:""}]);OI.init("",[{prop:"Family",name:"Family",exported:true,typ:$Uint8,tag:""},{prop:"Prefixlen",name:"Prefixlen",exported:true,typ:$Uint8,tag:""},{prop:"Flags",name:"Flags",exported:true,typ:$Uint8,tag:""},{prop:"Scope",name:"Scope",exported:true,typ:$Uint8,tag:""},{prop:"Index",name:"Index",exported:true,typ:$Uint32,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}F=OV.nil;N=null;AA=new C.Once.ptr(new C.Mutex.ptr(0,0),0);AB=new C.RWMutex.ptr(new C.Mutex.ptr(0,0),0,0,0,0);AC=false;$pkg.SocketDisableIPv6=false;GY=new $Int64(0,0);E=false;O=false;P=-1;AD=L();$pkg.Stdin=0;$pkg.Stdout=1;$pkg.Stderr=2;FV=new FU(11);FW=new FU(22);FX=new FU(2);HD=$toNativeArray($kindString,["","operation not permitted","no such file or directory","no such process","interrupted system call","input/output error","no such device or address","argument list too long","exec format error","bad file descriptor","no child processes","resource temporarily unavailable","cannot allocate memory","permission denied","bad address","block device required","device or resource busy","file exists","invalid cross-device link","no such device","not a directory","is a directory","invalid argument","too many open files in system","too many open files","inappropriate ioctl for device","text file busy","file too large","no space left on device","illegal seek","read-only file system","too many links","broken pipe","numerical argument out of domain","numerical result out of range","resource deadlock avoided","file name too long","no locks available","function not implemented","directory not empty","too many levels of symbolic links","","no message of desired type","identifier removed","channel number out of range","level 2 not synchronized","level 3 halted","level 3 reset","link number out of range","protocol driver not attached","no CSI structure available","level 2 halted","invalid exchange","invalid request descriptor","exchange full","no anode","invalid request code","invalid slot","","bad font file format","device not a stream","no data available","timer expired","out of streams resources","machine is not on the network","package not installed","object is remote","link has been severed","advertise error","srmount error","communication error on send","protocol error","multihop attempted","RFS specific error","bad message","value too large for defined data type","name not unique on network","file descriptor in bad state","remote address changed","can not access a needed shared library","accessing a corrupted shared library",".lib section in a.out corrupted","attempting to link in too many shared libraries","cannot exec a shared library directly","invalid or incomplete multibyte or wide character","interrupted system call should be restarted","streams pipe error","too many users","socket operation on non-socket","destination address required","message too long","protocol wrong type for socket","protocol not available","protocol not supported","socket type not supported","operation not supported","protocol family not supported","address family not supported by protocol","address already in use","cannot assign requested address","network is down","network is unreachable","network dropped connection on reset","software caused connection abort","connection reset by peer","no buffer space available","transport endpoint is already connected","transport endpoint is not connected","cannot send after transport endpoint shutdown","too many references: cannot splice","connection timed out","connection refused","host is down","no route to host","operation already in progress","operation now in progress","stale NFS file handle","structure needs cleaning","not a XENIX named type file","no XENIX semaphores available","is a named type file","remote I/O error","disk quota exceeded","no medium found","wrong medium type","operation canceled","required key not available","key has expired","key has been revoked","key was rejected by service","owner died","state not recoverable","operation not possible due to RF-kill"]);FJ=new FT.ptr(new C.Mutex.ptr(0,0),{},MM,KH);G();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["github.com/gopherjs/gopherjs/nosync"]=(function(){var $pkg={},$init,A,D,E,F,I,J,K,L,M;A=$pkg.Mutex=$newType(0,$kindStruct,"nosync.Mutex",true,"github.com/gopherjs/gopherjs/nosync",true,function(locked_){this.$val=this;if(arguments.length===0){this.locked=false;return;}this.locked=locked_;});D=$pkg.Once=$newType(0,$kindStruct,"nosync.Once",true,"github.com/gopherjs/gopherjs/nosync",true,function(doing_,done_){this.$val=this;if(arguments.length===0){this.doing=false;this.done=false;return;}this.doing=doing_;this.done=done_;});E=$pkg.Pool=$newType(0,$kindStruct,"nosync.Pool",true,"github.com/gopherjs/gopherjs/nosync",true,function(store_,New_){this.$val=this;if(arguments.length===0){this.store=K.nil;this.New=$throwNilPointerError;return;}this.store=store_;this.New=New_;});F=$ptrType(A);I=$funcType([],[],false);J=$ptrType(D);K=$sliceType($emptyInterface);L=$ptrType(E);M=$funcType([],[$emptyInterface],false);A.ptr.prototype.Lock=function(){var $ptr,a;a=this;if(a.locked){$panic(new $String("nosync: mutex is already locked"));}a.locked=true;};A.prototype.Lock=function(){return this.$val.Lock();};A.ptr.prototype.Unlock=function(){var $ptr,a;a=this;if(!a.locked){$panic(new $String("nosync: unlock of unlocked mutex"));}a.locked=false;};A.prototype.Unlock=function(){return this.$val.Unlock();};D.ptr.prototype.Do=function(a){var $ptr,a,b,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);b=[b];b[0]=this;if(b[0].done){$s=-1;return;}if(b[0].doing){$panic(new $String("nosync: Do called within f"));}b[0].doing=true;$deferred.push([(function(b){return function(){var $ptr;b[0].doing=false;b[0].done=true;};})(b),[]]);$r=a();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:D.ptr.prototype.Do};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};D.prototype.Do=function(a){return this.$val.Do(a);};E.ptr.prototype.Get=function(){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;if(a.store.$length===0){$s=1;continue;}$s=2;continue;case 1:if(!(a.New===$throwNilPointerError)){$s=3;continue;}$s=4;continue;case 3:b=a.New();$s=5;case 5:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=-1;return b;case 4:$s=-1;return $ifaceNil;case 2:e=(c=a.store,d=a.store.$length-1>>0,((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]));a.store=$subslice(a.store,0,(a.store.$length-1>>0));$s=-1;return e;}return;}if($f===undefined){$f={$blk:E.ptr.prototype.Get};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};E.prototype.Get=function(){return this.$val.Get();};E.ptr.prototype.Put=function(a){var $ptr,a,b;b=this;if($interfaceIsEqual(a,$ifaceNil)){return;}b.store=$append(b.store,a);};E.prototype.Put=function(a){return this.$val.Put(a);};F.methods=[{prop:"Lock",name:"Lock",pkg:"",typ:$funcType([],[],false)},{prop:"Unlock",name:"Unlock",pkg:"",typ:$funcType([],[],false)}];J.methods=[{prop:"Do",name:"Do",pkg:"",typ:$funcType([I],[],false)}];L.methods=[{prop:"Get",name:"Get",pkg:"",typ:$funcType([],[$emptyInterface],false)},{prop:"Put",name:"Put",pkg:"",typ:$funcType([$emptyInterface],[],false)}];A.init("github.com/gopherjs/gopherjs/nosync",[{prop:"locked",name:"locked",exported:false,typ:$Bool,tag:""}]);D.init("github.com/gopherjs/gopherjs/nosync",[{prop:"doing",name:"doing",exported:false,typ:$Bool,tag:""},{prop:"done",name:"done",exported:false,typ:$Bool,tag:""}]);E.init("github.com/gopherjs/gopherjs/nosync",[{prop:"store",name:"store",exported:false,typ:K,tag:""},{prop:"New",name:"New",exported:true,typ:M,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["time"]=(function(){var $pkg={},$init,C,B,E,A,D,AF,BM,BN,BP,BT,CH,CI,CJ,DC,DD,DE,DF,DH,DI,DJ,DK,DL,DP,DT,DX,R,U,V,W,X,AB,AE,AR,AU,BO,BQ,BZ,CK,DA,CL,DB,CM,CO,CS,k,l,F,H,I,J,Q,S,T,Y,Z,AA,AC,AD,AG,AH,AI,AJ,AK,AL,AN,AO,AP,AQ,AS,AT,AV,BR,BS,BU,BV,BY,CA,CB,CC,CD,CE,CF,CG,CN;C=$packages["errors"];B=$packages["github.com/gopherjs/gopherjs/js"];E=$packages["github.com/gopherjs/gopherjs/nosync"];A=$packages["runtime"];D=$packages["syscall"];AF=$pkg.ParseError=$newType(0,$kindStruct,"time.ParseError",true,"time",true,function(Layout_,Value_,LayoutElem_,ValueElem_,Message_){this.$val=this;if(arguments.length===0){this.Layout="";this.Value="";this.LayoutElem="";this.ValueElem="";this.Message="";return;}this.Layout=Layout_;this.Value=Value_;this.LayoutElem=LayoutElem_;this.ValueElem=ValueElem_;this.Message=Message_;});BM=$pkg.Time=$newType(0,$kindStruct,"time.Time",true,"time",true,function(sec_,nsec_,loc_){this.$val=this;if(arguments.length===0){this.sec=new $Int64(0,0);this.nsec=0;this.loc=DL.nil;return;}this.sec=sec_;this.nsec=nsec_;this.loc=loc_;});BN=$pkg.Month=$newType(4,$kindInt,"time.Month",true,"time",true,null);BP=$pkg.Weekday=$newType(4,$kindInt,"time.Weekday",true,"time",true,null);BT=$pkg.Duration=$newType(8,$kindInt64,"time.Duration",true,"time",true,null);CH=$pkg.Location=$newType(0,$kindStruct,"time.Location",true,"time",true,function(name_,zone_,tx_,cacheStart_,cacheEnd_,cacheZone_){this.$val=this;if(arguments.length===0){this.name="";this.zone=DC.nil;this.tx=DD.nil;this.cacheStart=new $Int64(0,0);this.cacheEnd=new $Int64(0,0);this.cacheZone=DE.nil;return;}this.name=name_;this.zone=zone_;this.tx=tx_;this.cacheStart=cacheStart_;this.cacheEnd=cacheEnd_;this.cacheZone=cacheZone_;});CI=$pkg.zone=$newType(0,$kindStruct,"time.zone",true,"time",false,function(name_,offset_,isDST_){this.$val=this;if(arguments.length===0){this.name="";this.offset=0;this.isDST=false;return;}this.name=name_;this.offset=offset_;this.isDST=isDST_;});CJ=$pkg.zoneTrans=$newType(0,$kindStruct,"time.zoneTrans",true,"time",false,function(when_,index_,isstd_,isutc_){this.$val=this;if(arguments.length===0){this.when=new $Int64(0,0);this.index=0;this.isstd=false;this.isutc=false;return;}this.when=when_;this.index=index_;this.isstd=isstd_;this.isutc=isutc_;});DC=$sliceType(CI);DD=$sliceType(CJ);DE=$ptrType(CI);DF=$sliceType($String);DH=$arrayType($Uint8,20);DI=$sliceType($Uint8);DJ=$arrayType($Uint8,9);DK=$arrayType($Uint8,64);DL=$ptrType(CH);DP=$arrayType($Uint8,32);DT=$ptrType(AF);DX=$ptrType(BM);F=function(){var $ptr;$unused(CC(new $Int64(0,0),new $Int64(0,0)));};H=function(){var $ptr,m,n,o,p;m=new($global.Date)();n=$internalize(m,$String);o=Q(n,40);p=Q(n,41);if((o===-1)||(p===-1)){CL.name="UTC";return;}CL.name=$substring(n,(o+1>>0),p);CL.zone=new DC([new CI.ptr(CL.name,$imul(($parseInt(m.getTimezoneOffset())>>0),-60),false)]);};I=function(){var $ptr;return $mul64($internalize(new($global.Date)().getTime(),$Int64),new $Int64(0,1000000));};J=function(){var $ptr,m,n,o,p,q,r;m=new $Int64(0,0);n=0;o=I();p=$div64(o,new $Int64(0,1000000000),false);q=((r=$div64(o,new $Int64(0,1000000000),true),r.$low+((r.$high>>31)*4294967296))>>0);m=p;n=q;return[m,n];};Q=function(m,n){var $ptr,m,n;return $parseInt(m.indexOf($global.String.fromCharCode(n)))>>0;};S=function(m){var $ptr,m,n;if(m.length===0){return false;}n=m.charCodeAt(0);return 97<=n&&n<=122;};T=function(m){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,cu,cv,cw,cx,cy,cz,da,db,dc,dd,de,df,m,n,o,p,q,r,s,t,u,v,w,x,y,z;n="";o=0;p="";q=0;while(true){if(!(q<m.length)){break;}r=(m.charCodeAt(q)>>0);s=r;if(s===(74)){if(m.length>=(q+3>>0)&&$substring(m,q,(q+3>>0))==="Jan"){if(m.length>=(q+7>>0)&&$substring(m,q,(q+7>>0))==="January"){t=$substring(m,0,q);u=257;v=$substring(m,(q+7>>0));n=t;o=u;p=v;return[n,o,p];}if(!S($substring(m,(q+3>>0)))){w=$substring(m,0,q);x=258;y=$substring(m,(q+3>>0));n=w;o=x;p=y;return[n,o,p];}}}else if(s===(77)){if(m.length>=(q+3>>0)){if($substring(m,q,(q+3>>0))==="Mon"){if(m.length>=(q+6>>0)&&$substring(m,q,(q+6>>0))==="Monday"){z=$substring(m,0,q);aa=261;ab=$substring(m,(q+6>>0));n=z;o=aa;p=ab;return[n,o,p];}if(!S($substring(m,(q+3>>0)))){ac=$substring(m,0,q);ad=262;ae=$substring(m,(q+3>>0));n=ac;o=ad;p=ae;return[n,o,p];}}if($substring(m,q,(q+3>>0))==="MST"){af=$substring(m,0,q);ag=21;ah=$substring(m,(q+3>>0));n=af;o=ag;p=ah;return[n,o,p];}}}else if(s===(48)){if(m.length>=(q+2>>0)&&49<=m.charCodeAt((q+1>>0))&&m.charCodeAt((q+1>>0))<=54){ai=$substring(m,0,q);aj=(ak=m.charCodeAt((q+1>>0))-49<<24>>>24,((ak<0||ak>=R.length)?($throwRuntimeError("index out of range"),undefined):R[ak]));al=$substring(m,(q+2>>0));n=ai;o=aj;p=al;return[n,o,p];}}else if(s===(49)){if(m.length>=(q+2>>0)&&(m.charCodeAt((q+1>>0))===53)){am=$substring(m,0,q);an=522;ao=$substring(m,(q+2>>0));n=am;o=an;p=ao;return[n,o,p];}ap=$substring(m,0,q);aq=259;ar=$substring(m,(q+1>>0));n=ap;o=aq;p=ar;return[n,o,p];}else if(s===(50)){if(m.length>=(q+4>>0)&&$substring(m,q,(q+4>>0))==="2006"){as=$substring(m,0,q);at=273;au=$substring(m,(q+4>>0));n=as;o=at;p=au;return[n,o,p];}av=$substring(m,0,q);aw=263;ax=$substring(m,(q+1>>0));n=av;o=aw;p=ax;return[n,o,p];}else if(s===(95)){if(m.length>=(q+2>>0)&&(m.charCodeAt((q+1>>0))===50)){if(m.length>=(q+5>>0)&&$substring(m,(q+1>>0),(q+5>>0))==="2006"){ay=$substring(m,0,(q+1>>0));az=273;ba=$substring(m,(q+5>>0));n=ay;o=az;p=ba;return[n,o,p];}bb=$substring(m,0,q);bc=264;bd=$substring(m,(q+2>>0));n=bb;o=bc;p=bd;return[n,o,p];}}else if(s===(51)){be=$substring(m,0,q);bf=523;bg=$substring(m,(q+1>>0));n=be;o=bf;p=bg;return[n,o,p];}else if(s===(52)){bh=$substring(m,0,q);bi=525;bj=$substring(m,(q+1>>0));n=bh;o=bi;p=bj;return[n,o,p];}else if(s===(53)){bk=$substring(m,0,q);bl=527;bm=$substring(m,(q+1>>0));n=bk;o=bl;p=bm;return[n,o,p];}else if(s===(80)){if(m.length>=(q+2>>0)&&(m.charCodeAt((q+1>>0))===77)){bn=$substring(m,0,q);bo=531;bp=$substring(m,(q+2>>0));n=bn;o=bo;p=bp;return[n,o,p];}}else if(s===(112)){if(m.length>=(q+2>>0)&&(m.charCodeAt((q+1>>0))===109)){bq=$substring(m,0,q);br=532;bs=$substring(m,(q+2>>0));n=bq;o=br;p=bs;return[n,o,p];}}else if(s===(45)){if(m.length>=(q+7>>0)&&$substring(m,q,(q+7>>0))==="-070000"){bt=$substring(m,0,q);bu=28;bv=$substring(m,(q+7>>0));n=bt;o=bu;p=bv;return[n,o,p];}if(m.length>=(q+9>>0)&&$substring(m,q,(q+9>>0))==="-07:00:00"){bw=$substring(m,0,q);bx=31;by=$substring(m,(q+9>>0));n=bw;o=bx;p=by;return[n,o,p];}if(m.length>=(q+5>>0)&&$substring(m,q,(q+5>>0))==="-0700"){bz=$substring(m,0,q);ca=27;cb=$substring(m,(q+5>>0));n=bz;o=ca;p=cb;return[n,o,p];}if(m.length>=(q+6>>0)&&$substring(m,q,(q+6>>0))==="-07:00"){cc=$substring(m,0,q);cd=30;ce=$substring(m,(q+6>>0));n=cc;o=cd;p=ce;return[n,o,p];}if(m.length>=(q+3>>0)&&$substring(m,q,(q+3>>0))==="-07"){cf=$substring(m,0,q);cg=29;ch=$substring(m,(q+3>>0));n=cf;o=cg;p=ch;return[n,o,p];}}else if(s===(90)){if(m.length>=(q+7>>0)&&$substring(m,q,(q+7>>0))==="Z070000"){ci=$substring(m,0,q);cj=23;ck=$substring(m,(q+7>>0));n=ci;o=cj;p=ck;return[n,o,p];}if(m.length>=(q+9>>0)&&$substring(m,q,(q+9>>0))==="Z07:00:00"){cl=$substring(m,0,q);cm=26;cn=$substring(m,(q+9>>0));n=cl;o=cm;p=cn;return[n,o,p];}if(m.length>=(q+5>>0)&&$substring(m,q,(q+5>>0))==="Z0700"){co=$substring(m,0,q);cp=22;cq=$substring(m,(q+5>>0));n=co;o=cp;p=cq;return[n,o,p];}if(m.length>=(q+6>>0)&&$substring(m,q,(q+6>>0))==="Z07:00"){cr=$substring(m,0,q);cs=25;ct=$substring(m,(q+6>>0));n=cr;o=cs;p=ct;return[n,o,p];}if(m.length>=(q+3>>0)&&$substring(m,q,(q+3>>0))==="Z07"){cu=$substring(m,0,q);cv=24;cw=$substring(m,(q+3>>0));n=cu;o=cv;p=cw;return[n,o,p];}}else if(s===(46)){if((q+1>>0)<m.length&&((m.charCodeAt((q+1>>0))===48)||(m.charCodeAt((q+1>>0))===57))){cx=m.charCodeAt((q+1>>0));cy=q+1>>0;while(true){if(!(cy<m.length&&(m.charCodeAt(cy)===cx))){break;}cy=cy+(1)>>0;}if(!AH(m,cy)){cz=32;if(m.charCodeAt((q+1>>0))===57){cz=33;}cz=cz|((((cy-((q+1>>0))>>0))<<16>>0));da=$substring(m,0,q);db=cz;dc=$substring(m,cy);n=da;o=db;p=dc;return[n,o,p];}}}q=q+(1)>>0;}dd=m;de=0;df="";n=dd;o=de;p=df;return[n,o,p];};Y=function(m,n){var $ptr,m,n,o,p,q;o=0;while(true){if(!(o<m.length)){break;}p=m.charCodeAt(o);q=n.charCodeAt(o);if(!((p===q))){p=(p|(32))>>>0;q=(q|(32))>>>0;if(!((p===q))||p<97||p>122){return false;}}o=o+(1)>>0;}return true;};Z=function(m,n){var $ptr,m,n,o,p,q,r;o=m;p=0;while(true){if(!(p<o.$length)){break;}q=p;r=((p<0||p>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+p]);if(n.length>=r.length&&Y($substring(n,0,r.length),r)){return[q,$substring(n,r.length),$ifaceNil];}p++;}return[-1,n,AE];};AA=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,u;p=(n>>>0);if(n<0){m=$append(m,45);p=(-n>>>0);}q=DH.zero();r=20;while(true){if(!(p>=10)){break;}r=r-(1)>>0;t=(s=p/10,(s===s&&s!==1/0&&s!==-1/0)?s>>>0:$throwRuntimeError("integer divide by zero"));((r<0||r>=q.length)?($throwRuntimeError("index out of range"),undefined):q[r]=(((48+p>>>0)-(t*10>>>0)>>>0)<<24>>>24));p=t;}r=r-(1)>>0;((r<0||r>=q.length)?($throwRuntimeError("index out of range"),undefined):q[r]=((48+p>>>0)<<24>>>24));u=20-r>>0;while(true){if(!(u<o)){break;}m=$append(m,48);u=u+(1)>>0;}return $appendSlice(m,$subslice(new DI(q),r));};AC=function(m){var $ptr,m,n,o,p,q,r,s,t,u,v,w;n=0;o=$ifaceNil;p=false;if(!(m==="")&&((m.charCodeAt(0)===45)||(m.charCodeAt(0)===43))){p=m.charCodeAt(0)===45;m=$substring(m,1);}q=AS(m);r=q[0];s=q[1];o=q[2];n=((r.$low+((r.$high>>31)*4294967296))>>0);if(!($interfaceIsEqual(o,$ifaceNil))||!(s==="")){t=0;u=AB;n=t;o=u;return[n,o];}if(p){n=-n;}v=n;w=$ifaceNil;n=v;o=w;return[n,o];};AD=function(m,n,o,p){var $ptr,m,n,o,p,q,r,s,t,u,v;q=n;r=DJ.zero();s=9;while(true){if(!(s>0)){break;}s=s-(1)>>0;((s<0||s>=r.length)?($throwRuntimeError("index out of range"),undefined):r[s]=(((t=q%10,t===t?t:$throwRuntimeError("integer divide by zero"))+48>>>0)<<24>>>24));q=(u=q/(10),(u===u&&u!==1/0&&u!==-1/0)?u>>>0:$throwRuntimeError("integer divide by zero"));}if(o>9){o=9;}if(p){while(true){if(!(o>0&&((v=o-1>>0,((v<0||v>=r.length)?($throwRuntimeError("index out of range"),undefined):r[v]))===48))){break;}o=o-(1)>>0;}if(o===0){return m;}}m=$append(m,46);return $appendSlice(m,$subslice(new DI(r),0,o));};BM.ptr.prototype.String=function(){var $ptr,m,n,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;n=$clone(m,BM).Format("2006-01-02 15:04:05.999999999 -0700 MST");$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$s=-1;return n;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.String};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.String=function(){return this.$val.String();};BM.ptr.prototype.Format=function(m){var $ptr,m,n,o,p,q,r,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;o=DI.nil;p=m.length+10>>0;if(p<64){q=DK.zero();o=$subslice(new DI(q),0,0);}else{o=$makeSlice(DI,0,p);}r=$clone(n,BM).AppendFormat(o,m);$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}o=r;$s=-1;return $bytesToString(o);}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.Format};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.Format=function(m){return this.$val.Format(m);};BM.ptr.prototype.AppendFormat=function(m,n){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;q=$clone(o,BM).locabs();$s=1;case 1:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;r=p[0];s=p[1];t=p[2];u=-1;v=0;w=0;x=-1;y=0;z=0;while(true){if(!(!(n===""))){break;}aa=T(n);ab=aa[0];ac=aa[1];ad=aa[2];if(!(ab==="")){m=$appendSlice(m,ab);}if(ac===0){break;}n=ad;if(u<0&&!(((ac&256)===0))){ae=BY(t,true);u=ae[0];v=ae[1];w=ae[2];}if(x<0&&!(((ac&512)===0))){af=BS(t);x=af[0];y=af[1];z=af[2];}switch(0){default:ag=ac&65535;if(ag===(274)){ah=u;if(ah<0){ah=-ah;}m=AA(m,(ai=ah%100,ai===ai?ai:$throwRuntimeError("integer divide by zero")),2);}else if(ag===(273)){m=AA(m,u,4);}else if(ag===(258)){m=$appendSlice(m,$substring(new BN(v).String(),0,3));}else if(ag===(257)){aj=new BN(v).String();m=$appendSlice(m,aj);}else if(ag===(259)){m=AA(m,(v>>0),0);}else if(ag===(260)){m=AA(m,(v>>0),2);}else if(ag===(262)){m=$appendSlice(m,$substring(new BP(BR(t)).String(),0,3));}else if(ag===(261)){ak=new BP(BR(t)).String();m=$appendSlice(m,ak);}else if(ag===(263)){m=AA(m,w,0);}else if(ag===(264)){if(w<10){m=$append(m,32);}m=AA(m,w,0);}else if(ag===(265)){m=AA(m,w,2);}else if(ag===(522)){m=AA(m,x,2);}else if(ag===(523)){am=(al=x%12,al===al?al:$throwRuntimeError("integer divide by zero"));if(am===0){am=12;}m=AA(m,am,0);}else if(ag===(524)){ao=(an=x%12,an===an?an:$throwRuntimeError("integer divide by zero"));if(ao===0){ao=12;}m=AA(m,ao,2);}else if(ag===(525)){m=AA(m,y,0);}else if(ag===(526)){m=AA(m,y,2);}else if(ag===(527)){m=AA(m,z,0);}else if(ag===(528)){m=AA(m,z,2);}else if(ag===(531)){if(x>=12){m=$appendSlice(m,"PM");}else{m=$appendSlice(m,"AM");}}else if(ag===(532)){if(x>=12){m=$appendSlice(m,"pm");}else{m=$appendSlice(m,"am");}}else if((ag===(22))||(ag===(25))||(ag===(23))||(ag===(24))||(ag===(26))||(ag===(27))||(ag===(30))||(ag===(28))||(ag===(29))||(ag===(31))){if((s===0)&&((ac===22)||(ac===25)||(ac===23)||(ac===24)||(ac===26))){m=$append(m,90);break;}aq=(ap=s/60,(ap===ap&&ap!==1/0&&ap!==-1/0)?ap>>0:$throwRuntimeError("integer divide by zero"));ar=s;if(aq<0){m=$append(m,45);aq=-aq;ar=-ar;}else{m=$append(m,43);}m=AA(m,(as=aq/60,(as===as&&as!==1/0&&as!==-1/0)?as>>0:$throwRuntimeError("integer divide by zero")),2);if((ac===25)||(ac===30)||(ac===26)||(ac===31)){m=$append(m,58);}if(!((ac===29))&&!((ac===24))){m=AA(m,(at=aq%60,at===at?at:$throwRuntimeError("integer divide by zero")),2);}if((ac===23)||(ac===28)||(ac===31)||(ac===26)){if((ac===31)||(ac===26)){m=$append(m,58);}m=AA(m,(au=ar%60,au===au?au:$throwRuntimeError("integer divide by zero")),2);}}else if(ag===(21)){if(!(r==="")){m=$appendSlice(m,r);break;}aw=(av=s/60,(av===av&&av!==1/0&&av!==-1/0)?av>>0:$throwRuntimeError("integer divide by zero"));if(aw<0){m=$append(m,45);aw=-aw;}else{m=$append(m,43);}m=AA(m,(ax=aw/60,(ax===ax&&ax!==1/0&&ax!==-1/0)?ax>>0:$throwRuntimeError("integer divide by zero")),2);m=AA(m,(ay=aw%60,ay===ay?ay:$throwRuntimeError("integer divide by zero")),2);}else if((ag===(32))||(ag===(33))){m=AD(m,($clone(o,BM).Nanosecond()>>>0),ac>>16>>0,(ac&65535)===33);}}}$s=-1;return m;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.AppendFormat};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.AppendFormat=function(m,n){return this.$val.AppendFormat(m,n);};AG=function(m){var $ptr,m;return"\""+m+"\"";};AF.ptr.prototype.Error=function(){var $ptr,m;m=this;if(m.Message===""){return"parsing time "+AG(m.Value)+" as "+AG(m.Layout)+": cannot parse "+AG(m.ValueElem)+" as "+AG(m.LayoutElem);}return"parsing time "+AG(m.Value)+m.Message;};AF.prototype.Error=function(){return this.$val.Error();};AH=function(m,n){var $ptr,m,n,o;if(m.length<=n){return false;}o=m.charCodeAt(n);return 48<=o&&o<=57;};AI=function(m,n){var $ptr,m,n;if(!AH(m,0)){return[0,m,AE];}if(!AH(m,1)){if(n){return[0,m,AE];}return[((m.charCodeAt(0)-48<<24>>>24)>>0),$substring(m,1),$ifaceNil];}return[($imul(((m.charCodeAt(0)-48<<24>>>24)>>0),10))+((m.charCodeAt(1)-48<<24>>>24)>>0)>>0,$substring(m,2),$ifaceNil];};AJ=function(m){var $ptr,m;while(true){if(!(m.length>0&&(m.charCodeAt(0)===32))){break;}m=$substring(m,1);}return m;};AK=function(m,n){var $ptr,m,n;while(true){if(!(n.length>0)){break;}if(n.charCodeAt(0)===32){if(m.length>0&&!((m.charCodeAt(0)===32))){return[m,AE];}n=AJ(n);m=AJ(m);continue;}if((m.length===0)||!((m.charCodeAt(0)===n.charCodeAt(0)))){return[m,AE];}n=$substring(n,1);m=$substring(m,1);}return[m,$ifaceNil];};AL=function(m,n){var $ptr,m,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=AN(m,n,$pkg.UTC,$pkg.Local);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$s=-1;return o;}return;}if($f===undefined){$f={$blk:AL};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Parse=AL;AN=function(m,n,o,p){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,cu,cv,cw,cx,cy,cz,da,db,dc,dd,de,df,dg,dh,di,dj,dk,dl,dm,dn,dp,dq,dr,ds,dt,du,dv,dw,dx,dy,dz,ea,eb,ec,ed,ee,ef,eg,eh,ei,ej,ek,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;bf=$f.bf;bg=$f.bg;bh=$f.bh;bi=$f.bi;bj=$f.bj;bk=$f.bk;bl=$f.bl;bm=$f.bm;bn=$f.bn;bo=$f.bo;bp=$f.bp;bq=$f.bq;br=$f.br;bs=$f.bs;bt=$f.bt;bu=$f.bu;bv=$f.bv;bw=$f.bw;bx=$f.bx;by=$f.by;bz=$f.bz;ca=$f.ca;cb=$f.cb;cc=$f.cc;cd=$f.cd;ce=$f.ce;cf=$f.cf;cg=$f.cg;ch=$f.ch;ci=$f.ci;cj=$f.cj;ck=$f.ck;cl=$f.cl;cm=$f.cm;cn=$f.cn;co=$f.co;cp=$f.cp;cq=$f.cq;cr=$f.cr;cs=$f.cs;ct=$f.ct;cu=$f.cu;cv=$f.cv;cw=$f.cw;cx=$f.cx;cy=$f.cy;cz=$f.cz;da=$f.da;db=$f.db;dc=$f.dc;dd=$f.dd;de=$f.de;df=$f.df;dg=$f.dg;dh=$f.dh;di=$f.di;dj=$f.dj;dk=$f.dk;dl=$f.dl;dm=$f.dm;dn=$f.dn;dp=$f.dp;dq=$f.dq;dr=$f.dr;ds=$f.ds;dt=$f.dt;du=$f.du;dv=$f.dv;dw=$f.dw;dx=$f.dx;dy=$f.dy;dz=$f.dz;ea=$f.ea;eb=$f.eb;ec=$f.ec;ed=$f.ed;ee=$f.ee;ef=$f.ef;eg=$f.eg;eh=$f.eh;ei=$f.ei;ej=$f.ej;ek=$f.ek;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=m;r=n;s=q;t=r;u="";v=false;w=false;x=0;y=1;z=1;aa=0;ab=0;ac=0;ad=0;ae=DL.nil;af=-1;ag="";while(true){ah=$ifaceNil;ai=T(m);aj=ai[0];ak=ai[1];al=ai[2];am=$substring(m,aj.length,(m.length-al.length>>0));an=AK(n,aj);n=an[0];ah=an[1];if(!($interfaceIsEqual(ah,$ifaceNil))){$s=-1;return[new BM.ptr(new $Int64(0,0),0,DL.nil),new AF.ptr(s,t,aj,n,"")];}if(ak===0){if(!((n.length===0))){$s=-1;return[new BM.ptr(new $Int64(0,0),0,DL.nil),new AF.ptr(s,t,"",n,": extra text: "+n)];}break;}m=al;ao="";switch(0){default:ap=ak&65535;if(ap===(274)){if(n.length<2){ah=AE;break;}aq=$substring(n,0,2);ar=$substring(n,2);ao=aq;n=ar;as=AC(ao);x=as[0];ah=as[1];if(x>=69){x=x+(1900)>>0;}else{x=x+(2000)>>0;}}else if(ap===(273)){if(n.length<4||!AH(n,0)){ah=AE;break;}at=$substring(n,0,4);au=$substring(n,4);ao=at;n=au;av=AC(ao);x=av[0];ah=av[1];}else if(ap===(258)){aw=Z(W,n);y=aw[0];n=aw[1];ah=aw[2];}else if(ap===(257)){ax=Z(X,n);y=ax[0];n=ax[1];ah=ax[2];}else if((ap===(259))||(ap===(260))){ay=AI(n,ak===260);y=ay[0];n=ay[1];ah=ay[2];if(y<=0||12<y){u="month";}}else if(ap===(262)){az=Z(V,n);n=az[1];ah=az[2];}else if(ap===(261)){ba=Z(U,n);n=ba[1];ah=ba[2];}else if((ap===(263))||(ap===(264))||(ap===(265))){if((ak===264)&&n.length>0&&(n.charCodeAt(0)===32)){n=$substring(n,1);}bb=AI(n,ak===265);z=bb[0];n=bb[1];ah=bb[2];if(z<0){u="day";}}else if(ap===(522)){bc=AI(n,false);aa=bc[0];n=bc[1];ah=bc[2];if(aa<0||24<=aa){u="hour";}}else if((ap===(523))||(ap===(524))){bd=AI(n,ak===524);aa=bd[0];n=bd[1];ah=bd[2];if(aa<0||12<aa){u="hour";}}else if((ap===(525))||(ap===(526))){be=AI(n,ak===526);ab=be[0];n=be[1];ah=be[2];if(ab<0||60<=ab){u="minute";}}else if((ap===(527))||(ap===(528))){bf=AI(n,ak===528);ac=bf[0];n=bf[1];ah=bf[2];if(ac<0||60<=ac){u="second";break;}if(n.length>=2&&(n.charCodeAt(0)===46)&&AH(n,1)){bg=T(m);ak=bg[1];ak=ak&(65535);if((ak===32)||(ak===33)){break;}bh=2;while(true){if(!(bh<n.length&&AH(n,bh))){break;}bh=bh+(1)>>0;}bi=AQ(n,bh);ad=bi[0];u=bi[1];ah=bi[2];n=$substring(n,bh);}}else if(ap===(531)){if(n.length<2){ah=AE;break;}bj=$substring(n,0,2);bk=$substring(n,2);ao=bj;n=bk;bl=ao;if(bl===("PM")){w=true;}else if(bl===("AM")){v=true;}else{ah=AE;}}else if(ap===(532)){if(n.length<2){ah=AE;break;}bm=$substring(n,0,2);bn=$substring(n,2);ao=bm;n=bn;bo=ao;if(bo===("pm")){w=true;}else if(bo===("am")){v=true;}else{ah=AE;}}else if((ap===(22))||(ap===(25))||(ap===(23))||(ap===(24))||(ap===(26))||(ap===(27))||(ap===(29))||(ap===(30))||(ap===(28))||(ap===(31))){if(((ak===22)||(ak===24)||(ak===25))&&n.length>=1&&(n.charCodeAt(0)===90)){n=$substring(n,1);ae=$pkg.UTC;break;}bp="";bq="";br="";bs="";bt=bp;bu=bq;bv=br;bw=bs;if((ak===25)||(ak===30)){if(n.length<6){ah=AE;break;}if(!((n.charCodeAt(3)===58))){ah=AE;break;}bx=$substring(n,0,1);by=$substring(n,1,3);bz=$substring(n,4,6);ca="00";cb=$substring(n,6);bt=bx;bu=by;bv=bz;bw=ca;n=cb;}else if((ak===29)||(ak===24)){if(n.length<3){ah=AE;break;}cc=$substring(n,0,1);cd=$substring(n,1,3);ce="00";cf="00";cg=$substring(n,3);bt=cc;bu=cd;bv=ce;bw=cf;n=cg;}else if((ak===26)||(ak===31)){if(n.length<9){ah=AE;break;}if(!((n.charCodeAt(3)===58))||!((n.charCodeAt(6)===58))){ah=AE;break;}ch=$substring(n,0,1);ci=$substring(n,1,3);cj=$substring(n,4,6);ck=$substring(n,7,9);cl=$substring(n,9);bt=ch;bu=ci;bv=cj;bw=ck;n=cl;}else if((ak===23)||(ak===28)){if(n.length<7){ah=AE;break;}cm=$substring(n,0,1);cn=$substring(n,1,3);co=$substring(n,3,5);cp=$substring(n,5,7);cq=$substring(n,7);bt=cm;bu=cn;bv=co;bw=cp;n=cq;}else{if(n.length<5){ah=AE;break;}cr=$substring(n,0,1);cs=$substring(n,1,3);ct=$substring(n,3,5);cu="00";cv=$substring(n,5);bt=cr;bu=cs;bv=ct;bw=cu;n=cv;}cw=0;cx=0;cy=0;cz=cw;da=cx;db=cy;dc=AC(bu);cz=dc[0];ah=dc[1];if($interfaceIsEqual(ah,$ifaceNil)){dd=AC(bv);da=dd[0];ah=dd[1];}if($interfaceIsEqual(ah,$ifaceNil)){de=AC(bw);db=de[0];ah=de[1];}af=($imul(((($imul(cz,60))+da>>0)),60))+db>>0;df=bt.charCodeAt(0);if(df===(43)){}else if(df===(45)){af=-af;}else{ah=AE;}}else if(ap===(21)){if(n.length>=3&&$substring(n,0,3)==="UTC"){ae=$pkg.UTC;n=$substring(n,3);break;}dg=AO(n);dh=dg[0];di=dg[1];if(!di){ah=AE;break;}dj=$substring(n,0,dh);dk=$substring(n,dh);ag=dj;n=dk;}else if(ap===(32)){dl=1+((ak>>16>>0))>>0;if(n.length<dl){ah=AE;break;}dm=AQ(n,dl);ad=dm[0];u=dm[1];ah=dm[2];n=$substring(n,dl);}else if(ap===(33)){if(n.length<2||!((n.charCodeAt(0)===46))||n.charCodeAt(1)<48||57<n.charCodeAt(1)){break;}dn=0;while(true){if(!(dn<9&&(dn+1>>0)<n.length&&48<=n.charCodeAt((dn+1>>0))&&n.charCodeAt((dn+1>>0))<=57)){break;}dn=dn+(1)>>0;}dp=AQ(n,1+dn>>0);ad=dp[0];u=dp[1];ah=dp[2];n=$substring(n,(1+dn>>0));}}if(!(u==="")){$s=-1;return[new BM.ptr(new $Int64(0,0),0,DL.nil),new AF.ptr(s,t,am,n,": "+u+" out of range")];}if(!($interfaceIsEqual(ah,$ifaceNil))){$s=-1;return[new BM.ptr(new $Int64(0,0),0,DL.nil),new AF.ptr(s,t,am,n,"")];}}if(w&&aa<12){aa=aa+(12)>>0;}else if(v&&(aa===12)){aa=0;}if(z<1||z>CA((y>>0),x)){$s=-1;return[new BM.ptr(new $Int64(0,0),0,DL.nil),new AF.ptr(s,t,"",n,": day out of range")];}if(!(ae===DL.nil)){$s=1;continue;}$s=2;continue;case 1:dq=CF(x,(y>>0),z,aa,ab,ac,ad,ae);$s=3;case 3:if($c){$c=false;dq=dq.$blk();}if(dq&&dq.$blk!==undefined){break s;}$s=-1;return[dq,$ifaceNil];case 2:if(!((af===-1))){$s=4;continue;}$s=5;continue;case 4:dr=CF(x,(y>>0),z,aa,ab,ac,ad,$pkg.UTC);$s=6;case 6:if($c){$c=false;dr=dr.$blk();}if(dr&&dr.$blk!==undefined){break s;}ds=$clone(dr,BM);ds.sec=(dt=ds.sec,du=new $Int64(0,af),new $Int64(dt.$high-du.$high,dt.$low-du.$low));dx=p.lookup((dw=ds.sec,new $Int64(dw.$high+-15,dw.$low+2288912640)));$s=7;case 7:if($c){$c=false;dx=dx.$blk();}if(dx&&dx.$blk!==undefined){break s;}dv=dx;dy=dv[0];dz=dv[1];if((dz===af)&&(ag===""||dy===ag)){ds.setLoc(p);$s=-1;return[ds,$ifaceNil];}ds.setLoc(CN(ag,af));$s=-1;return[ds,$ifaceNil];case 5:if(!(ag==="")){$s=8;continue;}$s=9;continue;case 8:ea=CF(x,(y>>0),z,aa,ab,ac,ad,$pkg.UTC);$s=10;case 10:if($c){$c=false;ea=ea.$blk();}if(ea&&ea.$blk!==undefined){break s;}eb=$clone(ea,BM);ee=p.lookupName(ag,(ed=eb.sec,new $Int64(ed.$high+-15,ed.$low+2288912640)));$s=11;case 11:if($c){$c=false;ee=ee.$blk();}if(ee&&ee.$blk!==undefined){break s;}ec=ee;ef=ec[0];eg=ec[2];if(eg){eb.sec=(eh=eb.sec,ei=new $Int64(0,ef),new $Int64(eh.$high-ei.$high,eh.$low-ei.$low));eb.setLoc(p);$s=-1;return[eb,$ifaceNil];}if(ag.length>3&&$substring(ag,0,3)==="GMT"){ej=AC($substring(ag,3));ef=ej[0];ef=$imul(ef,(3600));}eb.setLoc(CN(ag,ef));$s=-1;return[eb,$ifaceNil];case 9:ek=CF(x,(y>>0),z,aa,ab,ac,ad,o);$s=12;case 12:if($c){$c=false;ek=ek.$blk();}if(ek&&ek.$blk!==undefined){break s;}$s=-1;return[ek,$ifaceNil];}return;}if($f===undefined){$f={$blk:AN};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$f.bf=bf;$f.bg=bg;$f.bh=bh;$f.bi=bi;$f.bj=bj;$f.bk=bk;$f.bl=bl;$f.bm=bm;$f.bn=bn;$f.bo=bo;$f.bp=bp;$f.bq=bq;$f.br=br;$f.bs=bs;$f.bt=bt;$f.bu=bu;$f.bv=bv;$f.bw=bw;$f.bx=bx;$f.by=by;$f.bz=bz;$f.ca=ca;$f.cb=cb;$f.cc=cc;$f.cd=cd;$f.ce=ce;$f.cf=cf;$f.cg=cg;$f.ch=ch;$f.ci=ci;$f.cj=cj;$f.ck=ck;$f.cl=cl;$f.cm=cm;$f.cn=cn;$f.co=co;$f.cp=cp;$f.cq=cq;$f.cr=cr;$f.cs=cs;$f.ct=ct;$f.cu=cu;$f.cv=cv;$f.cw=cw;$f.cx=cx;$f.cy=cy;$f.cz=cz;$f.da=da;$f.db=db;$f.dc=dc;$f.dd=dd;$f.de=de;$f.df=df;$f.dg=dg;$f.dh=dh;$f.di=di;$f.dj=dj;$f.dk=dk;$f.dl=dl;$f.dm=dm;$f.dn=dn;$f.dp=dp;$f.dq=dq;$f.dr=dr;$f.ds=ds;$f.dt=dt;$f.du=du;$f.dv=dv;$f.dw=dw;$f.dx=dx;$f.dy=dy;$f.dz=dz;$f.ea=ea;$f.eb=eb;$f.ec=ec;$f.ed=ed;$f.ee=ee;$f.ef=ef;$f.eg=eg;$f.eh=eh;$f.ei=ei;$f.ej=ej;$f.ek=ek;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};AO=function(m){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,m,n,o,p,q,r,s,t,u,v,w,x,y,z;n=0;o=false;if(m.length<3){p=0;q=false;n=p;o=q;return[n,o];}if(m.length>=4&&($substring(m,0,4)==="ChST"||$substring(m,0,4)==="MeST")){r=4;s=true;n=r;o=s;return[n,o];}if($substring(m,0,3)==="GMT"){n=AP(m);t=n;u=true;n=t;o=u;return[n,o];}v=0;v=0;while(true){if(!(v<6)){break;}if(v>=m.length){break;}w=m.charCodeAt(v);if(w<65||90<w){break;}v=v+(1)>>0;}x=v;if((x===(0))||(x===(1))||(x===(2))||(x===(6))){y=0;z=false;n=y;o=z;return[n,o];}else if(x===(5)){if(m.charCodeAt(4)===84){aa=5;ab=true;n=aa;o=ab;return[n,o];}}else if(x===(4)){if((m.charCodeAt(3)===84)||$substring(m,0,4)==="WITA"){ac=4;ad=true;n=ac;o=ad;return[n,o];}}else if(x===(3)){ae=3;af=true;n=ae;o=af;return[n,o];}ag=0;ah=false;n=ag;o=ah;return[n,o];};AP=function(m){var $ptr,m,n,o,p,q,r;m=$substring(m,3);if(m.length===0){return 3;}n=m.charCodeAt(0);if(!((n===45))&&!((n===43))){return 3;}o=AS($substring(m,1));p=o[0];q=o[1];r=o[2];if(!($interfaceIsEqual(r,$ifaceNil))){return 3;}if(n===45){p=new $Int64(-p.$high,-p.$low);}if((p.$high===0&&p.$low===0)||(p.$high<-1||(p.$high===-1&&p.$low<4294967282))||(0<p.$high||(0===p.$high&&12<p.$low))){return 3;}return(3+m.length>>0)-q.length>>0;};AQ=function(m,n){var $ptr,m,n,o,p,q,r,s,t;o=0;p="";q=$ifaceNil;if(!((m.charCodeAt(0)===46))){q=AE;return[o,p,q];}r=AC($substring(m,1,n));o=r[0];q=r[1];if(!($interfaceIsEqual(q,$ifaceNil))){return[o,p,q];}if(o<0||1000000000<=o){p="fractional second";return[o,p,q];}s=10-n>>0;t=0;while(true){if(!(t<s)){break;}o=$imul(o,(10));t=t+(1)>>0;}return[o,p,q];};AS=function(m){var $ptr,aa,ab,ac,ad,m,n,o,p,q,r,s,t,u,v,w,x,y,z;n=new $Int64(0,0);o="";p=$ifaceNil;q=0;while(true){if(!(q<m.length)){break;}r=m.charCodeAt(q);if(r<48||r>57){break;}if((n.$high>214748364||(n.$high===214748364&&n.$low>3435973836))){s=new $Int64(0,0);t="";u=AR;n=s;o=t;p=u;return[n,o,p];}n=(v=(w=$mul64(n,new $Int64(0,10)),x=new $Int64(0,r),new $Int64(w.$high+x.$high,w.$low+x.$low)),new $Int64(v.$high-0,v.$low-48));if((n.$high<0||(n.$high===0&&n.$low<0))){y=new $Int64(0,0);z="";aa=AR;n=y;o=z;p=aa;return[n,o,p];}q=q+(1)>>0;}ab=n;ac=$substring(m,q);ad=$ifaceNil;n=ab;o=ac;p=ad;return[n,o,p];};AT=function(m){var $ptr,m,n,o,p,q,r,s,t,u,v,w,x,y,z;n=new $Int64(0,0);o=0;p="";q=0;o=1;r=false;while(true){if(!(q<m.length)){break;}s=m.charCodeAt(q);if(s<48||s>57){break;}if(r){q=q+(1)>>0;continue;}if((n.$high>214748364||(n.$high===214748364&&n.$low>3435973836))){r=true;q=q+(1)>>0;continue;}w=(t=(u=$mul64(n,new $Int64(0,10)),v=new $Int64(0,s),new $Int64(u.$high+v.$high,u.$low+v.$low)),new $Int64(t.$high-0,t.$low-48));if((w.$high<0||(w.$high===0&&w.$low<0))){r=true;q=q+(1)>>0;continue;}n=w;o=o*(10);q=q+(1)>>0;}x=n;y=o;z=$substring(m,q);n=x;o=y;p=z;return[n,o,p];};AV=function(m){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,m,n,o,p,q,r,s,t,u,v,w,x,y,z;n=m;o=new $Int64(0,0);p=false;if(!(m==="")){q=m.charCodeAt(0);if((q===45)||(q===43)){p=q===45;m=$substring(m,1);}}if(m==="0"){return[new BT(0,0),$ifaceNil];}if(m===""){return[new BT(0,0),C.New("time: invalid duration "+n)];}while(true){if(!(!(m===""))){break;}r=new $Int64(0,0);s=new $Int64(0,0);t=r;u=s;v=1;w=$ifaceNil;if(!((m.charCodeAt(0)===46)||48<=m.charCodeAt(0)&&m.charCodeAt(0)<=57)){return[new BT(0,0),C.New("time: invalid duration "+n)];}x=m.length;y=AS(m);t=y[0];m=y[1];w=y[2];if(!($interfaceIsEqual(w,$ifaceNil))){return[new BT(0,0),C.New("time: invalid duration "+n)];}z=!((x===m.length));aa=false;if(!(m==="")&&(m.charCodeAt(0)===46)){m=$substring(m,1);ab=m.length;ac=AT(m);u=ac[0];v=ac[1];m=ac[2];aa=!((ab===m.length));}if(!z&&!aa){return[new BT(0,0),C.New("time: invalid duration "+n)];}ad=0;while(true){if(!(ad<m.length)){break;}ae=m.charCodeAt(ad);if((ae===46)||48<=ae&&ae<=57){break;}ad=ad+(1)>>0;}if(ad===0){return[new BT(0,0),C.New("time: missing unit in duration "+n)];}af=$substring(m,0,ad);m=$substring(m,ad);ag=(ah=AU[$String.keyFor(af)],ah!==undefined?[ah.v,true]:[new $Int64(0,0),false]);ai=ag[0];aj=ag[1];if(!aj){return[new BT(0,0),C.New("time: unknown unit "+af+" in duration "+n)];}if((ak=$div64(new $Int64(2147483647,4294967295),ai,false),(t.$high>ak.$high||(t.$high===ak.$high&&t.$low>ak.$low)))){return[new BT(0,0),C.New("time: invalid duration "+n)];}t=$mul64(t,(ai));if((u.$high>0||(u.$high===0&&u.$low>0))){t=(al=new $Int64(0,$flatten64(u)*($flatten64(ai)/v)),new $Int64(t.$high+al.$high,t.$low+al.$low));if((t.$high<0||(t.$high===0&&t.$low<0))){return[new BT(0,0),C.New("time: invalid duration "+n)];}}o=(am=t,new $Int64(o.$high+am.$high,o.$low+am.$low));if((o.$high<0||(o.$high===0&&o.$low<0))){return[new BT(0,0),C.New("time: invalid duration "+n)];}}if(p){o=new $Int64(-o.$high,-o.$low);}return[new BT(o.$high,o.$low),$ifaceNil];};$pkg.ParseDuration=AV;BM.ptr.prototype.setLoc=function(m){var $ptr,m,n;n=this;if(m===CK){m=DL.nil;}n.loc=m;};BM.prototype.setLoc=function(m){return this.$val.setLoc(m);};BM.ptr.prototype.After=function(m){var $ptr,m,n,o,p,q,r;n=this;return(o=n.sec,p=m.sec,(o.$high>p.$high||(o.$high===p.$high&&o.$low>p.$low)))||(q=n.sec,r=m.sec,(q.$high===r.$high&&q.$low===r.$low))&&n.nsec>m.nsec;};BM.prototype.After=function(m){return this.$val.After(m);};BM.ptr.prototype.Before=function(m){var $ptr,m,n,o,p,q,r;n=this;return(o=n.sec,p=m.sec,(o.$high<p.$high||(o.$high===p.$high&&o.$low<p.$low)))||(q=n.sec,r=m.sec,(q.$high===r.$high&&q.$low===r.$low))&&n.nsec<m.nsec;};BM.prototype.Before=function(m){return this.$val.Before(m);};BM.ptr.prototype.Equal=function(m){var $ptr,m,n,o,p;n=this;return(o=n.sec,p=m.sec,(o.$high===p.$high&&o.$low===p.$low))&&(n.nsec===m.nsec);};BM.prototype.Equal=function(m){return this.$val.Equal(m);};BN.prototype.String=function(){var $ptr,m,n,o,p;m=this.$val;if(1<=m&&m<=12){return(n=m-1>>0,((n<0||n>=BO.length)?($throwRuntimeError("index out of range"),undefined):BO[n]));}o=$makeSlice(DI,20);p=BV(o,new $Uint64(0,m));return"%!Month("+$bytesToString($subslice(o,p))+")";};$ptrType(BN).prototype.String=function(){return new BN(this.$get()).String();};BP.prototype.String=function(){var $ptr,m;m=this.$val;return((m<0||m>=BQ.length)?($throwRuntimeError("index out of range"),undefined):BQ[m]);};$ptrType(BP).prototype.String=function(){return new BP(this.$get()).String();};BM.ptr.prototype.IsZero=function(){var $ptr,m,n;m=this;return(n=m.sec,(n.$high===0&&n.$low===0))&&(m.nsec===0);};BM.prototype.IsZero=function(){return this.$val.IsZero();};BM.ptr.prototype.abs=function(){var $ptr,m,n,o,p,q,r,s,t,u,v,w,x,y,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;n=m.loc;if(n===DL.nil||n===CL){$s=1;continue;}$s=2;continue;case 1:o=n.get();$s=3;case 3:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;case 2:q=(p=m.sec,new $Int64(p.$high+-15,p.$low+2288912640));if(!(n===CK)){$s=4;continue;}$s=5;continue;case 4:if(!(n.cacheZone===DE.nil)&&(r=n.cacheStart,(r.$high<q.$high||(r.$high===q.$high&&r.$low<=q.$low)))&&(s=n.cacheEnd,(q.$high<s.$high||(q.$high===s.$high&&q.$low<s.$low)))){$s=6;continue;}$s=7;continue;case 6:q=(t=new $Int64(0,n.cacheZone.offset),new $Int64(q.$high+t.$high,q.$low+t.$low));$s=8;continue;case 7:v=n.lookup(q);$s=9;case 9:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}u=v;w=u[1];q=(x=new $Int64(0,w),new $Int64(q.$high+x.$high,q.$low+x.$low));case 8:case 5:$s=-1;return(y=new $Int64(q.$high+2147483646,q.$low+450480384),new $Uint64(y.$high,y.$low));}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.abs};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.abs=function(){return this.$val.abs();};BM.ptr.prototype.locabs=function(){var $ptr,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m="";n=0;o=new $Uint64(0,0);p=this;q=p.loc;if(q===DL.nil||q===CL){$s=1;continue;}$s=2;continue;case 1:r=q.get();$s=3;case 3:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=r;case 2:t=(s=p.sec,new $Int64(s.$high+-15,s.$low+2288912640));if(!(q===CK)){$s=4;continue;}$s=5;continue;case 4:if(!(q.cacheZone===DE.nil)&&(u=q.cacheStart,(u.$high<t.$high||(u.$high===t.$high&&u.$low<=t.$low)))&&(v=q.cacheEnd,(t.$high<v.$high||(t.$high===v.$high&&t.$low<v.$low)))){$s=7;continue;}$s=8;continue;case 7:m=q.cacheZone.name;n=q.cacheZone.offset;$s=9;continue;case 8:x=q.lookup(t);$s=10;case 10:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}w=x;m=w[0];n=w[1];case 9:t=(y=new $Int64(0,n),new $Int64(t.$high+y.$high,t.$low+y.$low));$s=6;continue;case 5:m="UTC";case 6:o=(z=new $Int64(t.$high+2147483646,t.$low+450480384),new $Uint64(z.$high,z.$low));$s=-1;return[m,n,o];}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.locabs};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.locabs=function(){return this.$val.locabs();};BM.ptr.prototype.Date=function(){var $ptr,m,n,o,p,q,r,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=0;n=0;o=0;p=this;r=$clone(p,BM).date(true);$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=r;m=q[0];n=q[1];o=q[2];$s=-1;return[m,n,o];}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.Date};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.Date=function(){return this.$val.Date();};BM.ptr.prototype.Year=function(){var $ptr,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;o=$clone(m,BM).date(false);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n[0];$s=-1;return p;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.Year};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.Year=function(){return this.$val.Year();};BM.ptr.prototype.Month=function(){var $ptr,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;o=$clone(m,BM).date(true);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n[1];$s=-1;return p;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.Month};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.Month=function(){return this.$val.Month();};BM.ptr.prototype.Day=function(){var $ptr,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;o=$clone(m,BM).date(true);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n[2];$s=-1;return p;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.Day};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.Day=function(){return this.$val.Day();};BM.ptr.prototype.Weekday=function(){var $ptr,m,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;n=$clone(m,BM).abs();$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=BR(n);$s=2;case 2:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$s=-1;return o;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.Weekday};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.Weekday=function(){return this.$val.Weekday();};BR=function(m){var $ptr,m,n,o;n=$div64((new $Uint64(m.$high+0,m.$low+86400)),new $Uint64(0,604800),true);return((o=(n.$low>>0)/86400,(o===o&&o!==1/0&&o!==-1/0)?o>>0:$throwRuntimeError("integer divide by zero"))>>0);};BM.ptr.prototype.ISOWeek=function(){var $ptr,aa,ab,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=0;n=0;o=this;q=$clone(o,BM).date(true);$s=1;case 1:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;m=p[0];r=p[1];s=p[2];t=p[3];v=$clone(o,BM).Weekday();$s=2;case 2:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}w=(u=((v+6>>0)>>0)%7,u===u?u:$throwRuntimeError("integer divide by zero"));n=(x=(((t-w>>0)+7>>0))/7,(x===x&&x!==1/0&&x!==-1/0)?x>>0:$throwRuntimeError("integer divide by zero"));z=(y=(((w-t>>0)+371>>0))%7,y===y?y:$throwRuntimeError("integer divide by zero"));if(1<=z&&z<=3){n=n+(1)>>0;}if(n===0){m=m-(1)>>0;n=52;if((z===4)||((z===5)&&CD(m))){n=n+(1)>>0;}}if((r===12)&&s>=29&&w<3){ab=(aa=(((w+31>>0)-s>>0))%7,aa===aa?aa:$throwRuntimeError("integer divide by zero"));if(0<=ab&&ab<=2){m=m+(1)>>0;n=1;}}$s=-1;return[m,n];}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.ISOWeek};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.ISOWeek=function(){return this.$val.ISOWeek();};BM.ptr.prototype.Clock=function(){var $ptr,m,n,o,p,q,r,s,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=0;n=0;o=0;p=this;r=$clone(p,BM).abs();$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=BS(r);$s=2;case 2:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}q=s;m=q[0];n=q[1];o=q[2];$s=-1;return[m,n,o];}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.Clock};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.Clock=function(){return this.$val.Clock();};BS=function(m){var $ptr,m,n,o,p,q,r;n=0;o=0;p=0;p=($div64(m,new $Uint64(0,86400),true).$low>>0);n=(q=p/3600,(q===q&&q!==1/0&&q!==-1/0)?q>>0:$throwRuntimeError("integer divide by zero"));p=p-(($imul(n,3600)))>>0;o=(r=p/60,(r===r&&r!==1/0&&r!==-1/0)?r>>0:$throwRuntimeError("integer divide by zero"));p=p-(($imul(o,60)))>>0;return[n,o,p];};BM.ptr.prototype.Hour=function(){var $ptr,m,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;o=$clone(m,BM).abs();$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$s=-1;return(n=($div64(o,new $Uint64(0,86400),true).$low>>0)/3600,(n===n&&n!==1/0&&n!==-1/0)?n>>0:$throwRuntimeError("integer divide by zero"));}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.Hour};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.Hour=function(){return this.$val.Hour();};BM.ptr.prototype.Minute=function(){var $ptr,m,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;o=$clone(m,BM).abs();$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$s=-1;return(n=($div64(o,new $Uint64(0,3600),true).$low>>0)/60,(n===n&&n!==1/0&&n!==-1/0)?n>>0:$throwRuntimeError("integer divide by zero"));}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.Minute};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.Minute=function(){return this.$val.Minute();};BM.ptr.prototype.Second=function(){var $ptr,m,n,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;n=$clone(m,BM).abs();$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$s=-1;return($div64(n,new $Uint64(0,60),true).$low>>0);}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.Second};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.Second=function(){return this.$val.Second();};BM.ptr.prototype.Nanosecond=function(){var $ptr,m;m=this;return(m.nsec>>0);};BM.prototype.Nanosecond=function(){return this.$val.Nanosecond();};BM.ptr.prototype.YearDay=function(){var $ptr,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;o=$clone(m,BM).date(false);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n[3];$s=-1;return p+1>>0;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.YearDay};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.YearDay=function(){return this.$val.YearDay();};BT.prototype.String=function(){var $ptr,m,n,o,p,q,r,s,t;m=this;n=DP.zero();o=32;p=new $Uint64(m.$high,m.$low);q=(m.$high<0||(m.$high===0&&m.$low<0));if(q){p=new $Uint64(-p.$high,-p.$low);}if((p.$high<0||(p.$high===0&&p.$low<1000000000))){r=0;o=o-(1)>>0;((o<0||o>=n.length)?($throwRuntimeError("index out of range"),undefined):n[o]=115);o=o-(1)>>0;if((p.$high===0&&p.$low===0)){return"0s";}else if((p.$high<0||(p.$high===0&&p.$low<1000))){r=0;((o<0||o>=n.length)?($throwRuntimeError("index out of range"),undefined):n[o]=110);}else if((p.$high<0||(p.$high===0&&p.$low<1000000))){r=3;o=o-(1)>>0;$copyString($subslice(new DI(n),o),"\xC2\xB5");}else{r=6;((o<0||o>=n.length)?($throwRuntimeError("index out of range"),undefined):n[o]=109);}s=BU($subslice(new DI(n),0,o),p,r);o=s[0];p=s[1];o=BV($subslice(new DI(n),0,o),p);}else{o=o-(1)>>0;((o<0||o>=n.length)?($throwRuntimeError("index out of range"),undefined):n[o]=115);t=BU($subslice(new DI(n),0,o),p,9);o=t[0];p=t[1];o=BV($subslice(new DI(n),0,o),$div64(p,new $Uint64(0,60),true));p=$div64(p,(new $Uint64(0,60)),false);if((p.$high>0||(p.$high===0&&p.$low>0))){o=o-(1)>>0;((o<0||o>=n.length)?($throwRuntimeError("index out of range"),undefined):n[o]=109);o=BV($subslice(new DI(n),0,o),$div64(p,new $Uint64(0,60),true));p=$div64(p,(new $Uint64(0,60)),false);if((p.$high>0||(p.$high===0&&p.$low>0))){o=o-(1)>>0;((o<0||o>=n.length)?($throwRuntimeError("index out of range"),undefined):n[o]=104);o=BV($subslice(new DI(n),0,o),p);}}}if(q){o=o-(1)>>0;((o<0||o>=n.length)?($throwRuntimeError("index out of range"),undefined):n[o]=45);}return $bytesToString($subslice(new DI(n),o));};$ptrType(BT).prototype.String=function(){return this.$get().String();};BU=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,u,v,w;p=0;q=new $Uint64(0,0);r=m.$length;s=false;t=0;while(true){if(!(t<o)){break;}u=$div64(n,new $Uint64(0,10),true);s=s||!((u.$high===0&&u.$low===0));if(s){r=r-(1)>>0;((r<0||r>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+r]=((u.$low<<24>>>24)+48<<24>>>24));}n=$div64(n,(new $Uint64(0,10)),false);t=t+(1)>>0;}if(s){r=r-(1)>>0;((r<0||r>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+r]=46);}v=r;w=n;p=v;q=w;return[p,q];};BV=function(m,n){var $ptr,m,n,o;o=m.$length;if((n.$high===0&&n.$low===0)){o=o-(1)>>0;((o<0||o>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+o]=48);}else{while(true){if(!((n.$high>0||(n.$high===0&&n.$low>0)))){break;}o=o-(1)>>0;((o<0||o>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+o]=(($div64(n,new $Uint64(0,10),true).$low<<24>>>24)+48<<24>>>24));n=$div64(n,(new $Uint64(0,10)),false);}}return o;};BT.prototype.Nanoseconds=function(){var $ptr,m;m=this;return new $Int64(m.$high,m.$low);};$ptrType(BT).prototype.Nanoseconds=function(){return this.$get().Nanoseconds();};BT.prototype.Seconds=function(){var $ptr,m,n,o;m=this;n=$div64(m,new BT(0,1000000000),false);o=$div64(m,new BT(0,1000000000),true);return $flatten64(n)+$flatten64(o)/1e+09;};$ptrType(BT).prototype.Seconds=function(){return this.$get().Seconds();};BT.prototype.Minutes=function(){var $ptr,m,n,o;m=this;n=$div64(m,new BT(13,4165425152),false);o=$div64(m,new BT(13,4165425152),true);return $flatten64(n)+$flatten64(o)/6e+10;};$ptrType(BT).prototype.Minutes=function(){return this.$get().Minutes();};BT.prototype.Hours=function(){var $ptr,m,n,o;m=this;n=$div64(m,new BT(838,817405952),false);o=$div64(m,new BT(838,817405952),true);return $flatten64(n)+$flatten64(o)/3.6e+12;};$ptrType(BT).prototype.Hours=function(){return this.$get().Hours();};BM.ptr.prototype.Add=function(m){var $ptr,m,n,o,p,q,r,s,t,u,v,w;n=this;n.sec=(o=n.sec,p=(q=$div64(m,new BT(0,1000000000),false),new $Int64(q.$high,q.$low)),new $Int64(o.$high+p.$high,o.$low+p.$low));s=n.nsec+((r=$div64(m,new BT(0,1000000000),true),r.$low+((r.$high>>31)*4294967296))>>0)>>0;if(s>=1000000000){n.sec=(t=n.sec,u=new $Int64(0,1),new $Int64(t.$high+u.$high,t.$low+u.$low));s=s-(1000000000)>>0;}else if(s<0){n.sec=(v=n.sec,w=new $Int64(0,1),new $Int64(v.$high-w.$high,v.$low-w.$low));s=s+(1000000000)>>0;}n.nsec=s;return n;};BM.prototype.Add=function(m){return this.$val.Add(m);};BM.ptr.prototype.Sub=function(m){var $ptr,m,n,o,p,q,r,s,t;n=this;t=(o=$mul64((p=(q=n.sec,r=m.sec,new $Int64(q.$high-r.$high,q.$low-r.$low)),new BT(p.$high,p.$low)),new BT(0,1000000000)),s=new BT(0,(n.nsec-m.nsec>>0)),new BT(o.$high+s.$high,o.$low+s.$low));if($clone($clone(m,BM).Add(t),BM).Equal($clone(n,BM))){return t;}else if($clone(n,BM).Before($clone(m,BM))){return new BT(-2147483648,0);}else{return new BT(2147483647,4294967295);}};BM.prototype.Sub=function(m){return this.$val.Sub(m);};BM.ptr.prototype.AddDate=function(m,n,o){var $ptr,aa,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;r=$clone(p,BM).Date();$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=r;s=q[0];t=q[1];u=q[2];w=$clone(p,BM).Clock();$s=2;case 2:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}v=w;x=v[0];y=v[1];z=v[2];aa=CF(s+m>>0,t+(n>>0)>>0,u+o>>0,x,y,z,(p.nsec>>0),$clone(p,BM).Location());$s=3;case 3:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}$s=-1;return aa;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.AddDate};}$f.$ptr=$ptr;$f.aa=aa;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.AddDate=function(m,n,o){return this.$val.AddDate(m,n,o);};BM.ptr.prototype.date=function(m){var $ptr,m,n,o,p,q,r,s,t,u,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=0;o=0;p=0;q=0;r=this;t=$clone(r,BM).abs();$s=1;case 1:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}u=BY(t,m);$s=2;case 2:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}s=u;n=s[0];o=s[1];p=s[2];q=s[3];$s=-1;return[n,o,p,q];}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.date};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.date=function(m){return this.$val.date(m);};BY=function(m,n){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,m,n,o,p,q,r,s,t,u,v,w,x,y,z;o=0;p=0;q=0;r=0;s=$div64(m,new $Uint64(0,86400),false);t=$div64(s,new $Uint64(0,146097),false);u=$mul64(new $Uint64(0,400),t);s=(v=$mul64(new $Uint64(0,146097),t),new $Uint64(s.$high-v.$high,s.$low-v.$low));t=$div64(s,new $Uint64(0,36524),false);t=(w=$shiftRightUint64(t,2),new $Uint64(t.$high-w.$high,t.$low-w.$low));u=(x=$mul64(new $Uint64(0,100),t),new $Uint64(u.$high+x.$high,u.$low+x.$low));s=(y=$mul64(new $Uint64(0,36524),t),new $Uint64(s.$high-y.$high,s.$low-y.$low));t=$div64(s,new $Uint64(0,1461),false);u=(z=$mul64(new $Uint64(0,4),t),new $Uint64(u.$high+z.$high,u.$low+z.$low));s=(aa=$mul64(new $Uint64(0,1461),t),new $Uint64(s.$high-aa.$high,s.$low-aa.$low));t=$div64(s,new $Uint64(0,365),false);t=(ab=$shiftRightUint64(t,2),new $Uint64(t.$high-ab.$high,t.$low-ab.$low));u=(ac=t,new $Uint64(u.$high+ac.$high,u.$low+ac.$low));s=(ad=$mul64(new $Uint64(0,365),t),new $Uint64(s.$high-ad.$high,s.$low-ad.$low));o=((ae=(af=new $Int64(u.$high,u.$low),new $Int64(af.$high+-69,af.$low+4075721025)),ae.$low+((ae.$high>>31)*4294967296))>>0);r=(s.$low>>0);if(!n){return[o,p,q,r];}q=r;if(CD(o)){if(q>59){q=q-(1)>>0;}else if((q===59)){p=2;q=29;return[o,p,q,r];}}p=((ag=q/31,(ag===ag&&ag!==1/0&&ag!==-1/0)?ag>>0:$throwRuntimeError("integer divide by zero"))>>0);ai=((ah=p+1>>0,((ah<0||ah>=BZ.length)?($throwRuntimeError("index out of range"),undefined):BZ[ah]))>>0);aj=0;if(q>=ai){p=p+(1)>>0;aj=ai;}else{aj=(((p<0||p>=BZ.length)?($throwRuntimeError("index out of range"),undefined):BZ[p])>>0);}p=p+(1)>>0;q=(q-aj>>0)+1>>0;return[o,p,q,r];};CA=function(m,n){var $ptr,m,n,o;if((m===2)&&CD(n)){return 29;}return((((m<0||m>=BZ.length)?($throwRuntimeError("index out of range"),undefined):BZ[m])-(o=m-1>>0,((o<0||o>=BZ.length)?($throwRuntimeError("index out of range"),undefined):BZ[o]))>>0)>>0);};CB=function(){var $ptr,m,n,o;m=J();n=m[0];o=m[1];return new BM.ptr(new $Int64(n.$high+14,n.$low+2006054656),o,$pkg.Local);};$pkg.Now=CB;BM.ptr.prototype.UTC=function(){var $ptr,m;m=this;m.setLoc(CK);return m;};BM.prototype.UTC=function(){return this.$val.UTC();};BM.ptr.prototype.Local=function(){var $ptr,m;m=this;m.setLoc($pkg.Local);return m;};BM.prototype.Local=function(){return this.$val.Local();};BM.ptr.prototype.In=function(m){var $ptr,m,n;n=this;if(m===DL.nil){$panic(new $String("time: missing Location in call to Time.In"));}n.setLoc(m);return n;};BM.prototype.In=function(m){return this.$val.In(m);};BM.ptr.prototype.Location=function(){var $ptr,m,n;m=this;n=m.loc;if(n===DL.nil){n=$pkg.UTC;}return n;};BM.prototype.Location=function(){return this.$val.Location();};BM.ptr.prototype.Zone=function(){var $ptr,m,n,o,p,q,r,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m="";n=0;o=this;r=o.loc.lookup((q=o.sec,new $Int64(q.$high+-15,q.$low+2288912640)));$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}p=r;m=p[0];n=p[1];$s=-1;return[m,n];}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.Zone};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.Zone=function(){return this.$val.Zone();};BM.ptr.prototype.Unix=function(){var $ptr,m,n;m=this;return(n=m.sec,new $Int64(n.$high+-15,n.$low+2288912640));};BM.prototype.Unix=function(){return this.$val.Unix();};BM.ptr.prototype.UnixNano=function(){var $ptr,m,n,o,p;m=this;return(n=$mul64(((o=m.sec,new $Int64(o.$high+-15,o.$low+2288912640))),new $Int64(0,1000000000)),p=new $Int64(0,m.nsec),new $Int64(n.$high+p.$high,n.$low+p.$low));};BM.prototype.UnixNano=function(){return this.$val.UnixNano();};BM.ptr.prototype.MarshalBinary=function(){var $ptr,m,n,o,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;n=0;if($clone(m,BM).Location()===$pkg.UTC){$s=1;continue;}$s=2;continue;case 1:n=-1;$s=3;continue;case 2:p=$clone(m,BM).Zone();$s=4;case 4:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}o=p;q=o[1];if(!(((r=q%60,r===r?r:$throwRuntimeError("integer divide by zero"))===0))){$s=-1;return[DI.nil,C.New("Time.MarshalBinary: zone offset has fractional minute")];}q=(s=q/(60),(s===s&&s!==1/0&&s!==-1/0)?s>>0:$throwRuntimeError("integer divide by zero"));if(q<-32768||(q===-1)||q>32767){$s=-1;return[DI.nil,C.New("Time.MarshalBinary: unexpected zone offset")];}n=(q<<16>>16);case 3:t=new DI([1,($shiftRightInt64(m.sec,56).$low<<24>>>24),($shiftRightInt64(m.sec,48).$low<<24>>>24),($shiftRightInt64(m.sec,40).$low<<24>>>24),($shiftRightInt64(m.sec,32).$low<<24>>>24),($shiftRightInt64(m.sec,24).$low<<24>>>24),($shiftRightInt64(m.sec,16).$low<<24>>>24),($shiftRightInt64(m.sec,8).$low<<24>>>24),(m.sec.$low<<24>>>24),((m.nsec>>24>>0)<<24>>>24),((m.nsec>>16>>0)<<24>>>24),((m.nsec>>8>>0)<<24>>>24),(m.nsec<<24>>>24),((n>>8<<16>>16)<<24>>>24),(n<<24>>>24)]);$s=-1;return[t,$ifaceNil];}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.MarshalBinary};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.MarshalBinary=function(){return this.$val.MarshalBinary();};BM.ptr.prototype.UnmarshalBinary=function(m){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;o=m;if(o.$length===0){$s=-1;return C.New("Time.UnmarshalBinary: no data");}if(!(((0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0])===1))){$s=-1;return C.New("Time.UnmarshalBinary: unsupported version");}if(!((o.$length===15))){$s=-1;return C.New("Time.UnmarshalBinary: invalid length");}o=$subslice(o,1);n.sec=(p=(q=(r=(s=(t=(u=(v=new $Int64(0,(7>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+7])),w=$shiftLeft64(new $Int64(0,(6>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+6])),8),new $Int64(v.$high|w.$high,(v.$low|w.$low)>>>0)),x=$shiftLeft64(new $Int64(0,(5>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+5])),16),new $Int64(u.$high|x.$high,(u.$low|x.$low)>>>0)),y=$shiftLeft64(new $Int64(0,(4>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+4])),24),new $Int64(t.$high|y.$high,(t.$low|y.$low)>>>0)),z=$shiftLeft64(new $Int64(0,(3>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+3])),32),new $Int64(s.$high|z.$high,(s.$low|z.$low)>>>0)),aa=$shiftLeft64(new $Int64(0,(2>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+2])),40),new $Int64(r.$high|aa.$high,(r.$low|aa.$low)>>>0)),ab=$shiftLeft64(new $Int64(0,(1>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+1])),48),new $Int64(q.$high|ab.$high,(q.$low|ab.$low)>>>0)),ac=$shiftLeft64(new $Int64(0,(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0])),56),new $Int64(p.$high|ac.$high,(p.$low|ac.$low)>>>0));o=$subslice(o,8);n.nsec=((((3>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+3])>>0)|(((2>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+2])>>0)<<8>>0))|(((1>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+1])>>0)<<16>>0))|(((0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0])>>0)<<24>>0);o=$subslice(o,4);ad=$imul(((((1>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+1])<<16>>16)|(((0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0])<<16>>16)<<8<<16>>16))>>0),60);if(ad===-60){$s=1;continue;}$s=2;continue;case 1:n.setLoc(CK);$s=3;continue;case 2:ag=$pkg.Local.lookup((af=n.sec,new $Int64(af.$high+-15,af.$low+2288912640)));$s=4;case 4:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}ae=ag;ah=ae[1];if(ad===ah){n.setLoc($pkg.Local);}else{n.setLoc(CN("",ad));}case 3:$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.UnmarshalBinary};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.UnmarshalBinary=function(m){return this.$val.UnmarshalBinary(m);};BM.ptr.prototype.GobEncode=function(){var $ptr,m,n,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;n=$clone(m,BM).MarshalBinary();$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$s=-1;return n;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.GobEncode};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.GobEncode=function(){return this.$val.GobEncode();};BM.ptr.prototype.GobDecode=function(m){var $ptr,m,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;o=n.UnmarshalBinary(m);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$s=-1;return o;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.GobDecode};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.GobDecode=function(m){return this.$val.GobDecode(m);};BM.ptr.prototype.MarshalJSON=function(){var $ptr,m,n,o,p,q,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;n=$clone(m,BM).Year();$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=n;if(o<0||o>=10000){$s=-1;return[DI.nil,C.New("Time.MarshalJSON: year outside of range [0,9999]")];}p=$makeSlice(DI,0,37);p=$append(p,34);q=$clone(m,BM).AppendFormat(p,"2006-01-02T15:04:05.999999999Z07:00");$s=2;case 2:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;p=$append(p,34);$s=-1;return[p,$ifaceNil];}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.MarshalJSON};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.MarshalJSON=function(){return this.$val.MarshalJSON();};BM.ptr.prototype.UnmarshalJSON=function(m){var $ptr,m,n,o,p,q,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;if($bytesToString(m)==="null"){$s=-1;return $ifaceNil;}o=$ifaceNil;q=AL("\"2006-01-02T15:04:05Z07:00\"",$bytesToString(m));$s=1;case 1:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;BM.copy(n,p[0]);o=p[1];$s=-1;return o;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.UnmarshalJSON};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.UnmarshalJSON=function(m){return this.$val.UnmarshalJSON(m);};BM.ptr.prototype.MarshalText=function(){var $ptr,m,n,o,p,q,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;n=$clone(m,BM).Year();$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=n;if(o<0||o>=10000){$s=-1;return[DI.nil,C.New("Time.MarshalText: year outside of range [0,9999]")];}p=$makeSlice(DI,0,35);q=$clone(m,BM).AppendFormat(p,"2006-01-02T15:04:05.999999999Z07:00");$s=2;case 2:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}$s=-1;return[q,$ifaceNil];}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.MarshalText};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.MarshalText=function(){return this.$val.MarshalText();};BM.ptr.prototype.UnmarshalText=function(m){var $ptr,m,n,o,p,q,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;o=$ifaceNil;q=AL("2006-01-02T15:04:05Z07:00",$bytesToString(m));$s=1;case 1:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;BM.copy(n,p[0]);o=p[1];$s=-1;return o;}return;}if($f===undefined){$f={$blk:BM.ptr.prototype.UnmarshalText};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.$s=$s;$f.$r=$r;return $f;};BM.prototype.UnmarshalText=function(m){return this.$val.UnmarshalText(m);};CC=function(m,n){var $ptr,m,n,o,p,q,r,s;if((n.$high<0||(n.$high===0&&n.$low<0))||(n.$high>0||(n.$high===0&&n.$low>=1000000000))){o=$div64(n,new $Int64(0,1000000000),false);m=(p=o,new $Int64(m.$high+p.$high,m.$low+p.$low));n=(q=$mul64(o,new $Int64(0,1000000000)),new $Int64(n.$high-q.$high,n.$low-q.$low));if((n.$high<0||(n.$high===0&&n.$low<0))){n=(r=new $Int64(0,1000000000),new $Int64(n.$high+r.$high,n.$low+r.$low));m=(s=new $Int64(0,1),new $Int64(m.$high-s.$high,m.$low-s.$low));}}return new BM.ptr(new $Int64(m.$high+14,m.$low+2006054656),((n.$low+((n.$high>>31)*4294967296))>>0),$pkg.Local);};$pkg.Unix=CC;CD=function(m){var $ptr,m,n,o,p;return((n=m%4,n===n?n:$throwRuntimeError("integer divide by zero"))===0)&&(!(((o=m%100,o===o?o:$throwRuntimeError("integer divide by zero"))===0))||((p=m%400,p===p?p:$throwRuntimeError("integer divide by zero"))===0));};CE=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,u,v,w;p=0;q=0;if(n<0){s=(r=((-n-1>>0))/o,(r===r&&r!==1/0&&r!==-1/0)?r>>0:$throwRuntimeError("integer divide by zero"))+1>>0;m=m-(s)>>0;n=n+(($imul(s,o)))>>0;}if(n>=o){u=(t=n/o,(t===t&&t!==1/0&&t!==-1/0)?t>>0:$throwRuntimeError("integer divide by zero"));m=m+(u)>>0;n=n-(($imul(u,o)))>>0;}v=m;w=n;p=v;q=w;return[p,q];};CF=function(m,n,o,p,q,r,s,t){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;bf=$f.bf;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if(t===DL.nil){$panic(new $String("time: missing Location in call to Date"));}u=(n>>0)-1>>0;v=CE(m,u,12);m=v[0];u=v[1];n=(u>>0)+1>>0;w=CE(r,s,1000000000);r=w[0];s=w[1];x=CE(q,r,60);q=x[0];r=x[1];y=CE(p,q,60);p=y[0];q=y[1];z=CE(o,p,24);o=z[0];p=z[1];ac=(aa=(ab=new $Int64(0,m),new $Int64(ab.$high- -69,ab.$low-4075721025)),new $Uint64(aa.$high,aa.$low));ad=$div64(ac,new $Uint64(0,400),false);ac=(ae=$mul64(new $Uint64(0,400),ad),new $Uint64(ac.$high-ae.$high,ac.$low-ae.$low));af=$mul64(new $Uint64(0,146097),ad);ad=$div64(ac,new $Uint64(0,100),false);ac=(ag=$mul64(new $Uint64(0,100),ad),new $Uint64(ac.$high-ag.$high,ac.$low-ag.$low));af=(ah=$mul64(new $Uint64(0,36524),ad),new $Uint64(af.$high+ah.$high,af.$low+ah.$low));ad=$div64(ac,new $Uint64(0,4),false);ac=(ai=$mul64(new $Uint64(0,4),ad),new $Uint64(ac.$high-ai.$high,ac.$low-ai.$low));af=(aj=$mul64(new $Uint64(0,1461),ad),new $Uint64(af.$high+aj.$high,af.$low+aj.$low));ad=ac;af=(ak=$mul64(new $Uint64(0,365),ad),new $Uint64(af.$high+ak.$high,af.$low+ak.$low));af=(al=new $Uint64(0,(am=n-1>>0,((am<0||am>=BZ.length)?($throwRuntimeError("index out of range"),undefined):BZ[am]))),new $Uint64(af.$high+al.$high,af.$low+al.$low));if(CD(m)&&n>=3){af=(an=new $Uint64(0,1),new $Uint64(af.$high+an.$high,af.$low+an.$low));}af=(ao=new $Uint64(0,(o-1>>0)),new $Uint64(af.$high+ao.$high,af.$low+ao.$low));ap=$mul64(af,new $Uint64(0,86400));ap=(aq=new $Uint64(0,((($imul(p,3600))+($imul(q,60))>>0)+r>>0)),new $Uint64(ap.$high+aq.$high,ap.$low+aq.$low));as=(ar=new $Int64(ap.$high,ap.$low),new $Int64(ar.$high+-2147483647,ar.$low+3844486912));au=t.lookup(as);$s=1;case 1:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}at=au;av=at[1];aw=at[3];ax=at[4];if(!((av===0))){$s=2;continue;}$s=3;continue;case 2:az=(ay=new $Int64(0,av),new $Int64(as.$high-ay.$high,as.$low-ay.$low));if((az.$high<aw.$high||(az.$high===aw.$high&&az.$low<aw.$low))){$s=5;continue;}if((az.$high>ax.$high||(az.$high===ax.$high&&az.$low>=ax.$low))){$s=6;continue;}$s=7;continue;case 5:bb=t.lookup(new $Int64(aw.$high-0,aw.$low-1));$s=8;case 8:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}ba=bb;av=ba[1];$s=7;continue;case 6:bd=t.lookup(ax);$s=9;case 9:if($c){$c=false;bd=bd.$blk();}if(bd&&bd.$blk!==undefined){break s;}bc=bd;av=bc[1];case 7:case 4:as=(be=new $Int64(0,av),new $Int64(as.$high-be.$high,as.$low-be.$low));case 3:bf=new BM.ptr(new $Int64(as.$high+14,as.$low+2006054656),(s>>0),DL.nil);bf.setLoc(t);$s=-1;return bf;}return;}if($f===undefined){$f={$blk:CF};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$f.bf=bf;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Date=CF;BM.ptr.prototype.Truncate=function(m){var $ptr,m,n,o,p;n=this;if((m.$high<0||(m.$high===0&&m.$low<=0))){return n;}o=CG($clone(n,BM),m);p=o[1];return $clone(n,BM).Add(new BT(-p.$high,-p.$low));};BM.prototype.Truncate=function(m){return this.$val.Truncate(m);};BM.ptr.prototype.Round=function(m){var $ptr,m,n,o,p,q;n=this;if((m.$high<0||(m.$high===0&&m.$low<=0))){return n;}o=CG($clone(n,BM),m);p=o[1];if((q=new BT(p.$high+p.$high,p.$low+p.$low),(q.$high<m.$high||(q.$high===m.$high&&q.$low<m.$low)))){return $clone(n,BM).Add(new BT(-p.$high,-p.$low));}return $clone(n,BM).Add(new BT(m.$high-p.$high,m.$low-p.$low));};BM.prototype.Round=function(m){return this.$val.Round(m);};CG=function(m,n){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,m,n,o,p,q,r,s,t,u,v,w,x,y,z;o=0;p=new BT(0,0);q=false;r=m.nsec;if((s=m.sec,(s.$high<0||(s.$high===0&&s.$low<0)))){q=true;m.sec=(t=m.sec,new $Int64(-t.$high,-t.$low));r=-r;if(r<0){r=r+(1000000000)>>0;m.sec=(u=m.sec,v=new $Int64(0,1),new $Int64(u.$high-v.$high,u.$low-v.$low));}}if((n.$high<0||(n.$high===0&&n.$low<1000000000))&&(w=$div64(new BT(0,1000000000),(new BT(n.$high+n.$high,n.$low+n.$low)),true),(w.$high===0&&w.$low===0))){o=((y=r/((n.$low+((n.$high>>31)*4294967296))>>0),(y===y&&y!==1/0&&y!==-1/0)?y>>0:$throwRuntimeError("integer divide by zero"))>>0)&1;p=new BT(0,(z=r%((n.$low+((n.$high>>31)*4294967296))>>0),z===z?z:$throwRuntimeError("integer divide by zero")));}else if((x=$div64(n,new BT(0,1000000000),true),(x.$high===0&&x.$low===0))){ab=(aa=$div64(n,new BT(0,1000000000),false),new $Int64(aa.$high,aa.$low));o=((ac=$div64(m.sec,ab,false),ac.$low+((ac.$high>>31)*4294967296))>>0)&1;p=(ad=$mul64((ae=$div64(m.sec,ab,true),new BT(ae.$high,ae.$low)),new BT(0,1000000000)),af=new BT(0,r),new BT(ad.$high+af.$high,ad.$low+af.$low));}else{ah=(ag=m.sec,new $Uint64(ag.$high,ag.$low));ai=$mul64(($shiftRightUint64(ah,32)),new $Uint64(0,1000000000));aj=$shiftRightUint64(ai,32);ak=$shiftLeft64(ai,32);ai=$mul64((new $Uint64(ah.$high&0,(ah.$low&4294967295)>>>0)),new $Uint64(0,1000000000));al=ak;am=new $Uint64(ak.$high+ai.$high,ak.$low+ai.$low);an=al;ak=am;if((ak.$high<an.$high||(ak.$high===an.$high&&ak.$low<an.$low))){aj=(ao=new $Uint64(0,1),new $Uint64(aj.$high+ao.$high,aj.$low+ao.$low));}ap=ak;aq=(ar=new $Uint64(0,r),new $Uint64(ak.$high+ar.$high,ak.$low+ar.$low));an=ap;ak=aq;if((ak.$high<an.$high||(ak.$high===an.$high&&ak.$low<an.$low))){aj=(as=new $Uint64(0,1),new $Uint64(aj.$high+as.$high,aj.$low+as.$low));}at=new $Uint64(n.$high,n.$low);while(true){if(!(!((au=$shiftRightUint64(at,63),(au.$high===0&&au.$low===1))))){break;}at=$shiftLeft64(at,(1));}av=new $Uint64(0,0);while(true){o=0;if((aj.$high>at.$high||(aj.$high===at.$high&&aj.$low>at.$low))||(aj.$high===at.$high&&aj.$low===at.$low)&&(ak.$high>av.$high||(ak.$high===av.$high&&ak.$low>=av.$low))){o=1;aw=ak;ax=new $Uint64(ak.$high-av.$high,ak.$low-av.$low);an=aw;ak=ax;if((ak.$high>an.$high||(ak.$high===an.$high&&ak.$low>an.$low))){aj=(ay=new $Uint64(0,1),new $Uint64(aj.$high-ay.$high,aj.$low-ay.$low));}aj=(az=at,new $Uint64(aj.$high-az.$high,aj.$low-az.$low));}if((at.$high===0&&at.$low===0)&&(ba=new $Uint64(n.$high,n.$low),(av.$high===ba.$high&&av.$low===ba.$low))){break;}av=$shiftRightUint64(av,(1));av=(bb=$shiftLeft64((new $Uint64(at.$high&0,(at.$low&1)>>>0)),63),new $Uint64(av.$high|bb.$high,(av.$low|bb.$low)>>>0));at=$shiftRightUint64(at,(1));}p=new BT(ak.$high,ak.$low);}if(q&&!((p.$high===0&&p.$low===0))){o=(o^(1))>>0;p=new BT(n.$high-p.$high,n.$low-p.$low);}return[o,p];};CH.ptr.prototype.get=function(){var $ptr,m,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;if(m===DL.nil){$s=-1;return CK;}if(m===CL){$s=1;continue;}$s=2;continue;case 1:$r=CM.Do(H);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return m;}return;}if($f===undefined){$f={$blk:CH.ptr.prototype.get};}$f.$ptr=$ptr;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};CH.prototype.get=function(){return this.$val.get();};CH.ptr.prototype.String=function(){var $ptr,m,n,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;n=m.get();$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$s=-1;return n.name;}return;}if($f===undefined){$f={$blk:CH.ptr.prototype.String};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.$s=$s;$f.$r=$r;return $f;};CH.prototype.String=function(){return this.$val.String();};CN=function(m,n){var $ptr,m,n,o,p;o=new CH.ptr(m,new DC([new CI.ptr(m,n,false)]),new DD([new CJ.ptr(new $Int64(-2147483648,0),0,false,false)]),new $Int64(-2147483648,0),new $Int64(2147483647,4294967295),DE.nil);o.cacheZone=(p=o.zone,(0>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+0]));return o;};$pkg.FixedZone=CN;CH.ptr.prototype.lookup=function(m){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n="";o=0;p=false;q=new $Int64(0,0);r=new $Int64(0,0);s=this;t=s.get();$s=1;case 1:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}s=t;if(s.zone.$length===0){n="UTC";o=0;p=false;q=new $Int64(-2147483648,0);r=new $Int64(2147483647,4294967295);$s=-1;return[n,o,p,q,r];}u=s.cacheZone;if(!(u===DE.nil)&&(v=s.cacheStart,(v.$high<m.$high||(v.$high===m.$high&&v.$low<=m.$low)))&&(w=s.cacheEnd,(m.$high<w.$high||(m.$high===w.$high&&m.$low<w.$low)))){n=u.name;o=u.offset;p=u.isDST;q=s.cacheStart;r=s.cacheEnd;$s=-1;return[n,o,p,q,r];}if((s.tx.$length===0)||(x=(y=s.tx,(0>=y.$length?($throwRuntimeError("index out of range"),undefined):y.$array[y.$offset+0])).when,(m.$high<x.$high||(m.$high===x.$high&&m.$low<x.$low)))){ab=(z=s.zone,aa=s.lookupFirstZone(),((aa<0||aa>=z.$length)?($throwRuntimeError("index out of range"),undefined):z.$array[z.$offset+aa]));n=ab.name;o=ab.offset;p=ab.isDST;q=new $Int64(-2147483648,0);if(s.tx.$length>0){r=(ac=s.tx,(0>=ac.$length?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+0])).when;}else{r=new $Int64(2147483647,4294967295);}$s=-1;return[n,o,p,q,r];}ad=s.tx;r=new $Int64(2147483647,4294967295);ae=0;af=ad.$length;while(true){if(!((af-ae>>0)>1)){break;}ah=ae+(ag=((af-ae>>0))/2,(ag===ag&&ag!==1/0&&ag!==-1/0)?ag>>0:$throwRuntimeError("integer divide by zero"))>>0;ai=((ah<0||ah>=ad.$length)?($throwRuntimeError("index out of range"),undefined):ad.$array[ad.$offset+ah]).when;if((m.$high<ai.$high||(m.$high===ai.$high&&m.$low<ai.$low))){r=ai;af=ah;}else{ae=ah;}}al=(aj=s.zone,ak=((ae<0||ae>=ad.$length)?($throwRuntimeError("index out of range"),undefined):ad.$array[ad.$offset+ae]).index,((ak<0||ak>=aj.$length)?($throwRuntimeError("index out of range"),undefined):aj.$array[aj.$offset+ak]));n=al.name;o=al.offset;p=al.isDST;q=((ae<0||ae>=ad.$length)?($throwRuntimeError("index out of range"),undefined):ad.$array[ad.$offset+ae]).when;$s=-1;return[n,o,p,q,r];}return;}if($f===undefined){$f={$blk:CH.ptr.prototype.lookup};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};CH.prototype.lookup=function(m){return this.$val.lookup(m);};CH.ptr.prototype.lookupFirstZone=function(){var $ptr,m,n,o,p,q,r,s,t,u,v,w;m=this;if(!m.firstZoneUsed()){return 0;}if(m.tx.$length>0&&(n=m.zone,o=(p=m.tx,(0>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+0])).index,((o<0||o>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+o])).isDST){r=((q=m.tx,(0>=q.$length?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+0])).index>>0)-1>>0;while(true){if(!(r>=0)){break;}if(!(s=m.zone,((r<0||r>=s.$length)?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+r])).isDST){return r;}r=r-(1)>>0;}}t=m.zone;u=0;while(true){if(!(u<t.$length)){break;}v=u;if(!(w=m.zone,((v<0||v>=w.$length)?($throwRuntimeError("index out of range"),undefined):w.$array[w.$offset+v])).isDST){return v;}u++;}return 0;};CH.prototype.lookupFirstZone=function(){return this.$val.lookupFirstZone();};CH.ptr.prototype.firstZoneUsed=function(){var $ptr,m,n,o,p;m=this;n=m.tx;o=0;while(true){if(!(o<n.$length)){break;}p=$clone(((o<0||o>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+o]),CJ);if(p.index===0){return true;}o++;}return false;};CH.prototype.firstZoneUsed=function(){return this.$val.firstZoneUsed();};CH.ptr.prototype.lookupName=function(m,n){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=0;p=false;q=false;r=this;s=r.get();$s=1;case 1:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;t=r.zone;u=0;case 2:if(!(u<t.$length)){$s=3;continue;}v=u;x=(w=r.zone,((v<0||v>=w.$length)?($throwRuntimeError("index out of range"),undefined):w.$array[w.$offset+v]));if(x.name===m){$s=4;continue;}$s=5;continue;case 4:aa=r.lookup((z=new $Int64(0,x.offset),new $Int64(n.$high-z.$high,n.$low-z.$low)));$s=6;case 6:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}y=aa;ab=y[0];ac=y[1];ad=y[2];if(ab===x.name){ae=ac;af=ad;ag=true;o=ae;p=af;q=ag;$s=-1;return[o,p,q];}case 5:u++;$s=2;continue;case 3:ah=r.zone;ai=0;while(true){if(!(ai<ah.$length)){break;}aj=ai;al=(ak=r.zone,((aj<0||aj>=ak.$length)?($throwRuntimeError("index out of range"),undefined):ak.$array[ak.$offset+aj]));if(al.name===m){am=al.offset;an=al.isDST;ao=true;o=am;p=an;q=ao;$s=-1;return[o,p,q];}ai++;}$s=-1;return[o,p,q];}return;}if($f===undefined){$f={$blk:CH.ptr.prototype.lookupName};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};CH.prototype.lookupName=function(m,n){return this.$val.lookupName(m,n);};DT.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];BM.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Format",name:"Format",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"AppendFormat",name:"AppendFormat",pkg:"",typ:$funcType([DI,$String],[DI],false)},{prop:"After",name:"After",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"Before",name:"Before",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"Equal",name:"Equal",pkg:"",typ:$funcType([BM],[$Bool],false)},{prop:"IsZero",name:"IsZero",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"abs",name:"abs",pkg:"time",typ:$funcType([],[$Uint64],false)},{prop:"locabs",name:"locabs",pkg:"time",typ:$funcType([],[$String,$Int,$Uint64],false)},{prop:"Date",name:"Date",pkg:"",typ:$funcType([],[$Int,BN,$Int],false)},{prop:"Year",name:"Year",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Month",name:"Month",pkg:"",typ:$funcType([],[BN],false)},{prop:"Day",name:"Day",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Weekday",name:"Weekday",pkg:"",typ:$funcType([],[BP],false)},{prop:"ISOWeek",name:"ISOWeek",pkg:"",typ:$funcType([],[$Int,$Int],false)},{prop:"Clock",name:"Clock",pkg:"",typ:$funcType([],[$Int,$Int,$Int],false)},{prop:"Hour",name:"Hour",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Minute",name:"Minute",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Second",name:"Second",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Nanosecond",name:"Nanosecond",pkg:"",typ:$funcType([],[$Int],false)},{prop:"YearDay",name:"YearDay",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Add",name:"Add",pkg:"",typ:$funcType([BT],[BM],false)},{prop:"Sub",name:"Sub",pkg:"",typ:$funcType([BM],[BT],false)},{prop:"AddDate",name:"AddDate",pkg:"",typ:$funcType([$Int,$Int,$Int],[BM],false)},{prop:"date",name:"date",pkg:"time",typ:$funcType([$Bool],[$Int,BN,$Int,$Int],false)},{prop:"UTC",name:"UTC",pkg:"",typ:$funcType([],[BM],false)},{prop:"Local",name:"Local",pkg:"",typ:$funcType([],[BM],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([DL],[BM],false)},{prop:"Location",name:"Location",pkg:"",typ:$funcType([],[DL],false)},{prop:"Zone",name:"Zone",pkg:"",typ:$funcType([],[$String,$Int],false)},{prop:"Unix",name:"Unix",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"UnixNano",name:"UnixNano",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"MarshalBinary",name:"MarshalBinary",pkg:"",typ:$funcType([],[DI,$error],false)},{prop:"GobEncode",name:"GobEncode",pkg:"",typ:$funcType([],[DI,$error],false)},{prop:"MarshalJSON",name:"MarshalJSON",pkg:"",typ:$funcType([],[DI,$error],false)},{prop:"MarshalText",name:"MarshalText",pkg:"",typ:$funcType([],[DI,$error],false)},{prop:"Truncate",name:"Truncate",pkg:"",typ:$funcType([BT],[BM],false)},{prop:"Round",name:"Round",pkg:"",typ:$funcType([BT],[BM],false)}];DX.methods=[{prop:"setLoc",name:"setLoc",pkg:"time",typ:$funcType([DL],[],false)},{prop:"UnmarshalBinary",name:"UnmarshalBinary",pkg:"",typ:$funcType([DI],[$error],false)},{prop:"GobDecode",name:"GobDecode",pkg:"",typ:$funcType([DI],[$error],false)},{prop:"UnmarshalJSON",name:"UnmarshalJSON",pkg:"",typ:$funcType([DI],[$error],false)},{prop:"UnmarshalText",name:"UnmarshalText",pkg:"",typ:$funcType([DI],[$error],false)}];BN.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];BP.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];BT.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Nanoseconds",name:"Nanoseconds",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Seconds",name:"Seconds",pkg:"",typ:$funcType([],[$Float64],false)},{prop:"Minutes",name:"Minutes",pkg:"",typ:$funcType([],[$Float64],false)},{prop:"Hours",name:"Hours",pkg:"",typ:$funcType([],[$Float64],false)}];DL.methods=[{prop:"get",name:"get",pkg:"time",typ:$funcType([],[DL],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"lookup",name:"lookup",pkg:"time",typ:$funcType([$Int64],[$String,$Int,$Bool,$Int64,$Int64],false)},{prop:"lookupFirstZone",name:"lookupFirstZone",pkg:"time",typ:$funcType([],[$Int],false)},{prop:"firstZoneUsed",name:"firstZoneUsed",pkg:"time",typ:$funcType([],[$Bool],false)},{prop:"lookupName",name:"lookupName",pkg:"time",typ:$funcType([$String,$Int64],[$Int,$Bool,$Bool],false)}];AF.init("",[{prop:"Layout",name:"Layout",exported:true,typ:$String,tag:""},{prop:"Value",name:"Value",exported:true,typ:$String,tag:""},{prop:"LayoutElem",name:"LayoutElem",exported:true,typ:$String,tag:""},{prop:"ValueElem",name:"ValueElem",exported:true,typ:$String,tag:""},{prop:"Message",name:"Message",exported:true,typ:$String,tag:""}]);BM.init("time",[{prop:"sec",name:"sec",exported:false,typ:$Int64,tag:""},{prop:"nsec",name:"nsec",exported:false,typ:$Int32,tag:""},{prop:"loc",name:"loc",exported:false,typ:DL,tag:""}]);CH.init("time",[{prop:"name",name:"name",exported:false,typ:$String,tag:""},{prop:"zone",name:"zone",exported:false,typ:DC,tag:""},{prop:"tx",name:"tx",exported:false,typ:DD,tag:""},{prop:"cacheStart",name:"cacheStart",exported:false,typ:$Int64,tag:""},{prop:"cacheEnd",name:"cacheEnd",exported:false,typ:$Int64,tag:""},{prop:"cacheZone",name:"cacheZone",exported:false,typ:DE,tag:""}]);CI.init("time",[{prop:"name",name:"name",exported:false,typ:$String,tag:""},{prop:"offset",name:"offset",exported:false,typ:$Int,tag:""},{prop:"isDST",name:"isDST",exported:false,typ:$Bool,tag:""}]);CJ.init("time",[{prop:"when",name:"when",exported:false,typ:$Int64,tag:""},{prop:"index",name:"index",exported:false,typ:$Uint8,tag:""},{prop:"isstd",name:"isstd",exported:false,typ:$Bool,tag:""},{prop:"isutc",name:"isutc",exported:false,typ:$Bool,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=C.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}CL=new CH.ptr("",DC.nil,DD.nil,new $Int64(0,0),new $Int64(0,0),DE.nil);CM=new E.Once.ptr(false,false);R=$toNativeArray($kindInt,[260,265,524,526,528,274]);U=new DF(["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]);V=new DF(["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]);W=new DF(["---","Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]);X=new DF(["---","January","February","March","April","May","June","July","August","September","October","November","December"]);AB=C.New("time: invalid number");AE=C.New("bad value for field");AR=C.New("time: bad [0-9]*");BO=$toNativeArray($kindString,["January","February","March","April","May","June","July","August","September","October","November","December"]);BQ=$toNativeArray($kindString,["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]);AU=$makeMap($String.keyFor,[{k:"ns",v:new $Int64(0,1)},{k:"us",v:new $Int64(0,1000)},{k:"\xC2\xB5s",v:new $Int64(0,1000)},{k:"\xCE\xBCs",v:new $Int64(0,1000)},{k:"ms",v:new $Int64(0,1000000)},{k:"s",v:new $Int64(0,1000000000)},{k:"m",v:new $Int64(13,4165425152)},{k:"h",v:new $Int64(838,817405952)}]);BZ=$toNativeArray($kindInt32,[0,31,59,90,120,151,181,212,243,273,304,334,365]);CK=new CH.ptr("UTC",DC.nil,DD.nil,new $Int64(0,0),new $Int64(0,0),DE.nil);$pkg.UTC=CK;$pkg.Local=CL;l=D.Getenv("ZONEINFO");$s=6;case 6:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}k=l;CO=k[0];CS=C.New("malformed time zone information");F();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["unicode/utf8"]=(function(){var $pkg={},$init,B,A,C,F,G,H,I,J,K,L,M,N,Q;B=$pkg.acceptRange=$newType(0,$kindStruct,"utf8.acceptRange",true,"unicode/utf8",false,function(lo_,hi_){this.$val=this;if(arguments.length===0){this.lo=0;this.hi=0;return;}this.lo=lo_;this.hi=hi_;});F=function(a){var $ptr,a,aa,ab,ac,ad,ae,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;b=0;c=0;d=a.$length;if(d<1){e=65533;f=0;b=e;c=f;return[b,c];}g=(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]);h=((g<0||g>=A.length)?($throwRuntimeError("index out of range"),undefined):A[g]);if(h>=240){i=((h>>0)<<31>>0)>>31>>0;j=((((0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0])>>0)&~i)>>0)|(65533&i);k=1;b=j;c=k;return[b,c];}l=(h&7)>>>0;n=$clone((m=h>>>4<<24>>>24,((m<0||m>=C.length)?($throwRuntimeError("index out of range"),undefined):C[m])),B);if(d<(l>>0)){o=65533;p=1;b=o;c=p;return[b,c];}q=(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]);if(q<n.lo||n.hi<q){r=65533;s=1;b=r;c=s;return[b,c];}if(l===2){t=((((g&31)>>>0)>>0)<<6>>0)|(((q&63)>>>0)>>0);u=2;b=t;c=u;return[b,c];}v=(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]);if(v<128||191<v){w=65533;x=1;b=w;c=x;return[b,c];}if(l===3){y=(((((g&15)>>>0)>>0)<<12>>0)|((((q&63)>>>0)>>0)<<6>>0))|(((v&63)>>>0)>>0);z=3;b=y;c=z;return[b,c];}aa=(3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]);if(aa<128||191<aa){ab=65533;ac=1;b=ab;c=ac;return[b,c];}ad=((((((g&7)>>>0)>>0)<<18>>0)|((((q&63)>>>0)>>0)<<12>>0))|((((v&63)>>>0)>>0)<<6>>0))|(((aa&63)>>>0)>>0);ae=4;b=ad;c=ae;return[b,c];};$pkg.DecodeRune=F;G=function(a){var $ptr,a,aa,ab,ac,ad,ae,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;b=0;c=0;d=a.length;if(d<1){e=65533;f=0;b=e;c=f;return[b,c];}g=a.charCodeAt(0);h=((g<0||g>=A.length)?($throwRuntimeError("index out of range"),undefined):A[g]);if(h>=240){i=((h>>0)<<31>>0)>>31>>0;j=(((a.charCodeAt(0)>>0)&~i)>>0)|(65533&i);k=1;b=j;c=k;return[b,c];}l=(h&7)>>>0;n=$clone((m=h>>>4<<24>>>24,((m<0||m>=C.length)?($throwRuntimeError("index out of range"),undefined):C[m])),B);if(d<(l>>0)){o=65533;p=1;b=o;c=p;return[b,c];}q=a.charCodeAt(1);if(q<n.lo||n.hi<q){r=65533;s=1;b=r;c=s;return[b,c];}if(l===2){t=((((g&31)>>>0)>>0)<<6>>0)|(((q&63)>>>0)>>0);u=2;b=t;c=u;return[b,c];}v=a.charCodeAt(2);if(v<128||191<v){w=65533;x=1;b=w;c=x;return[b,c];}if(l===3){y=(((((g&15)>>>0)>>0)<<12>>0)|((((q&63)>>>0)>>0)<<6>>0))|(((v&63)>>>0)>>0);z=3;b=y;c=z;return[b,c];}aa=a.charCodeAt(3);if(aa<128||191<aa){ab=65533;ac=1;b=ab;c=ac;return[b,c];}ad=((((((g&7)>>>0)>>0)<<18>>0)|((((q&63)>>>0)>>0)<<12>>0))|((((v&63)>>>0)>>0)<<6>>0))|(((aa&63)>>>0)>>0);ae=4;b=ad;c=ae;return[b,c];};$pkg.DecodeRuneInString=G;H=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;b=0;c=0;d=a.$length;if(d===0){e=65533;f=0;b=e;c=f;return[b,c];}g=d-1>>0;b=(((g<0||g>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+g])>>0);if(b<128){h=b;i=1;b=h;c=i;return[b,c];}j=d-4>>0;if(j<0){j=0;}g=g-(1)>>0;while(true){if(!(g>=j)){break;}if(N(((g<0||g>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+g]))){break;}g=g-(1)>>0;}if(g<0){g=0;}k=F($subslice(a,g,d));b=k[0];c=k[1];if(!(((g+c>>0)===d))){l=65533;m=1;b=l;c=m;return[b,c];}n=b;o=c;b=n;c=o;return[b,c];};$pkg.DecodeLastRune=H;I=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;b=0;c=0;d=a.length;if(d===0){e=65533;f=0;b=e;c=f;return[b,c];}g=d-1>>0;b=(a.charCodeAt(g)>>0);if(b<128){h=b;i=1;b=h;c=i;return[b,c];}j=d-4>>0;if(j<0){j=0;}g=g-(1)>>0;while(true){if(!(g>=j)){break;}if(N(a.charCodeAt(g))){break;}g=g-(1)>>0;}if(g<0){g=0;}k=G($substring(a,g,d));b=k[0];c=k[1];if(!(((g+c>>0)===d))){l=65533;m=1;b=l;c=m;return[b,c];}n=b;o=c;b=n;c=o;return[b,c];};$pkg.DecodeLastRuneInString=I;J=function(a){var $ptr,a;if(a<0){return-1;}else if(a<=127){return 1;}else if(a<=2047){return 2;}else if(55296<=a&&a<=57343){return-1;}else if(a<=65535){return 3;}else if(a<=1114111){return 4;}return-1;};$pkg.RuneLen=J;K=function(a,b){var $ptr,a,b,c;c=(b>>>0);if(c<=127){(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=(b<<24>>>24));return 1;}else if(c<=2047){$unused((1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]));(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=((192|((b>>6>>0)<<24>>>24))>>>0));(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=((128|(((b<<24>>>24)&63)>>>0))>>>0));return 2;}else if((c>1114111)||(55296<=c&&c<=57343)){b=65533;$unused((2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]));(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=((224|((b>>12>>0)<<24>>>24))>>>0));(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=((128|((((b>>6>>0)<<24>>>24)&63)>>>0))>>>0));(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]=((128|(((b<<24>>>24)&63)>>>0))>>>0));return 3;}else if(c<=65535){$unused((2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]));(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=((224|((b>>12>>0)<<24>>>24))>>>0));(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=((128|((((b>>6>>0)<<24>>>24)&63)>>>0))>>>0));(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]=((128|(((b<<24>>>24)&63)>>>0))>>>0));return 3;}else{$unused((3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]));(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=((240|((b>>18>>0)<<24>>>24))>>>0));(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=((128|((((b>>12>>0)<<24>>>24)&63)>>>0))>>>0));(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]=((128|((((b>>6>>0)<<24>>>24)&63)>>>0))>>>0));(3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]=((128|(((b<<24>>>24)&63)>>>0))>>>0));return 4;}};$pkg.EncodeRune=K;L=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;b=a.$length;c=0;d=0;while(true){if(!(d<b)){break;}c=c+(1)>>0;e=((d<0||d>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+d]);if(e<128){d=d+(1)>>0;continue;}f=((e<0||e>=A.length)?($throwRuntimeError("index out of range"),undefined):A[e]);if(f===241){d=d+(1)>>0;continue;}g=(((f&7)>>>0)>>0);if((d+g>>0)>b){d=d+(1)>>0;continue;}i=$clone((h=f>>>4<<24>>>24,((h<0||h>=C.length)?($throwRuntimeError("index out of range"),undefined):C[h])),B);k=(j=d+1>>0,((j<0||j>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+j]));if(k<i.lo||i.hi<k){g=1;}else if(g===2){}else{m=(l=d+2>>0,((l<0||l>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+l]));if(m<128||191<m){g=1;}else if(g===3){}else{o=(n=d+3>>0,((n<0||n>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+n]));if(o<128||191<o){g=1;}}}d=d+(g)>>0;}return c;};$pkg.RuneCount=L;M=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l;b=0;c=a.length;d=0;while(true){if(!(d<c)){break;}e=a.charCodeAt(d);if(e<128){d=d+(1)>>0;b=b+(1)>>0;continue;}f=((e<0||e>=A.length)?($throwRuntimeError("index out of range"),undefined):A[e]);if(f===241){d=d+(1)>>0;b=b+(1)>>0;continue;}g=(((f&7)>>>0)>>0);if((d+g>>0)>c){d=d+(1)>>0;b=b+(1)>>0;continue;}i=$clone((h=f>>>4<<24>>>24,((h<0||h>=C.length)?($throwRuntimeError("index out of range"),undefined):C[h])),B);j=a.charCodeAt((d+1>>0));if(j<i.lo||i.hi<j){g=1;}else if(g===2){}else{k=a.charCodeAt((d+2>>0));if(k<128||191<k){g=1;}else if(g===3){}else{l=a.charCodeAt((d+3>>0));if(l<128||191<l){g=1;}}}d=d+(g)>>0;b=b+(1)>>0;}b=b;return b;};$pkg.RuneCountInString=M;N=function(a){var $ptr,a;return!((((a&192)>>>0)===128));};$pkg.RuneStart=N;Q=function(a){var $ptr,a;if(0<=a&&a<55296){return true;}else if(57343<a&&a<=1114111){return true;}return false;};$pkg.ValidRune=Q;B.init("unicode/utf8",[{prop:"lo",name:"lo",exported:false,typ:$Uint8,tag:""},{prop:"hi",name:"hi",exported:false,typ:$Uint8,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:A=$toNativeArray($kindUint8,[240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,19,3,3,3,3,3,3,3,3,3,3,3,3,35,3,3,52,4,4,4,68,241,241,241,241,241,241,241,241,241,241,241]);C=$toNativeArray($kindStruct,[new B.ptr(128,191),new B.ptr(160,191),new B.ptr(128,159),new B.ptr(144,191),new B.ptr(128,143)]);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["strconv"]=(function(){var $pkg={},$init,B,A,C,S,Y,AC,AH,AO,AX,CS,CT,CU,CV,CW,CX,CY,CZ,DA,DB,DC,DD,DE,DF,DG,DH,DI,G,K,L,M,AD,AI,AJ,AK,AP,CQ,AQ,CR,BD,BE,BF,BG,BH,BN,D,E,H,I,J,N,O,P,Q,R,T,U,V,W,X,Z,AA,AB,AE,AF,AG,AL,AM,AN,AR,AS,AT,AU,AV,AW,AY,AZ,BA,BB,BC,BI,BJ,BK,BM,BO,BP,BR,BS,BT,BU,BV,BW,BX,CB,CD,CG,CH,CI,CJ,CK,CL,CM,CN,CP;B=$packages["errors"];A=$packages["math"];C=$packages["unicode/utf8"];S=$pkg.NumError=$newType(0,$kindStruct,"strconv.NumError",true,"strconv",true,function(Func_,Num_,Err_){this.$val=this;if(arguments.length===0){this.Func="";this.Num="";this.Err=$ifaceNil;return;}this.Func=Func_;this.Num=Num_;this.Err=Err_;});Y=$pkg.decimal=$newType(0,$kindStruct,"strconv.decimal",true,"strconv",false,function(d_,nd_,dp_,neg_,trunc_){this.$val=this;if(arguments.length===0){this.d=CY.zero();this.nd=0;this.dp=0;this.neg=false;this.trunc=false;return;}this.d=d_;this.nd=nd_;this.dp=dp_;this.neg=neg_;this.trunc=trunc_;});AC=$pkg.leftCheat=$newType(0,$kindStruct,"strconv.leftCheat",true,"strconv",false,function(delta_,cutoff_){this.$val=this;if(arguments.length===0){this.delta=0;this.cutoff="";return;}this.delta=delta_;this.cutoff=cutoff_;});AH=$pkg.extFloat=$newType(0,$kindStruct,"strconv.extFloat",true,"strconv",false,function(mant_,exp_,neg_){this.$val=this;if(arguments.length===0){this.mant=new $Uint64(0,0);this.exp=0;this.neg=false;return;}this.mant=mant_;this.exp=exp_;this.neg=neg_;});AO=$pkg.floatInfo=$newType(0,$kindStruct,"strconv.floatInfo",true,"strconv",false,function(mantbits_,expbits_,bias_){this.$val=this;if(arguments.length===0){this.mantbits=0;this.expbits=0;this.bias=0;return;}this.mantbits=mantbits_;this.expbits=expbits_;this.bias=bias_;});AX=$pkg.decimalSlice=$newType(0,$kindStruct,"strconv.decimalSlice",true,"strconv",false,function(d_,nd_,dp_,neg_){this.$val=this;if(arguments.length===0){this.d=DA.nil;this.nd=0;this.dp=0;this.neg=false;return;}this.d=d_;this.nd=nd_;this.dp=dp_;this.neg=neg_;});CS=$sliceType($Int);CT=$sliceType($Float64);CU=$sliceType($Float32);CV=$sliceType(AC);CW=$sliceType($Uint16);CX=$sliceType($Uint32);CY=$arrayType($Uint8,800);CZ=$ptrType(S);DA=$sliceType($Uint8);DB=$arrayType($Uint8,24);DC=$arrayType($Uint8,32);DD=$ptrType(AO);DE=$arrayType($Uint8,65);DF=$arrayType($Uint8,4);DG=$ptrType(Y);DH=$ptrType(AX);DI=$ptrType(AH);D=function(a){var $ptr,a,b;b=a;if(b===("1")||b===("t")||b===("T")||b===("true")||b===("TRUE")||b===("True")){return[true,$ifaceNil];}else if(b===("0")||b===("f")||b===("F")||b===("false")||b===("FALSE")||b===("False")){return[false,$ifaceNil];}return[false,T("ParseBool",a)];};$pkg.ParseBool=D;E=function(a){var $ptr,a;if(a){return"true";}return"false";};$pkg.FormatBool=E;H=function(a,b){var $ptr,a,b,c,d,e;if(!((a.length===b.length))){return false;}c=0;while(true){if(!(c<a.length)){break;}d=a.charCodeAt(c);if(65<=d&&d<=90){d=d+(32)<<24>>>24;}e=b.charCodeAt(c);if(65<=e&&e<=90){e=e+(32)<<24>>>24;}if(!((d===e))){return false;}c=c+(1)>>0;}return true;};I=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l;b=0;c=false;if(a.length===0){return[b,c];}d=a.charCodeAt(0);if(d===(43)){if(H(a,"+inf")||H(a,"+infinity")){e=A.Inf(1);f=true;b=e;c=f;return[b,c];}}else if(d===(45)){if(H(a,"-inf")||H(a,"-infinity")){g=A.Inf(-1);h=true;b=g;c=h;return[b,c];}}else if((d===(110))||(d===(78))){if(H(a,"nan")){i=A.NaN();j=true;b=i;c=j;return[b,c];}}else if((d===(105))||(d===(73))){if(H(a,"inf")||H(a,"infinity")){k=A.Inf(1);l=true;b=k;c=l;return[b,c];}}else{return[b,c];}return[b,c];};Y.ptr.prototype.set=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j;b=false;c=this;d=0;c.neg=false;c.trunc=false;if(d>=a.length){return b;}if((a.charCodeAt(d)===43)){d=d+(1)>>0;}else if((a.charCodeAt(d)===45)){c.neg=true;d=d+(1)>>0;}e=false;f=false;while(true){if(!(d<a.length)){break;}if((a.charCodeAt(d)===46)){if(e){return b;}e=true;c.dp=c.nd;d=d+(1)>>0;continue;}else if(48<=a.charCodeAt(d)&&a.charCodeAt(d)<=57){f=true;if((a.charCodeAt(d)===48)&&(c.nd===0)){c.dp=c.dp-(1)>>0;d=d+(1)>>0;continue;}if(c.nd<800){(g=c.d,h=c.nd,((h<0||h>=g.length)?($throwRuntimeError("index out of range"),undefined):g[h]=a.charCodeAt(d)));c.nd=c.nd+(1)>>0;}else if(!((a.charCodeAt(d)===48))){c.trunc=true;}d=d+(1)>>0;continue;}break;}if(!f){return b;}if(!e){c.dp=c.nd;}if(d<a.length&&((a.charCodeAt(d)===101)||(a.charCodeAt(d)===69))){d=d+(1)>>0;if(d>=a.length){return b;}i=1;if(a.charCodeAt(d)===43){d=d+(1)>>0;}else if(a.charCodeAt(d)===45){d=d+(1)>>0;i=-1;}if(d>=a.length||a.charCodeAt(d)<48||a.charCodeAt(d)>57){return b;}j=0;while(true){if(!(d<a.length&&48<=a.charCodeAt(d)&&a.charCodeAt(d)<=57)){break;}if(j<10000){j=(($imul(j,10))+(a.charCodeAt(d)>>0)>>0)-48>>0;}d=d+(1)>>0;}c.dp=c.dp+(($imul(j,i)))>>0;}if(!((d===a.length))){return b;}b=true;return b;};Y.prototype.set=function(a){return this.$val.set(a);};J=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q;b=new $Uint64(0,0);c=0;d=false;e=false;f=false;g=0;if(g>=a.length){return[b,c,d,e,f];}if((a.charCodeAt(g)===43)){g=g+(1)>>0;}else if((a.charCodeAt(g)===45)){d=true;g=g+(1)>>0;}h=false;i=false;j=0;k=0;l=0;while(true){if(!(g<a.length)){break;}m=a.charCodeAt(g);n=true;if(n===((m===46))){if(h){return[b,c,d,e,f];}h=true;l=j;g=g+(1)>>0;continue;}else if(n===(48<=m&&m<=57)){i=true;if((m===48)&&(j===0)){l=l-(1)>>0;g=g+(1)>>0;continue;}j=j+(1)>>0;if(k<19){b=$mul64(b,(new $Uint64(0,10)));b=(o=new $Uint64(0,(m-48<<24>>>24)),new $Uint64(b.$high+o.$high,b.$low+o.$low));k=k+(1)>>0;}else if(!((a.charCodeAt(g)===48))){e=true;}g=g+(1)>>0;continue;}break;}if(!i){return[b,c,d,e,f];}if(!h){l=j;}if(g<a.length&&((a.charCodeAt(g)===101)||(a.charCodeAt(g)===69))){g=g+(1)>>0;if(g>=a.length){return[b,c,d,e,f];}p=1;if(a.charCodeAt(g)===43){g=g+(1)>>0;}else if(a.charCodeAt(g)===45){g=g+(1)>>0;p=-1;}if(g>=a.length||a.charCodeAt(g)<48||a.charCodeAt(g)>57){return[b,c,d,e,f];}q=0;while(true){if(!(g<a.length&&48<=a.charCodeAt(g)&&a.charCodeAt(g)<=57)){break;}if(q<10000){q=(($imul(q,10))+(a.charCodeAt(g)>>0)>>0)-48>>0;}g=g+(1)>>0;}l=l+(($imul(q,p)))>>0;}if(!((g===a.length))){return[b,c,d,e,f];}if(!((b.$high===0&&b.$low===0))){c=l-k>>0;}f=true;return[b,c,d,e,f];};Y.ptr.prototype.floatBits=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,$s;$s=0;s:while(true){switch($s){case 0:b=new $Uint64(0,0);c=false;d=this;e=0;f=new $Uint64(0,0);if(d.nd===0){$s=1;continue;}$s=2;continue;case 1:f=new $Uint64(0,0);e=a.bias;$s=3;continue;case 2:if(d.dp>310){$s=4;continue;}$s=5;continue;case 4:$s=6;continue;case 5:if(d.dp<-330){$s=7;continue;}$s=8;continue;case 7:f=new $Uint64(0,0);e=a.bias;$s=3;continue;case 8:e=0;while(true){if(!(d.dp>0)){break;}g=0;if(d.dp>=K.$length){g=27;}else{g=(h=d.dp,((h<0||h>=K.$length)?($throwRuntimeError("index out of range"),undefined):K.$array[K.$offset+h]));}d.Shift(-g);e=e+(g)>>0;}while(true){if(!(d.dp<0||(d.dp===0)&&d.d[0]<53)){break;}i=0;if(-d.dp>=K.$length){i=27;}else{i=(j=-d.dp,((j<0||j>=K.$length)?($throwRuntimeError("index out of range"),undefined):K.$array[K.$offset+j]));}d.Shift(i);e=e-(i)>>0;}e=e-(1)>>0;if(e<(a.bias+1>>0)){k=(a.bias+1>>0)-e>>0;d.Shift(-k);e=e+(k)>>0;}if((e-a.bias>>0)>=(((l=a.expbits,l<32?(1<<l):0)>>0)-1>>0)){$s=9;continue;}$s=10;continue;case 9:$s=6;continue;case 10:d.Shift(((1+a.mantbits>>>0)>>0));f=d.RoundedInteger();if((m=$shiftLeft64(new $Uint64(0,2),a.mantbits),(f.$high===m.$high&&f.$low===m.$low))){$s=11;continue;}$s=12;continue;case 11:f=$shiftRightUint64(f,(1));e=e+(1)>>0;if((e-a.bias>>0)>=(((n=a.expbits,n<32?(1<<n):0)>>0)-1>>0)){$s=13;continue;}$s=14;continue;case 13:$s=6;continue;case 14:case 12:if((o=(p=$shiftLeft64(new $Uint64(0,1),a.mantbits),new $Uint64(f.$high&p.$high,(f.$low&p.$low)>>>0)),(o.$high===0&&o.$low===0))){e=a.bias;}$s=3;continue;case 6:f=new $Uint64(0,0);e=(((q=a.expbits,q<32?(1<<q):0)>>0)-1>>0)+a.bias>>0;c=true;case 3:t=(r=(s=$shiftLeft64(new $Uint64(0,1),a.mantbits),new $Uint64(s.$high-0,s.$low-1)),new $Uint64(f.$high&r.$high,(f.$low&r.$low)>>>0));t=(u=$shiftLeft64(new $Uint64(0,(((e-a.bias>>0))&((((v=a.expbits,v<32?(1<<v):0)>>0)-1>>0)))),a.mantbits),new $Uint64(t.$high|u.$high,(t.$low|u.$low)>>>0));if(d.neg){t=(w=$shiftLeft64($shiftLeft64(new $Uint64(0,1),a.mantbits),a.expbits),new $Uint64(t.$high|w.$high,(t.$low|w.$low)>>>0));}x=t;y=c;b=x;c=y;$s=-1;return[b,c];}return;}};Y.prototype.floatBits=function(a){return this.$val.floatBits(a);};N=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n;d=0;e=false;if(!((f=$shiftRightUint64(a,AQ.mantbits),(f.$high===0&&f.$low===0)))){return[d,e];}d=$flatten64(a);if(c){d=-d;}if((b===0)){g=d;h=true;d=g;e=h;return[d,e];}else if(b>0&&b<=37){if(b>22){d=d*((i=b-22>>0,((i<0||i>=L.$length)?($throwRuntimeError("index out of range"),undefined):L.$array[L.$offset+i])));b=22;}if(d>1e+15||d<-1e+15){return[d,e];}j=d*((b<0||b>=L.$length)?($throwRuntimeError("index out of range"),undefined):L.$array[L.$offset+b]);k=true;d=j;e=k;return[d,e];}else if(b<0&&b>=-22){l=d/(m=-b,((m<0||m>=L.$length)?($throwRuntimeError("index out of range"),undefined):L.$array[L.$offset+m]));n=true;d=l;e=n;return[d,e];}return[d,e];};O=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n;d=0;e=false;if(!((f=$shiftRightUint64(a,AP.mantbits),(f.$high===0&&f.$low===0)))){return[d,e];}d=$flatten64(a);if(c){d=-d;}if((b===0)){g=d;h=true;d=g;e=h;return[d,e];}else if(b>0&&b<=17){if(b>10){d=$fround(d*((i=b-10>>0,((i<0||i>=M.$length)?($throwRuntimeError("index out of range"),undefined):M.$array[M.$offset+i]))));b=10;}if(d>1e+07||d<-1e+07){return[d,e];}j=$fround(d*((b<0||b>=M.$length)?($throwRuntimeError("index out of range"),undefined):M.$array[M.$offset+b]));k=true;d=j;e=k;return[d,e];}else if(b<0&&b>=-10){l=$fround(d/(m=-b,((m<0||m>=M.$length)?($throwRuntimeError("index out of range"),undefined):M.$array[M.$offset+m])));n=true;d=l;e=n;return[d,e];}return[d,e];};P=function(a){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;b=0;c=$ifaceNil;d=I(a);e=d[0];f=d[1];if(f){g=$fround(e);h=$ifaceNil;b=g;c=h;return[b,c];}if(G){i=J(a);j=i[0];k=i[1];l=i[2];m=i[3];n=i[4];if(n){if(!m){o=O(j,k,l);p=o[0];q=o[1];if(q){r=p;s=$ifaceNil;b=r;c=s;return[b,c];}}t=new AH.ptr(new $Uint64(0,0),0,false);u=t.AssignDecimal(j,k,l,m,AP);if(u){v=t.floatBits(AP);w=v[0];x=v[1];b=A.Float32frombits((w.$low>>>0));if(x){c=U("ParseFloat",a);}y=b;z=c;b=y;c=z;return[b,c];}}}aa=new Y.ptr(CY.zero(),0,0,false,false);if(!aa.set(a)){ab=0;ac=T("ParseFloat",a);b=ab;c=ac;return[b,c];}ad=aa.floatBits(AP);ae=ad[0];af=ad[1];b=A.Float32frombits((ae.$low>>>0));if(af){c=U("ParseFloat",a);}ag=b;ah=c;b=ag;c=ah;return[b,c];};Q=function(a){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;b=0;c=$ifaceNil;d=I(a);e=d[0];f=d[1];if(f){g=e;h=$ifaceNil;b=g;c=h;return[b,c];}if(G){i=J(a);j=i[0];k=i[1];l=i[2];m=i[3];n=i[4];if(n){if(!m){o=N(j,k,l);p=o[0];q=o[1];if(q){r=p;s=$ifaceNil;b=r;c=s;return[b,c];}}t=new AH.ptr(new $Uint64(0,0),0,false);u=t.AssignDecimal(j,k,l,m,AQ);if(u){v=t.floatBits(AQ);w=v[0];x=v[1];b=A.Float64frombits(w);if(x){c=U("ParseFloat",a);}y=b;z=c;b=y;c=z;return[b,c];}}}aa=new Y.ptr(CY.zero(),0,0,false,false);if(!aa.set(a)){ab=0;ac=T("ParseFloat",a);b=ab;c=ac;return[b,c];}ad=aa.floatBits(AQ);ae=ad[0];af=ad[1];b=A.Float64frombits(ae);if(af){c=U("ParseFloat",a);}ag=b;ah=c;b=ag;c=ah;return[b,c];};R=function(a,b){var $ptr,a,b,c,d,e;if(b===32){c=P(a);d=c[0];e=c[1];return[d,e];}return Q(a);};$pkg.ParseFloat=R;S.ptr.prototype.Error=function(){var $ptr,a,b,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.Err.Error();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=-1;return"strconv."+a.Func+": "+"parsing "+BU(a.Num)+": "+b;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.Error};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};S.prototype.Error=function(){return this.$val.Error();};T=function(a,b){var $ptr,a,b;return new S.ptr(a,b,$pkg.ErrSyntax);};U=function(a,b){var $ptr,a,b;return new S.ptr(a,b,$pkg.ErrRange);};V=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,$s;$s=0;s:while(true){switch($s){case 0:d=new $Uint64(0,0);e=$ifaceNil;f=new $Uint64(0,0);g=new $Uint64(0,0);h=f;i=g;if(c===0){c=32;}j=0;if(a.length<1){$s=2;continue;}if(2<=b&&b<=36){$s=3;continue;}if((b===0)){$s=4;continue;}$s=5;continue;case 2:e=$pkg.ErrSyntax;$s=7;continue;$s=6;continue;case 3:$s=6;continue;case 4:if((a.charCodeAt(0)===48)&&a.length>1&&((a.charCodeAt(1)===120)||(a.charCodeAt(1)===88))){$s=9;continue;}if((a.charCodeAt(0)===48)){$s=10;continue;}$s=11;continue;case 9:if(a.length<3){$s=13;continue;}$s=14;continue;case 13:e=$pkg.ErrSyntax;$s=7;continue;case 14:b=16;j=2;$s=12;continue;case 10:b=8;j=1;$s=12;continue;case 11:b=10;case 12:case 8:$s=6;continue;case 5:e=B.New("invalid base "+BK(b));$s=7;continue;case 6:case 1:k=b;if(k===(10)){h=new $Uint64(429496729,2576980378);}else if(k===(16)){h=new $Uint64(268435456,0);}else{h=(l=$div64(new $Uint64(4294967295,4294967295),new $Uint64(0,b),false),new $Uint64(l.$high+0,l.$low+1));}i=(m=$shiftLeft64(new $Uint64(0,1),(c>>>0)),new $Uint64(m.$high-0,m.$low-1));case 15:if(!(j<a.length)){$s=16;continue;}n=0;o=a.charCodeAt(j);if(48<=o&&o<=57){$s=18;continue;}if(97<=o&&o<=122){$s=19;continue;}if(65<=o&&o<=90){$s=20;continue;}$s=21;continue;case 18:n=o-48<<24>>>24;$s=22;continue;case 19:n=(o-97<<24>>>24)+10<<24>>>24;$s=22;continue;case 20:n=(o-65<<24>>>24)+10<<24>>>24;$s=22;continue;case 21:d=new $Uint64(0,0);e=$pkg.ErrSyntax;$s=7;continue;case 22:case 17:if(n>=(b<<24>>>24)){$s=23;continue;}$s=24;continue;case 23:d=new $Uint64(0,0);e=$pkg.ErrSyntax;$s=7;continue;case 24:if((d.$high>h.$high||(d.$high===h.$high&&d.$low>=h.$low))){$s=25;continue;}$s=26;continue;case 25:d=new $Uint64(4294967295,4294967295);e=$pkg.ErrRange;$s=7;continue;case 26:d=$mul64(d,(new $Uint64(0,b)));q=(p=new $Uint64(0,n),new $Uint64(d.$high+p.$high,d.$low+p.$low));if((q.$high<d.$high||(q.$high===d.$high&&q.$low<d.$low))||(q.$high>i.$high||(q.$high===i.$high&&q.$low>i.$low))){$s=27;continue;}$s=28;continue;case 27:d=new $Uint64(4294967295,4294967295);e=$pkg.ErrRange;$s=7;continue;case 28:d=q;j=j+(1)>>0;$s=15;continue;case 16:$s=-1;return[d,$ifaceNil];case 7:$s=-1;return[d,new S.ptr("ParseUint",a,e)];$s=-1;return[new $Uint64(0,0),$ifaceNil];}return;}};$pkg.ParseUint=V;W=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w;d=new $Int64(0,0);e=$ifaceNil;if(c===0){c=32;}if(a.length===0){f=new $Int64(0,0);g=T("ParseInt",a);d=f;e=g;return[d,e];}h=a;i=false;if(a.charCodeAt(0)===43){a=$substring(a,1);}else if(a.charCodeAt(0)===45){i=true;a=$substring(a,1);}j=new $Uint64(0,0);k=V(a,b,c);j=k[0];e=k[1];if(!($interfaceIsEqual(e,$ifaceNil))&&!($interfaceIsEqual($assertType(e,CZ).Err,$pkg.ErrRange))){$assertType(e,CZ).Func="ParseInt";$assertType(e,CZ).Num=h;l=new $Int64(0,0);m=e;d=l;e=m;return[d,e];}n=$shiftLeft64(new $Uint64(0,1),((c-1>>0)>>>0));if(!i&&(j.$high>n.$high||(j.$high===n.$high&&j.$low>=n.$low))){o=(p=new $Uint64(n.$high-0,n.$low-1),new $Int64(p.$high,p.$low));q=U("ParseInt",h);d=o;e=q;return[d,e];}if(i&&(j.$high>n.$high||(j.$high===n.$high&&j.$low>n.$low))){r=(s=new $Int64(n.$high,n.$low),new $Int64(-s.$high,-s.$low));t=U("ParseInt",h);d=r;e=t;return[d,e];}u=new $Int64(j.$high,j.$low);if(i){u=new $Int64(-u.$high,-u.$low);}v=u;w=$ifaceNil;d=v;e=w;return[d,e];};$pkg.ParseInt=W;X=function(a){var $ptr,a,b,c,d,e,f,g;b=W(a,10,0);c=b[0];d=b[1];e=$assertType(d,CZ,true);f=e[0];g=e[1];if(g){f.Func="Atoi";}return[((c.$low+((c.$high>>31)*4294967296))>>0),d];};$pkg.Atoi=X;Y.ptr.prototype.String=function(){var $ptr,a,b,c,d;a=this;b=10+a.nd>>0;if(a.dp>0){b=b+(a.dp)>>0;}if(a.dp<0){b=b+(-a.dp)>>0;}c=$makeSlice(DA,b);d=0;if((a.nd===0)){return"0";}else if(a.dp<=0){((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]=48);d=d+(1)>>0;((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]=46);d=d+(1)>>0;d=d+(Z($subslice(c,d,(d+-a.dp>>0))))>>0;d=d+($copySlice($subslice(c,d),$subslice(new DA(a.d),0,a.nd)))>>0;}else if(a.dp<a.nd){d=d+($copySlice($subslice(c,d),$subslice(new DA(a.d),0,a.dp)))>>0;((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]=46);d=d+(1)>>0;d=d+($copySlice($subslice(c,d),$subslice(new DA(a.d),a.dp,a.nd)))>>0;}else{d=d+($copySlice($subslice(c,d),$subslice(new DA(a.d),0,a.nd)))>>0;d=d+(Z($subslice(c,d,((d+a.dp>>0)-a.nd>>0))))>>0;}return $bytesToString($subslice(c,0,d));};Y.prototype.String=function(){return this.$val.String();};Z=function(a){var $ptr,a,b,c,d;b=a;c=0;while(true){if(!(c<b.$length)){break;}d=c;((d<0||d>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+d]=48);c++;}return a.$length;};AA=function(a){var $ptr,a,b,c;while(true){if(!(a.nd>0&&((b=a.d,c=a.nd-1>>0,((c<0||c>=b.length)?($throwRuntimeError("index out of range"),undefined):b[c]))===48))){break;}a.nd=a.nd-(1)>>0;}if(a.nd===0){a.dp=0;}};Y.ptr.prototype.Assign=function(a){var $ptr,a,b,c,d,e,f,g,h;b=this;c=DB.zero();d=0;while(true){if(!((a.$high>0||(a.$high===0&&a.$low>0)))){break;}e=$div64(a,new $Uint64(0,10),false);a=(f=$mul64(new $Uint64(0,10),e),new $Uint64(a.$high-f.$high,a.$low-f.$low));((d<0||d>=c.length)?($throwRuntimeError("index out of range"),undefined):c[d]=(new $Uint64(a.$high+0,a.$low+48).$low<<24>>>24));d=d+(1)>>0;a=e;}b.nd=0;d=d-(1)>>0;while(true){if(!(d>=0)){break;}(g=b.d,h=b.nd,((h<0||h>=g.length)?($throwRuntimeError("index out of range"),undefined):g[h]=((d<0||d>=c.length)?($throwRuntimeError("index out of range"),undefined):c[d])));b.nd=b.nd+(1)>>0;d=d-(1)>>0;}b.dp=b.nd;AA(b);};Y.prototype.Assign=function(a){return this.$val.Assign(a);};AB=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s;c=0;d=0;e=0;while(true){if(!(((f=b,f<32?(e>>>f):0)>>>0)===0)){break;}if(c>=a.nd){if(e===0){a.nd=0;return;}while(true){if(!(((g=b,g<32?(e>>>g):0)>>>0)===0)){break;}e=e*10>>>0;c=c+(1)>>0;}break;}i=((h=a.d,((c<0||c>=h.length)?($throwRuntimeError("index out of range"),undefined):h[c]))>>>0);e=((e*10>>>0)+i>>>0)-48>>>0;c=c+(1)>>0;}a.dp=a.dp-((c-1>>0))>>0;k=(((j=b,j<32?(1<<j):0)>>>0))-1>>>0;while(true){if(!(c<a.nd)){break;}m=((l=a.d,((c<0||c>=l.length)?($throwRuntimeError("index out of range"),undefined):l[c]))>>>0);o=(n=b,n<32?(e>>>n):0)>>>0;e=(e&(k))>>>0;(p=a.d,((d<0||d>=p.length)?($throwRuntimeError("index out of range"),undefined):p[d]=((o+48>>>0)<<24>>>24)));d=d+(1)>>0;e=((e*10>>>0)+m>>>0)-48>>>0;c=c+(1)>>0;}while(true){if(!(e>0)){break;}r=(q=b,q<32?(e>>>q):0)>>>0;e=(e&(k))>>>0;if(d<800){(s=a.d,((d<0||d>=s.length)?($throwRuntimeError("index out of range"),undefined):s[d]=((r+48>>>0)<<24>>>24)));d=d+(1)>>0;}else if(r>0){a.trunc=true;}e=e*10>>>0;}a.nd=d;AA(a);};AE=function(a,b){var $ptr,a,b,c;c=0;while(true){if(!(c<b.length)){break;}if(c>=a.$length){return true;}if(!((((c<0||c>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+c])===b.charCodeAt(c)))){return((c<0||c>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+c])<b.charCodeAt(c);}c=c+(1)>>0;}return false;};AF=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p;c=((b<0||b>=AD.$length)?($throwRuntimeError("index out of range"),undefined):AD.$array[AD.$offset+b]).delta;if(AE($subslice(new DA(a.d),0,a.nd),((b<0||b>=AD.$length)?($throwRuntimeError("index out of range"),undefined):AD.$array[AD.$offset+b]).cutoff)){c=c-(1)>>0;}d=a.nd;e=a.nd+c>>0;f=0;d=d-(1)>>0;while(true){if(!(d>=0)){break;}f=f+(((g=b,g<32?(((((h=a.d,((d<0||d>=h.length)?($throwRuntimeError("index out of range"),undefined):h[d]))>>>0)-48>>>0))<<g):0)>>>0))>>>0;j=(i=f/10,(i===i&&i!==1/0&&i!==-1/0)?i>>>0:$throwRuntimeError("integer divide by zero"));k=f-(10*j>>>0)>>>0;e=e-(1)>>0;if(e<800){(l=a.d,((e<0||e>=l.length)?($throwRuntimeError("index out of range"),undefined):l[e]=((k+48>>>0)<<24>>>24)));}else if(!((k===0))){a.trunc=true;}f=j;d=d-(1)>>0;}while(true){if(!(f>0)){break;}n=(m=f/10,(m===m&&m!==1/0&&m!==-1/0)?m>>>0:$throwRuntimeError("integer divide by zero"));o=f-(10*n>>>0)>>>0;e=e-(1)>>0;if(e<800){(p=a.d,((e<0||e>=p.length)?($throwRuntimeError("index out of range"),undefined):p[e]=((o+48>>>0)<<24>>>24)));}else if(!((o===0))){a.trunc=true;}f=n;}a.nd=a.nd+(c)>>0;if(a.nd>=800){a.nd=800;}a.dp=a.dp+(c)>>0;AA(a);};Y.ptr.prototype.Shift=function(a){var $ptr,a,b;b=this;if((b.nd===0)){}else if(a>0){while(true){if(!(a>28)){break;}AF(b,28);a=a-(28)>>0;}AF(b,(a>>>0));}else if(a<0){while(true){if(!(a<-28)){break;}AB(b,28);a=a+(28)>>0;}AB(b,(-a>>>0));}};Y.prototype.Shift=function(a){return this.$val.Shift(a);};AG=function(a,b){var $ptr,a,b,c,d,e,f,g;if(b<0||b>=a.nd){return false;}if(((c=a.d,((b<0||b>=c.length)?($throwRuntimeError("index out of range"),undefined):c[b]))===53)&&((b+1>>0)===a.nd)){if(a.trunc){return true;}return b>0&&!(((d=(((e=a.d,f=b-1>>0,((f<0||f>=e.length)?($throwRuntimeError("index out of range"),undefined):e[f]))-48<<24>>>24))%2,d===d?d:$throwRuntimeError("integer divide by zero"))===0));}return(g=a.d,((b<0||b>=g.length)?($throwRuntimeError("index out of range"),undefined):g[b]))>=53;};Y.ptr.prototype.Round=function(a){var $ptr,a,b;b=this;if(a<0||a>=b.nd){return;}if(AG(b,a)){b.RoundUp(a);}else{b.RoundDown(a);}};Y.prototype.Round=function(a){return this.$val.Round(a);};Y.ptr.prototype.RoundDown=function(a){var $ptr,a,b;b=this;if(a<0||a>=b.nd){return;}b.nd=a;AA(b);};Y.prototype.RoundDown=function(a){return this.$val.RoundDown(a);};Y.ptr.prototype.RoundUp=function(a){var $ptr,a,b,c,d,e,f,g;b=this;if(a<0||a>=b.nd){return;}c=a-1>>0;while(true){if(!(c>=0)){break;}e=(d=b.d,((c<0||c>=d.length)?($throwRuntimeError("index out of range"),undefined):d[c]));if(e<57){(g=b.d,((c<0||c>=g.length)?($throwRuntimeError("index out of range"),undefined):g[c]=((f=b.d,((c<0||c>=f.length)?($throwRuntimeError("index out of range"),undefined):f[c]))+(1)<<24>>>24)));b.nd=c+1>>0;return;}c=c-(1)>>0;}b.d[0]=49;b.nd=1;b.dp=b.dp+(1)>>0;};Y.prototype.RoundUp=function(a){return this.$val.RoundUp(a);};Y.ptr.prototype.RoundedInteger=function(){var $ptr,a,b,c,d,e,f,g;a=this;if(a.dp>20){return new $Uint64(4294967295,4294967295);}b=0;c=new $Uint64(0,0);b=0;while(true){if(!(b<a.dp&&b<a.nd)){break;}c=(d=$mul64(c,new $Uint64(0,10)),e=new $Uint64(0,((f=a.d,((b<0||b>=f.length)?($throwRuntimeError("index out of range"),undefined):f[b]))-48<<24>>>24)),new $Uint64(d.$high+e.$high,d.$low+e.$low));b=b+(1)>>0;}while(true){if(!(b<a.dp)){break;}c=$mul64(c,(new $Uint64(0,10)));b=b+(1)>>0;}if(AG(a,a.dp)){c=(g=new $Uint64(0,1),new $Uint64(c.$high+g.$high,c.$low+g.$low));}return c;};Y.prototype.RoundedInteger=function(){return this.$val.RoundedInteger();};AH.ptr.prototype.floatBits=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u;b=new $Uint64(0,0);c=false;d=this;d.Normalize();e=d.exp+63>>0;if(e<(a.bias+1>>0)){f=(a.bias+1>>0)-e>>0;d.mant=$shiftRightUint64(d.mant,((f>>>0)));e=e+(f)>>0;}g=$shiftRightUint64(d.mant,((63-a.mantbits>>>0)));if(!((h=(i=d.mant,j=$shiftLeft64(new $Uint64(0,1),((62-a.mantbits>>>0))),new $Uint64(i.$high&j.$high,(i.$low&j.$low)>>>0)),(h.$high===0&&h.$low===0)))){g=(k=new $Uint64(0,1),new $Uint64(g.$high+k.$high,g.$low+k.$low));}if((l=$shiftLeft64(new $Uint64(0,2),a.mantbits),(g.$high===l.$high&&g.$low===l.$low))){g=$shiftRightUint64(g,(1));e=e+(1)>>0;}if((e-a.bias>>0)>=(((m=a.expbits,m<32?(1<<m):0)>>0)-1>>0)){g=new $Uint64(0,0);e=(((p=a.expbits,p<32?(1<<p):0)>>0)-1>>0)+a.bias>>0;c=true;}else if((n=(o=$shiftLeft64(new $Uint64(0,1),a.mantbits),new $Uint64(g.$high&o.$high,(g.$low&o.$low)>>>0)),(n.$high===0&&n.$low===0))){e=a.bias;}b=(q=(r=$shiftLeft64(new $Uint64(0,1),a.mantbits),new $Uint64(r.$high-0,r.$low-1)),new $Uint64(g.$high&q.$high,(g.$low&q.$low)>>>0));b=(s=$shiftLeft64(new $Uint64(0,(((e-a.bias>>0))&((((t=a.expbits,t<32?(1<<t):0)>>0)-1>>0)))),a.mantbits),new $Uint64(b.$high|s.$high,(b.$low|s.$low)>>>0));if(d.neg){b=(u=$shiftLeft64(new $Uint64(0,1),((a.mantbits+a.expbits>>>0))),new $Uint64(b.$high|u.$high,(b.$low|u.$low)>>>0));}return[b,c];};AH.prototype.floatBits=function(a){return this.$val.floatBits(a);};AH.ptr.prototype.AssignComputeBounds=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;e=new AH.ptr(new $Uint64(0,0),0,false);f=new AH.ptr(new $Uint64(0,0),0,false);g=this;g.mant=a;g.exp=b-(d.mantbits>>0)>>0;g.neg=c;if(g.exp<=0&&(h=$shiftLeft64(($shiftRightUint64(a,(-g.exp>>>0))),(-g.exp>>>0)),(a.$high===h.$high&&a.$low===h.$low))){g.mant=$shiftRightUint64(g.mant,((-g.exp>>>0)));g.exp=0;i=$clone(g,AH);j=$clone(g,AH);AH.copy(e,i);AH.copy(f,j);return[e,f];}k=b-d.bias>>0;AH.copy(f,new AH.ptr((l=$mul64(new $Uint64(0,2),g.mant),new $Uint64(l.$high+0,l.$low+1)),g.exp-1>>0,g.neg));if(!((m=$shiftLeft64(new $Uint64(0,1),d.mantbits),(a.$high===m.$high&&a.$low===m.$low)))||(k===1)){AH.copy(e,new AH.ptr((n=$mul64(new $Uint64(0,2),g.mant),new $Uint64(n.$high-0,n.$low-1)),g.exp-1>>0,g.neg));}else{AH.copy(e,new AH.ptr((o=$mul64(new $Uint64(0,4),g.mant),new $Uint64(o.$high-0,o.$low-1)),g.exp-2>>0,g.neg));}return[e,f];};AH.prototype.AssignComputeBounds=function(a,b,c,d){return this.$val.AssignComputeBounds(a,b,c,d);};AH.ptr.prototype.Normalize=function(){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n;a=0;b=this;c=b.mant;d=b.exp;e=c;f=d;if((e.$high===0&&e.$low===0)){a=0;return a;}if((g=$shiftRightUint64(e,32),(g.$high===0&&g.$low===0))){e=$shiftLeft64(e,(32));f=f-(32)>>0;}if((h=$shiftRightUint64(e,48),(h.$high===0&&h.$low===0))){e=$shiftLeft64(e,(16));f=f-(16)>>0;}if((i=$shiftRightUint64(e,56),(i.$high===0&&i.$low===0))){e=$shiftLeft64(e,(8));f=f-(8)>>0;}if((j=$shiftRightUint64(e,60),(j.$high===0&&j.$low===0))){e=$shiftLeft64(e,(4));f=f-(4)>>0;}if((k=$shiftRightUint64(e,62),(k.$high===0&&k.$low===0))){e=$shiftLeft64(e,(2));f=f-(2)>>0;}if((l=$shiftRightUint64(e,63),(l.$high===0&&l.$low===0))){e=$shiftLeft64(e,(1));f=f-(1)>>0;}a=((b.exp-f>>0)>>>0);m=e;n=f;b.mant=m;b.exp=n;return a;};AH.prototype.Normalize=function(){return this.$val.Normalize();};AH.ptr.prototype.Multiply=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x;b=this;c=$shiftRightUint64(b.mant,32);d=new $Uint64(0,(b.mant.$low>>>0));e=c;f=d;g=$shiftRightUint64(a.mant,32);h=new $Uint64(0,(a.mant.$low>>>0));i=g;j=h;k=$mul64(e,j);l=$mul64(f,i);b.mant=(m=(n=$mul64(e,i),o=$shiftRightUint64(k,32),new $Uint64(n.$high+o.$high,n.$low+o.$low)),p=$shiftRightUint64(l,32),new $Uint64(m.$high+p.$high,m.$low+p.$low));u=(q=(r=new $Uint64(0,(k.$low>>>0)),s=new $Uint64(0,(l.$low>>>0)),new $Uint64(r.$high+s.$high,r.$low+s.$low)),t=$shiftRightUint64(($mul64(f,j)),32),new $Uint64(q.$high+t.$high,q.$low+t.$low));u=(v=new $Uint64(0,2147483648),new $Uint64(u.$high+v.$high,u.$low+v.$low));b.mant=(w=b.mant,x=($shiftRightUint64(u,32)),new $Uint64(w.$high+x.$high,w.$low+x.$low));b.exp=(b.exp+a.exp>>0)+64>>0;};AH.prototype.Multiply=function(a){return this.$val.Multiply(a);};AH.ptr.prototype.AssignDecimal=function(a,b,c,d,e){var $ptr,a,aa,ab,ac,ad,ae,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;f=false;g=this;h=0;if(d){h=h+(4)>>0;}g.mant=a;g.exp=0;g.neg=c;j=(i=((b- -348>>0))/8,(i===i&&i!==1/0&&i!==-1/0)?i>>0:$throwRuntimeError("integer divide by zero"));if(b<-348||j>=87){f=false;return f;}l=(k=((b- -348>>0))%8,k===k?k:$throwRuntimeError("integer divide by zero"));if(l<19&&(m=(n=19-l>>0,((n<0||n>=AK.length)?($throwRuntimeError("index out of range"),undefined):AK[n])),(a.$high<m.$high||(a.$high===m.$high&&a.$low<m.$low)))){g.mant=$mul64(g.mant,(((l<0||l>=AK.length)?($throwRuntimeError("index out of range"),undefined):AK[l])));g.Normalize();}else{g.Normalize();g.Multiply($clone(((l<0||l>=AI.length)?($throwRuntimeError("index out of range"),undefined):AI[l]),AH));h=h+(4)>>0;}g.Multiply($clone(((j<0||j>=AJ.length)?($throwRuntimeError("index out of range"),undefined):AJ[j]),AH));if(h>0){h=h+(1)>>0;}h=h+(4)>>0;o=g.Normalize();h=(p=(o),p<32?(h<<p):0)>>0;q=e.bias-63>>0;r=0;if(g.exp<=q){r=((63-e.mantbits>>>0)+1>>>0)+((q-g.exp>>0)>>>0)>>>0;}else{r=63-e.mantbits>>>0;}s=$shiftLeft64(new $Uint64(0,1),((r-1>>>0)));w=(t=g.mant,u=(v=$shiftLeft64(new $Uint64(0,1),r),new $Uint64(v.$high-0,v.$low-1)),new $Uint64(t.$high&u.$high,(t.$low&u.$low)>>>0));if((x=(y=new $Int64(s.$high,s.$low),z=new $Int64(0,h),new $Int64(y.$high-z.$high,y.$low-z.$low)),aa=new $Int64(w.$high,w.$low),(x.$high<aa.$high||(x.$high===aa.$high&&x.$low<aa.$low)))&&(ab=new $Int64(w.$high,w.$low),ac=(ad=new $Int64(s.$high,s.$low),ae=new $Int64(0,h),new $Int64(ad.$high+ae.$high,ad.$low+ae.$low)),(ab.$high<ac.$high||(ab.$high===ac.$high&&ab.$low<ac.$low)))){f=false;return f;}f=true;return f;};AH.prototype.AssignDecimal=function(a,b,c,d,e){return this.$val.AssignDecimal(a,b,c,d,e);};AH.ptr.prototype.frexp10=function(){var $ptr,a,b,c,d,e,f,g,h,i,j;a=0;b=0;c=this;e=(d=($imul(((-46-c.exp>>0)),28))/93,(d===d&&d!==1/0&&d!==-1/0)?d>>0:$throwRuntimeError("integer divide by zero"));g=(f=((e- -348>>0))/8,(f===f&&f!==1/0&&f!==-1/0)?f>>0:$throwRuntimeError("integer divide by zero"));Loop:while(true){h=(c.exp+((g<0||g>=AJ.length)?($throwRuntimeError("index out of range"),undefined):AJ[g]).exp>>0)+64>>0;if(h<-60){g=g+(1)>>0;}else if(h>-32){g=g-(1)>>0;}else{break Loop;}}c.Multiply($clone(((g<0||g>=AJ.length)?($throwRuntimeError("index out of range"),undefined):AJ[g]),AH));i=-((-348+($imul(g,8))>>0));j=g;a=i;b=j;return[a,b];};AH.prototype.frexp10=function(){return this.$val.frexp10();};AL=function(a,b,c){var $ptr,a,b,c,d,e,f;d=0;e=c.frexp10();d=e[0];f=e[1];a.Multiply($clone(((f<0||f>=AJ.length)?($throwRuntimeError("index out of range"),undefined):AJ[f]),AH));b.Multiply($clone(((f<0||f>=AJ.length)?($throwRuntimeError("index out of range"),undefined):AJ[f]),AH));return d;};AH.ptr.prototype.FixedDecimal=function(a,b){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;c=this;if((d=c.mant,(d.$high===0&&d.$low===0))){a.nd=0;a.dp=0;a.neg=c.neg;return true;}if(b===0){$panic(new $String("strconv: internal error: extFloat.FixedDecimal called with n == 0"));}c.Normalize();e=c.frexp10();f=e[0];g=(-c.exp>>>0);h=($shiftRightUint64(c.mant,g).$low>>>0);k=(i=c.mant,j=$shiftLeft64(new $Uint64(0,h),g),new $Uint64(i.$high-j.$high,i.$low-j.$low));l=new $Uint64(0,1);m=b;n=0;o=new $Uint64(0,1);p=0;q=new $Uint64(0,1);r=p;s=q;while(true){if(!(r<20)){break;}if((t=new $Uint64(0,h),(s.$high>t.$high||(s.$high===t.$high&&s.$low>t.$low)))){n=r;break;}s=$mul64(s,(new $Uint64(0,10)));r=r+(1)>>0;}u=h;if(n>m){o=(v=n-m>>0,((v<0||v>=AK.length)?($throwRuntimeError("index out of range"),undefined):AK[v]));h=(w=h/((o.$low>>>0)),(w===w&&w!==1/0&&w!==-1/0)?w>>>0:$throwRuntimeError("integer divide by zero"));u=u-(($imul(h,(o.$low>>>0))>>>0))>>>0;}else{u=0;}x=DC.zero();y=32;z=h;while(true){if(!(z>0)){break;}ab=(aa=z/10,(aa===aa&&aa!==1/0&&aa!==-1/0)?aa>>>0:$throwRuntimeError("integer divide by zero"));z=z-(($imul(10,ab)>>>0))>>>0;y=y-(1)>>0;((y<0||y>=x.length)?($throwRuntimeError("index out of range"),undefined):x[y]=((z+48>>>0)<<24>>>24));z=ab;}ac=y;while(true){if(!(ac<32)){break;}(ad=a.d,ae=ac-y>>0,((ae<0||ae>=ad.$length)?($throwRuntimeError("index out of range"),undefined):ad.$array[ad.$offset+ae]=((ac<0||ac>=x.length)?($throwRuntimeError("index out of range"),undefined):x[ac])));ac=ac+(1)>>0;}af=32-y>>0;a.nd=af;a.dp=n+f>>0;m=m-(af)>>0;if(m>0){if(!((u===0))||!((o.$high===0&&o.$low===1))){$panic(new $String("strconv: internal error, rest != 0 but needed > 0"));}while(true){if(!(m>0)){break;}k=$mul64(k,(new $Uint64(0,10)));l=$mul64(l,(new $Uint64(0,10)));if((ag=$mul64(new $Uint64(0,2),l),ah=$shiftLeft64(new $Uint64(0,1),g),(ag.$high>ah.$high||(ag.$high===ah.$high&&ag.$low>ah.$low)))){return false;}ai=$shiftRightUint64(k,g);(aj=a.d,((af<0||af>=aj.$length)?($throwRuntimeError("index out of range"),undefined):aj.$array[aj.$offset+af]=(new $Uint64(ai.$high+0,ai.$low+48).$low<<24>>>24)));k=(ak=$shiftLeft64(ai,g),new $Uint64(k.$high-ak.$high,k.$low-ak.$low));af=af+(1)>>0;m=m-(1)>>0;}a.nd=af;}am=AM(a,(al=$shiftLeft64(new $Uint64(0,u),g),new $Uint64(al.$high|k.$high,(al.$low|k.$low)>>>0)),o,g,l);if(!am){return false;}an=a.nd-1>>0;while(true){if(!(an>=0)){break;}if(!(((ao=a.d,((an<0||an>=ao.$length)?($throwRuntimeError("index out of range"),undefined):ao.$array[ao.$offset+an]))===48))){a.nd=an+1>>0;break;}an=an-(1)>>0;}return true;};AH.prototype.FixedDecimal=function(a,b){return this.$val.FixedDecimal(a,b);};AM=function(a,b,c,d,e){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q;if((f=$shiftLeft64(c,d),(b.$high>f.$high||(b.$high===f.$high&&b.$low>f.$low)))){$panic(new $String("strconv: num > den<<shift in adjustLastDigitFixed"));}if((g=$mul64(new $Uint64(0,2),e),h=$shiftLeft64(c,d),(g.$high>h.$high||(g.$high===h.$high&&g.$low>h.$low)))){$panic(new $String("strconv: \xCE\xB5 > (den<<shift)/2"));}if((i=$mul64(new $Uint64(0,2),(new $Uint64(b.$high+e.$high,b.$low+e.$low))),j=$shiftLeft64(c,d),(i.$high<j.$high||(i.$high===j.$high&&i.$low<j.$low)))){return true;}if((k=$mul64(new $Uint64(0,2),(new $Uint64(b.$high-e.$high,b.$low-e.$low))),l=$shiftLeft64(c,d),(k.$high>l.$high||(k.$high===l.$high&&k.$low>l.$low)))){m=a.nd-1>>0;while(true){if(!(m>=0)){break;}if((n=a.d,((m<0||m>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+m]))===57){a.nd=a.nd-(1)>>0;}else{break;}m=m-(1)>>0;}if(m<0){(o=a.d,(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0]=49));a.nd=1;a.dp=a.dp+(1)>>0;}else{(q=a.d,((m<0||m>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+m]=((p=a.d,((m<0||m>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+m]))+(1)<<24>>>24)));}return true;}return false;};AH.ptr.prototype.ShortestDecimal=function(a,b,c){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;d=this;if((e=d.mant,(e.$high===0&&e.$low===0))){a.nd=0;a.dp=0;a.neg=d.neg;return true;}if((d.exp===0)&&$equal(b,d,AH)&&$equal(b,c,AH)){f=DB.zero();g=23;h=d.mant;while(true){if(!((h.$high>0||(h.$high===0&&h.$low>0)))){break;}i=$div64(h,new $Uint64(0,10),false);h=(j=$mul64(new $Uint64(0,10),i),new $Uint64(h.$high-j.$high,h.$low-j.$low));((g<0||g>=f.length)?($throwRuntimeError("index out of range"),undefined):f[g]=(new $Uint64(h.$high+0,h.$low+48).$low<<24>>>24));g=g-(1)>>0;h=i;}k=(24-g>>0)-1>>0;l=0;while(true){if(!(l<k)){break;}(n=a.d,((l<0||l>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+l]=(m=(g+1>>0)+l>>0,((m<0||m>=f.length)?($throwRuntimeError("index out of range"),undefined):f[m]))));l=l+(1)>>0;}o=k;p=k;a.nd=o;a.dp=p;while(true){if(!(a.nd>0&&((q=a.d,r=a.nd-1>>0,((r<0||r>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+r]))===48))){break;}a.nd=a.nd-(1)>>0;}if(a.nd===0){a.dp=0;}a.neg=d.neg;return true;}c.Normalize();if(d.exp>c.exp){d.mant=$shiftLeft64(d.mant,(((d.exp-c.exp>>0)>>>0)));d.exp=c.exp;}if(b.exp>c.exp){b.mant=$shiftLeft64(b.mant,(((b.exp-c.exp>>0)>>>0)));b.exp=c.exp;}s=AL(b,d,c);c.mant=(t=c.mant,u=new $Uint64(0,1),new $Uint64(t.$high+u.$high,t.$low+u.$low));b.mant=(v=b.mant,w=new $Uint64(0,1),new $Uint64(v.$high-w.$high,v.$low-w.$low));x=(-c.exp>>>0);y=($shiftRightUint64(c.mant,x).$low>>>0);ab=(z=c.mant,aa=$shiftLeft64(new $Uint64(0,y),x),new $Uint64(z.$high-aa.$high,z.$low-aa.$low));ae=(ac=c.mant,ad=b.mant,new $Uint64(ac.$high-ad.$high,ac.$low-ad.$low));ah=(af=c.mant,ag=d.mant,new $Uint64(af.$high-ag.$high,af.$low-ag.$low));ai=0;aj=0;ak=new $Uint64(0,1);al=aj;am=ak;while(true){if(!(al<20)){break;}if((an=new $Uint64(0,y),(am.$high>an.$high||(am.$high===an.$high&&am.$low>an.$low)))){ai=al;break;}am=$mul64(am,(new $Uint64(0,10)));al=al+(1)>>0;}ao=0;while(true){if(!(ao<ai)){break;}aq=(ap=(ai-ao>>0)-1>>0,((ap<0||ap>=AK.length)?($throwRuntimeError("index out of range"),undefined):AK[ap]));as=(ar=y/(aq.$low>>>0),(ar===ar&&ar!==1/0&&ar!==-1/0)?ar>>>0:$throwRuntimeError("integer divide by zero"));(at=a.d,((ao<0||ao>=at.$length)?($throwRuntimeError("index out of range"),undefined):at.$array[at.$offset+ao]=((as+48>>>0)<<24>>>24)));y=y-(($imul(as,(aq.$low>>>0))>>>0))>>>0;av=(au=$shiftLeft64(new $Uint64(0,y),x),new $Uint64(au.$high+ab.$high,au.$low+ab.$low));if((av.$high<ae.$high||(av.$high===ae.$high&&av.$low<ae.$low))){a.nd=ao+1>>0;a.dp=ai+s>>0;a.neg=d.neg;return AN(a,av,ah,ae,$shiftLeft64(aq,x),new $Uint64(0,2));}ao=ao+(1)>>0;}a.nd=ai;a.dp=a.nd+s>>0;a.neg=d.neg;aw=0;ax=new $Uint64(0,1);while(true){ab=$mul64(ab,(new $Uint64(0,10)));ax=$mul64(ax,(new $Uint64(0,10)));aw=($shiftRightUint64(ab,x).$low>>0);(ay=a.d,az=a.nd,((az<0||az>=ay.$length)?($throwRuntimeError("index out of range"),undefined):ay.$array[ay.$offset+az]=((aw+48>>0)<<24>>>24)));a.nd=a.nd+(1)>>0;ab=(ba=$shiftLeft64(new $Uint64(0,aw),x),new $Uint64(ab.$high-ba.$high,ab.$low-ba.$low));if((bb=$mul64(ae,ax),(ab.$high<bb.$high||(ab.$high===bb.$high&&ab.$low<bb.$low)))){return AN(a,ab,$mul64(ah,ax),$mul64(ae,ax),$shiftLeft64(new $Uint64(0,1),x),$mul64(ax,new $Uint64(0,2)));}}};AH.prototype.ShortestDecimal=function(a,b,c){return this.$val.ShortestDecimal(a,b,c);};AN=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t;if((g=$mul64(new $Uint64(0,2),f),(e.$high<g.$high||(e.$high===g.$high&&e.$low<g.$low)))){return false;}while(true){if(!((h=(i=(j=$div64(e,new $Uint64(0,2),false),new $Uint64(b.$high+j.$high,b.$low+j.$low)),new $Uint64(i.$high+f.$high,i.$low+f.$low)),(h.$high<c.$high||(h.$high===c.$high&&h.$low<c.$low))))){break;}k=a.nd-1>>0;(m=a.d,((k<0||k>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+k]=((l=a.d,((k<0||k>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+k]))-(1)<<24>>>24)));b=(n=e,new $Uint64(b.$high+n.$high,b.$low+n.$low));}if((o=new $Uint64(b.$high+e.$high,b.$low+e.$low),p=(q=(r=$div64(e,new $Uint64(0,2),false),new $Uint64(c.$high+r.$high,c.$low+r.$low)),new $Uint64(q.$high+f.$high,q.$low+f.$low)),(o.$high<p.$high||(o.$high===p.$high&&o.$low<=p.$low)))){return false;}if((b.$high<f.$high||(b.$high===f.$high&&b.$low<f.$low))||(s=new $Uint64(d.$high-f.$high,d.$low-f.$low),(b.$high>s.$high||(b.$high===s.$high&&b.$low>s.$low)))){return false;}if((a.nd===1)&&((t=a.d,(0>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+0]))===48)){a.nd=0;a.dp=0;}return true;};AR=function(a,b,c,d){var $ptr,a,b,c,d;return $bytesToString(AT($makeSlice(DA,0,BC(c+4>>0,24)),a,b,c,d));};$pkg.FormatFloat=AR;AS=function(a,b,c,d,e){var $ptr,a,b,c,d,e;return AT(a,b,c,d,e);};$pkg.AppendFloat=AS;AT=function(a,b,c,d,e){var $ptr,a,aa,ab,ac,ad,ae,af,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;f=new $Uint64(0,0);g=DD.nil;h=e;if(h===(32)){f=new $Uint64(0,A.Float32bits($fround(b)));g=AP;}else if(h===(64)){f=A.Float64bits(b);g=AQ;}else{$panic(new $String("strconv: illegal AppendFloat/FormatFloat bitSize"));}j=!((i=$shiftRightUint64(f,((g.expbits+g.mantbits>>>0))),(i.$high===0&&i.$low===0)));l=($shiftRightUint64(f,g.mantbits).$low>>0)&((((k=g.expbits,k<32?(1<<k):0)>>0)-1>>0));o=(m=(n=$shiftLeft64(new $Uint64(0,1),g.mantbits),new $Uint64(n.$high-0,n.$low-1)),new $Uint64(f.$high&m.$high,(f.$low&m.$low)>>>0));p=l;if(p===((((q=g.expbits,q<32?(1<<q):0)>>0)-1>>0))){r="";if(!((o.$high===0&&o.$low===0))){r="NaN";}else if(j){r="-Inf";}else{r="+Inf";}return $appendSlice(a,r);}else if(p===(0)){l=l+(1)>>0;}else{o=(s=$shiftLeft64(new $Uint64(0,1),g.mantbits),new $Uint64(o.$high|s.$high,(o.$low|s.$low)>>>0));}l=l+(g.bias)>>0;if(c===98){return BA(a,j,o,l,g);}if(!G){return AU(a,d,c,j,o,l,g);}t=new AX.ptr(DA.nil,0,0,false);u=false;v=d<0;if(v){w=new AH.ptr(new $Uint64(0,0),0,false);x=w.AssignComputeBounds(o,l,j,g);y=$clone(x[0],AH);z=$clone(x[1],AH);aa=DC.zero();t.d=new DA(aa);u=w.ShortestDecimal(t,y,z);if(!u){return AU(a,d,c,j,o,l,g);}ab=c;if((ab===(101))||(ab===(69))){d=BC(t.nd-1>>0,0);}else if(ab===(102)){d=BC(t.nd-t.dp>>0,0);}else if((ab===(103))||(ab===(71))){d=t.nd;}}else if(!((c===102))){ac=d;ad=c;if((ad===(101))||(ad===(69))){ac=ac+(1)>>0;}else if((ad===(103))||(ad===(71))){if(d===0){d=1;}ac=d;}if(ac<=15){ae=DB.zero();t.d=new DA(ae);af=new AH.ptr(o,l-(g.mantbits>>0)>>0,j);u=af.FixedDecimal(t,ac);}}if(!u){return AU(a,d,c,j,o,l,g);}return AV(a,v,j,$clone(t,AX),d,c);};AU=function(a,b,c,d,e,f,g){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l;h=new Y.ptr(CY.zero(),0,0,false,false);h.Assign(e);h.Shift(f-(g.mantbits>>0)>>0);i=new AX.ptr(DA.nil,0,0,false);j=b<0;if(j){AW(h,e,f,g);AX.copy(i,new AX.ptr(new DA(h.d),h.nd,h.dp,false));k=c;if((k===(101))||(k===(69))){b=i.nd-1>>0;}else if(k===(102)){b=BC(i.nd-i.dp>>0,0);}else if((k===(103))||(k===(71))){b=i.nd;}}else{l=c;if((l===(101))||(l===(69))){h.Round(b+1>>0);}else if(l===(102)){h.Round(h.dp+b>>0);}else if((l===(103))||(l===(71))){if(b===0){b=1;}h.Round(b);}AX.copy(i,new AX.ptr(new DA(h.d),h.nd,h.dp,false));}return AV(a,j,d,$clone(i,AX),b,c);};AV=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g,h,i;g=f;if((g===(101))||(g===(69))){return AY(a,c,$clone(d,AX),e,f);}else if(g===(102)){return AZ(a,c,$clone(d,AX),e);}else if((g===(103))||(g===(71))){h=e;if(h>d.nd&&d.nd>=d.dp){h=d.nd;}if(b){h=6;}i=d.dp-1>>0;if(i<-4||i>=h){if(e>d.nd){e=d.nd;}return AY(a,c,$clone(d,AX),e-1>>0,(f+101<<24>>>24)-103<<24>>>24);}if(e>d.dp){e=d.nd;}return AZ(a,c,$clone(d,AX),BC(e-d.dp>>0,0));}return $append(a,37,f);};AW=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x;if((b.$high===0&&b.$low===0)){a.nd=0;return;}e=d.bias+1>>0;if(c>e&&($imul(332,((a.dp-a.nd>>0))))>=($imul(100,((c-(d.mantbits>>0)>>0))))){return;}f=new Y.ptr(CY.zero(),0,0,false,false);f.Assign((g=$mul64(b,new $Uint64(0,2)),new $Uint64(g.$high+0,g.$low+1)));f.Shift((c-(d.mantbits>>0)>>0)-1>>0);h=new $Uint64(0,0);i=0;if((j=$shiftLeft64(new $Uint64(0,1),d.mantbits),(b.$high>j.$high||(b.$high===j.$high&&b.$low>j.$low)))||(c===e)){h=new $Uint64(b.$high-0,b.$low-1);i=c;}else{h=(k=$mul64(b,new $Uint64(0,2)),new $Uint64(k.$high-0,k.$low-1));i=c-1>>0;}l=new Y.ptr(CY.zero(),0,0,false,false);l.Assign((m=$mul64(h,new $Uint64(0,2)),new $Uint64(m.$high+0,m.$low+1)));l.Shift((i-(d.mantbits>>0)>>0)-1>>0);o=(n=$div64(b,new $Uint64(0,2),true),(n.$high===0&&n.$low===0));p=0;while(true){if(!(p<a.nd)){break;}q=48;if(p<l.nd){q=(r=l.d,((p<0||p>=r.length)?($throwRuntimeError("index out of range"),undefined):r[p]));}t=(s=a.d,((p<0||p>=s.length)?($throwRuntimeError("index out of range"),undefined):s[p]));u=48;if(p<f.nd){u=(v=f.d,((p<0||p>=v.length)?($throwRuntimeError("index out of range"),undefined):v[p]));}w=!((q===t))||o&&((p+1>>0)===l.nd);x=!((t===u))&&(o||(t+1<<24>>>24)<u||(p+1>>0)<f.nd);if(w&&x){a.Round(p+1>>0);return;}else if(w){a.RoundDown(p+1>>0);return;}else if(x){a.RoundUp(p+1>>0);return;}p=p+(1)>>0;}};AY=function(a,b,c,d,e){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p;if(b){a=$append(a,45);}f=48;if(!((c.nd===0))){f=(g=c.d,(0>=g.$length?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+0]));}a=$append(a,f);if(d>0){a=$append(a,46);h=1;i=BB(c.nd,d+1>>0);if(h<i){a=$appendSlice(a,$subslice(c.d,h,i));h=i;}while(true){if(!(h<=d)){break;}a=$append(a,48);h=h+(1)>>0;}}a=$append(a,e);j=c.dp-1>>0;if(c.nd===0){j=0;}if(j<0){f=45;j=-j;}else{f=43;}a=$append(a,f);if(j<10){a=$append(a,48,(j<<24>>>24)+48<<24>>>24);}else if(j<100){a=$append(a,((k=j/10,(k===k&&k!==1/0&&k!==-1/0)?k>>0:$throwRuntimeError("integer divide by zero"))<<24>>>24)+48<<24>>>24,((l=j%10,l===l?l:$throwRuntimeError("integer divide by zero"))<<24>>>24)+48<<24>>>24);}else{a=$append(a,((m=j/100,(m===m&&m!==1/0&&m!==-1/0)?m>>0:$throwRuntimeError("integer divide by zero"))<<24>>>24)+48<<24>>>24,(n=((o=j/10,(o===o&&o!==1/0&&o!==-1/0)?o>>0:$throwRuntimeError("integer divide by zero"))<<24>>>24)%10,n===n?n:$throwRuntimeError("integer divide by zero"))+48<<24>>>24,((p=j%10,p===p?p:$throwRuntimeError("integer divide by zero"))<<24>>>24)+48<<24>>>24);}return a;};AZ=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i;if(b){a=$append(a,45);}if(c.dp>0){e=BB(c.nd,c.dp);a=$appendSlice(a,$subslice(c.d,0,e));while(true){if(!(e<c.dp)){break;}a=$append(a,48);e=e+(1)>>0;}}else{a=$append(a,48);}if(d>0){a=$append(a,46);f=0;while(true){if(!(f<d)){break;}g=48;h=c.dp+f>>0;if(0<=h&&h<c.nd){g=(i=c.d,((h<0||h>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+h]));}a=$append(a,g);f=f+(1)>>0;}}return a;};BA=function(a,b,c,d,e){var $ptr,a,b,c,d,e,f,g;if(b){a=$append(a,45);}f=BO(a,c,10,false,true);a=f[0];a=$append(a,112);d=d-((e.mantbits>>0))>>0;if(d>=0){a=$append(a,43);}g=BO(a,new $Uint64(0,d),10,d<0,true);a=g[0];return a;};BB=function(a,b){var $ptr,a,b;if(a<b){return a;}return b;};BC=function(a,b){var $ptr,a,b;if(a>b){return a;}return b;};BI=function(a,b){var $ptr,a,b,c,d;c=BO(DA.nil,a,b,false,false);d=c[1];return d;};$pkg.FormatUint=BI;BJ=function(a,b){var $ptr,a,b,c,d;c=BO(DA.nil,new $Uint64(a.$high,a.$low),b,(a.$high<0||(a.$high===0&&a.$low<0)),false);d=c[1];return d;};$pkg.FormatInt=BJ;BK=function(a){var $ptr,a;return BJ(new $Int64(0,a),10);};$pkg.Itoa=BK;BM=function(a,b,c){var $ptr,a,b,c,d;d=BO(a,b,c,false,true);a=d[0];return a;};$pkg.AppendUint=BM;BO=function(a,b,c,d,e){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x;f=DA.nil;g="";if(c<2||c>36){$panic(new $String("strconv: illegal AppendInt/FormatInt base"));}h=DE.zero();i=65;if(d){b=new $Uint64(-b.$high,-b.$low);}if(c===10){if(true){while(true){if(!((b.$high>0||(b.$high===0&&b.$low>4294967295)))){break;}j=$div64(b,new $Uint64(0,1000000000),false);l=((k=$mul64(j,new $Uint64(0,1000000000)),new $Uint64(b.$high-k.$high,b.$low-k.$low)).$low>>>0);m=9;while(true){if(!(m>0)){break;}i=i-(1)>>0;o=(n=l/10,(n===n&&n!==1/0&&n!==-1/0)?n>>>0:$throwRuntimeError("integer divide by zero"));((i<0||i>=h.length)?($throwRuntimeError("index out of range"),undefined):h[i]=(((l-($imul(o,10)>>>0)>>>0)+48>>>0)<<24>>>24));l=o;m=m-(1)>>0;}b=j;}}p=(b.$low>>>0);while(true){if(!(p>=10)){break;}i=i-(1)>>0;r=(q=p/10,(q===q&&q!==1/0&&q!==-1/0)?q>>>0:$throwRuntimeError("integer divide by zero"));((i<0||i>=h.length)?($throwRuntimeError("index out of range"),undefined):h[i]=(((p-($imul(r,10)>>>0)>>>0)+48>>>0)<<24>>>24));p=r;}i=i-(1)>>0;((i<0||i>=h.length)?($throwRuntimeError("index out of range"),undefined):h[i]=((p+48>>>0)<<24>>>24));}else{s=((c<0||c>=BN.length)?($throwRuntimeError("index out of range"),undefined):BN[c]);if(s>0){t=new $Uint64(0,c);u=(t.$low>>>0)-1>>>0;while(true){if(!((b.$high>t.$high||(b.$high===t.$high&&b.$low>=t.$low)))){break;}i=i-(1)>>0;((i<0||i>=h.length)?($throwRuntimeError("index out of range"),undefined):h[i]="0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt((((b.$low>>>0)&u)>>>0)));b=$shiftRightUint64(b,(s));}i=i-(1)>>0;((i<0||i>=h.length)?($throwRuntimeError("index out of range"),undefined):h[i]="0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt((b.$low>>>0)));}else{v=new $Uint64(0,c);while(true){if(!((b.$high>v.$high||(b.$high===v.$high&&b.$low>=v.$low)))){break;}i=i-(1)>>0;w=$div64(b,v,false);((i<0||i>=h.length)?($throwRuntimeError("index out of range"),undefined):h[i]="0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt(((x=$mul64(w,v),new $Uint64(b.$high-x.$high,b.$low-x.$low)).$low>>>0)));b=w;}i=i-(1)>>0;((i<0||i>=h.length)?($throwRuntimeError("index out of range"),undefined):h[i]="0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt((b.$low>>>0)));}}if(d){i=i-(1)>>0;((i<0||i>=h.length)?($throwRuntimeError("index out of range"),undefined):h[i]=45);}if(e){f=$appendSlice(a,$subslice(new DA(h),i));return[f,g];}g=$bytesToString($subslice(new DA(h),i));return[f,g];};BP=function(a,b,c,d){var $ptr,a,b,c,d,e;return $bytesToString(BR($makeSlice(DA,0,(e=($imul(3,a.length))/2,(e===e&&e!==1/0&&e!==-1/0)?e>>0:$throwRuntimeError("integer divide by zero"))),a,b,c,d));};BR=function(a,b,c,d,e){var $ptr,a,b,c,d,e,f,g,h;a=$append(a,c);f=0;while(true){if(!(b.length>0)){break;}g=(b.charCodeAt(0)>>0);f=1;if(g>=128){h=C.DecodeRuneInString(b);g=h[0];f=h[1];}if((f===1)&&(g===65533)){a=$appendSlice(a,"\\x");a=$append(a,"0123456789abcdef".charCodeAt((b.charCodeAt(0)>>>4<<24>>>24)));a=$append(a,"0123456789abcdef".charCodeAt(((b.charCodeAt(0)&15)>>>0)));b=$substring(b,f);continue;}a=BT(a,g,f,c,d,e);b=$substring(b,f);}a=$append(a,c);return a;};BS=function(a,b,c,d,e){var $ptr,a,b,c,d,e;a=$append(a,c);if(!C.ValidRune(b)){b=65533;}a=BT(a,b,C.RuneLen(b),c,d,e);a=$append(a,c);return a;};BT=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g,h,i,j,k;g=DF.zero();if((b===(d>>0))||(b===92)){a=$append(a,92);a=$append(a,(b<<24>>>24));return a;}if(e){if(b<128&&CN(b)){a=$append(a,(b<<24>>>24));return a;}}else if(CN(b)||f&&CP(b)){h=C.EncodeRune(new DA(g),b);a=$appendSlice(a,$subslice(new DA(g),0,h));return a;}i=b;if(i===(7)){a=$appendSlice(a,"\\a");}else if(i===(8)){a=$appendSlice(a,"\\b");}else if(i===(12)){a=$appendSlice(a,"\\f");}else if(i===(10)){a=$appendSlice(a,"\\n");}else if(i===(13)){a=$appendSlice(a,"\\r");}else if(i===(9)){a=$appendSlice(a,"\\t");}else if(i===(11)){a=$appendSlice(a,"\\v");}else{if(b<32){a=$appendSlice(a,"\\x");a=$append(a,"0123456789abcdef".charCodeAt(((b<<24>>>24)>>>4<<24>>>24)));a=$append(a,"0123456789abcdef".charCodeAt((((b<<24>>>24)&15)>>>0)));}else if(b>1114111){b=65533;a=$appendSlice(a,"\\u");j=12;while(true){if(!(j>=0)){break;}a=$append(a,"0123456789abcdef".charCodeAt((((b>>$min((j>>>0),31))>>0)&15)));j=j-(4)>>0;}}else if(b<65536){a=$appendSlice(a,"\\u");j=12;while(true){if(!(j>=0)){break;}a=$append(a,"0123456789abcdef".charCodeAt((((b>>$min((j>>>0),31))>>0)&15)));j=j-(4)>>0;}}else{a=$appendSlice(a,"\\U");k=28;while(true){if(!(k>=0)){break;}a=$append(a,"0123456789abcdef".charCodeAt((((b>>$min((k>>>0),31))>>0)&15)));k=k-(4)>>0;}}}return a;};BU=function(a){var $ptr,a;return BP(a,34,false,false);};$pkg.Quote=BU;BV=function(a,b){var $ptr,a,b;return BR(a,b,34,false,false);};$pkg.AppendQuote=BV;BW=function(a){var $ptr,a;return BP(a,34,true,false);};$pkg.QuoteToASCII=BW;BX=function(a,b){var $ptr,a,b;return BR(a,b,34,true,false);};$pkg.AppendQuoteToASCII=BX;CB=function(a,b){var $ptr,a,b;return BS(a,b,39,false,false);};$pkg.AppendQuoteRune=CB;CD=function(a,b){var $ptr,a,b;return BS(a,b,39,true,false);};$pkg.AppendQuoteRuneToASCII=CD;CG=function(a){var $ptr,a,b,c,d;while(true){if(!(a.length>0)){break;}b=C.DecodeRuneInString(a);c=b[0];d=b[1];a=$substring(a,d);if(d>1){if(c===65279){return false;}continue;}if(c===65533){return false;}if((c<32&&!((c===9)))||(c===96)||(c===127)){return false;}}return true;};$pkg.CanBackquote=CG;CH=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j;b=0;c=false;d=(a>>0);if(48<=d&&d<=57){e=d-48>>0;f=true;b=e;c=f;return[b,c];}else if(97<=d&&d<=102){g=(d-97>>0)+10>>0;h=true;b=g;c=h;return[b,c];}else if(65<=d&&d<=70){i=(d-65>>0)+10>>0;j=true;b=i;c=j;return[b,c];}return[b,c];};CI=function(a,b){var $ptr,a,aa,ab,ac,ad,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;c=0;d=false;e="";f=$ifaceNil;g=a.charCodeAt(0);if((g===b)&&((b===39)||(b===34))){f=$pkg.ErrSyntax;return[c,d,e,f];}else if(g>=128){h=C.DecodeRuneInString(a);i=h[0];j=h[1];k=i;l=true;m=$substring(a,j);n=$ifaceNil;c=k;d=l;e=m;f=n;return[c,d,e,f];}else if(!((g===92))){o=(a.charCodeAt(0)>>0);p=false;q=$substring(a,1);r=$ifaceNil;c=o;d=p;e=q;f=r;return[c,d,e,f];}if(a.length<=1){f=$pkg.ErrSyntax;return[c,d,e,f];}s=a.charCodeAt(1);a=$substring(a,2);switch(0){default:t=s;if(t===(97)){c=7;}else if(t===(98)){c=8;}else if(t===(102)){c=12;}else if(t===(110)){c=10;}else if(t===(114)){c=13;}else if(t===(116)){c=9;}else if(t===(118)){c=11;}else if((t===(120))||(t===(117))||(t===(85))){u=0;v=s;if(v===(120)){u=2;}else if(v===(117)){u=4;}else if(v===(85)){u=8;}w=0;if(a.length<u){f=$pkg.ErrSyntax;return[c,d,e,f];}x=0;while(true){if(!(x<u)){break;}y=CH(a.charCodeAt(x));z=y[0];aa=y[1];if(!aa){f=$pkg.ErrSyntax;return[c,d,e,f];}w=(w<<4>>0)|z;x=x+(1)>>0;}a=$substring(a,u);if(s===120){c=w;break;}if(w>1114111){f=$pkg.ErrSyntax;return[c,d,e,f];}c=w;d=true;}else if((t===(48))||(t===(49))||(t===(50))||(t===(51))||(t===(52))||(t===(53))||(t===(54))||(t===(55))){ab=(s>>0)-48>>0;if(a.length<2){f=$pkg.ErrSyntax;return[c,d,e,f];}ac=0;while(true){if(!(ac<2)){break;}ad=(a.charCodeAt(ac)>>0)-48>>0;if(ad<0||ad>7){f=$pkg.ErrSyntax;return[c,d,e,f];}ab=((ab<<3>>0))|ad;ac=ac+(1)>>0;}a=$substring(a,2);if(ab>255){f=$pkg.ErrSyntax;return[c,d,e,f];}c=ab;}else if(t===(92)){c=92;}else if((t===(39))||(t===(34))){if(!((s===b))){f=$pkg.ErrSyntax;return[c,d,e,f];}c=(s>>0);}else{f=$pkg.ErrSyntax;return[c,d,e,f];}}e=a;return[c,d,e,f];};$pkg.UnquoteChar=CI;CJ=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r;b=a.length;if(b<2){return["",$pkg.ErrSyntax];}c=a.charCodeAt(0);if(!((c===a.charCodeAt((b-1>>0))))){return["",$pkg.ErrSyntax];}a=$substring(a,1,(b-1>>0));if(c===96){if(CK(a,96)){return["",$pkg.ErrSyntax];}if(CK(a,13)){d=$makeSlice(DA,0,(a.length-1>>0));e=0;while(true){if(!(e<a.length)){break;}if(!((a.charCodeAt(e)===13))){d=$append(d,a.charCodeAt(e));}e=e+(1)>>0;}return[$bytesToString(d),$ifaceNil];}return[a,$ifaceNil];}if(!((c===34))&&!((c===39))){return["",$pkg.ErrSyntax];}if(CK(a,10)){return["",$pkg.ErrSyntax];}if(!CK(a,92)&&!CK(a,c)){f=c;if(f===(34)){return[a,$ifaceNil];}else if(f===(39)){g=C.DecodeRuneInString(a);h=g[0];i=g[1];if((i===a.length)&&(!((h===65533))||!((i===1)))){return[a,$ifaceNil];}}}j=DF.zero();l=$makeSlice(DA,0,(k=($imul(3,a.length))/2,(k===k&&k!==1/0&&k!==-1/0)?k>>0:$throwRuntimeError("integer divide by zero")));while(true){if(!(a.length>0)){break;}m=CI(a,c);n=m[0];o=m[1];p=m[2];q=m[3];if(!($interfaceIsEqual(q,$ifaceNil))){return["",q];}a=p;if(n<128||!o){l=$append(l,(n<<24>>>24));}else{r=C.EncodeRune(new DA(j),n);l=$appendSlice(l,$subslice(new DA(j),0,r));}if((c===39)&&!((a.length===0))){return["",$pkg.ErrSyntax];}}return[$bytesToString(l),$ifaceNil];};$pkg.Unquote=CJ;CK=function(a,b){var $ptr,a,b,c;c=0;while(true){if(!(c<a.length)){break;}if(a.charCodeAt(c)===b){return true;}c=c+(1)>>0;}return false;};CL=function(a,b){var $ptr,a,b,c,d,e,f,g,h;c=0;d=a.$length;e=c;f=d;while(true){if(!(e<f)){break;}h=e+(g=((f-e>>0))/2,(g===g&&g!==1/0&&g!==-1/0)?g>>0:$throwRuntimeError("integer divide by zero"))>>0;if(((h<0||h>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+h])<b){e=h+1>>0;}else{f=h;}}return e;};CM=function(a,b){var $ptr,a,b,c,d,e,f,g,h;c=0;d=a.$length;e=c;f=d;while(true){if(!(e<f)){break;}h=e+(g=((f-e>>0))/2,(g===g&&g!==1/0&&g!==-1/0)?g>>0:$throwRuntimeError("integer divide by zero"))>>0;if(((h<0||h>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+h])<b){e=h+1>>0;}else{f=h;}}return e;};CN=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u;if(a<=255){if(32<=a&&a<=126){return true;}if(161<=a&&a<=255){return!((a===173));}return false;}if(0<=a&&a<65536){b=(a<<16>>>16);c=BD;d=BE;e=b;f=c;g=d;h=CL(f,e);if(h>=f.$length||e<(i=(h&~1)>>0,((i<0||i>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+i]))||(j=h|1,((j<0||j>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+j]))<e){return false;}k=CL(g,e);return k>=g.$length||!((((k<0||k>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+k])===e));}l=(a>>>0);m=BF;n=BG;o=l;p=m;q=n;r=CM(p,o);if(r>=p.$length||o<(s=(r&~1)>>0,((s<0||s>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+s]))||(t=r|1,((t<0||t>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+t]))<o){return false;}if(a>=131072){return true;}a=a-(65536)>>0;u=CL(q,(a<<16>>>16));return u>=q.$length||!((((u<0||u>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+u])===(a<<16>>>16)));};$pkg.IsPrint=CN;CP=function(a){var $ptr,a,b,c;if(a>65535){return false;}b=(a<<16>>>16);c=CL(BH,b);return c<BH.$length&&(b===((c<0||c>=BH.$length)?($throwRuntimeError("index out of range"),undefined):BH.$array[BH.$offset+c]));};CZ.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];DG.methods=[{prop:"set",name:"set",pkg:"strconv",typ:$funcType([$String],[$Bool],false)},{prop:"floatBits",name:"floatBits",pkg:"strconv",typ:$funcType([DD],[$Uint64,$Bool],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Assign",name:"Assign",pkg:"",typ:$funcType([$Uint64],[],false)},{prop:"Shift",name:"Shift",pkg:"",typ:$funcType([$Int],[],false)},{prop:"Round",name:"Round",pkg:"",typ:$funcType([$Int],[],false)},{prop:"RoundDown",name:"RoundDown",pkg:"",typ:$funcType([$Int],[],false)},{prop:"RoundUp",name:"RoundUp",pkg:"",typ:$funcType([$Int],[],false)},{prop:"RoundedInteger",name:"RoundedInteger",pkg:"",typ:$funcType([],[$Uint64],false)}];DI.methods=[{prop:"floatBits",name:"floatBits",pkg:"strconv",typ:$funcType([DD],[$Uint64,$Bool],false)},{prop:"AssignComputeBounds",name:"AssignComputeBounds",pkg:"",typ:$funcType([$Uint64,$Int,$Bool,DD],[AH,AH],false)},{prop:"Normalize",name:"Normalize",pkg:"",typ:$funcType([],[$Uint],false)},{prop:"Multiply",name:"Multiply",pkg:"",typ:$funcType([AH],[],false)},{prop:"AssignDecimal",name:"AssignDecimal",pkg:"",typ:$funcType([$Uint64,$Int,$Bool,$Bool,DD],[$Bool],false)},{prop:"frexp10",name:"frexp10",pkg:"strconv",typ:$funcType([],[$Int,$Int],false)},{prop:"FixedDecimal",name:"FixedDecimal",pkg:"",typ:$funcType([DH,$Int],[$Bool],false)},{prop:"ShortestDecimal",name:"ShortestDecimal",pkg:"",typ:$funcType([DH,DI,DI],[$Bool],false)}];S.init("",[{prop:"Func",name:"Func",exported:true,typ:$String,tag:""},{prop:"Num",name:"Num",exported:true,typ:$String,tag:""},{prop:"Err",name:"Err",exported:true,typ:$error,tag:""}]);Y.init("strconv",[{prop:"d",name:"d",exported:false,typ:CY,tag:""},{prop:"nd",name:"nd",exported:false,typ:$Int,tag:""},{prop:"dp",name:"dp",exported:false,typ:$Int,tag:""},{prop:"neg",name:"neg",exported:false,typ:$Bool,tag:""},{prop:"trunc",name:"trunc",exported:false,typ:$Bool,tag:""}]);AC.init("strconv",[{prop:"delta",name:"delta",exported:false,typ:$Int,tag:""},{prop:"cutoff",name:"cutoff",exported:false,typ:$String,tag:""}]);AH.init("strconv",[{prop:"mant",name:"mant",exported:false,typ:$Uint64,tag:""},{prop:"exp",name:"exp",exported:false,typ:$Int,tag:""},{prop:"neg",name:"neg",exported:false,typ:$Bool,tag:""}]);AO.init("strconv",[{prop:"mantbits",name:"mantbits",exported:false,typ:$Uint,tag:""},{prop:"expbits",name:"expbits",exported:false,typ:$Uint,tag:""},{prop:"bias",name:"bias",exported:false,typ:$Int,tag:""}]);AX.init("strconv",[{prop:"d",name:"d",exported:false,typ:DA,tag:""},{prop:"nd",name:"nd",exported:false,typ:$Int,tag:""},{prop:"dp",name:"dp",exported:false,typ:$Int,tag:""},{prop:"neg",name:"neg",exported:false,typ:$Bool,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=B.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}G=true;K=new CS([1,3,6,9,13,16,19,23,26]);L=new CT([1,10,100,1000,10000,100000,1e+06,1e+07,1e+08,1e+09,1e+10,1e+11,1e+12,1e+13,1e+14,1e+15,1e+16,1e+17,1e+18,1e+19,1e+20,1e+21,1e+22]);M=new CU([1,10,100,1000,10000,100000,1e+06,1e+07,1e+08,1e+09,1e+10]);$pkg.ErrRange=B.New("value out of range");$pkg.ErrSyntax=B.New("invalid syntax");AD=new CV([new AC.ptr(0,""),new AC.ptr(1,"5"),new AC.ptr(1,"25"),new AC.ptr(1,"125"),new AC.ptr(2,"625"),new AC.ptr(2,"3125"),new AC.ptr(2,"15625"),new AC.ptr(3,"78125"),new AC.ptr(3,"390625"),new AC.ptr(3,"1953125"),new AC.ptr(4,"9765625"),new AC.ptr(4,"48828125"),new AC.ptr(4,"244140625"),new AC.ptr(4,"1220703125"),new AC.ptr(5,"6103515625"),new AC.ptr(5,"30517578125"),new AC.ptr(5,"152587890625"),new AC.ptr(6,"762939453125"),new AC.ptr(6,"3814697265625"),new AC.ptr(6,"19073486328125"),new AC.ptr(7,"95367431640625"),new AC.ptr(7,"476837158203125"),new AC.ptr(7,"2384185791015625"),new AC.ptr(7,"11920928955078125"),new AC.ptr(8,"59604644775390625"),new AC.ptr(8,"298023223876953125"),new AC.ptr(8,"1490116119384765625"),new AC.ptr(9,"7450580596923828125"),new AC.ptr(9,"37252902984619140625"),new AC.ptr(9,"186264514923095703125"),new AC.ptr(10,"931322574615478515625"),new AC.ptr(10,"4656612873077392578125"),new AC.ptr(10,"23283064365386962890625"),new AC.ptr(10,"116415321826934814453125"),new AC.ptr(11,"582076609134674072265625"),new AC.ptr(11,"2910383045673370361328125"),new AC.ptr(11,"14551915228366851806640625"),new AC.ptr(12,"72759576141834259033203125"),new AC.ptr(12,"363797880709171295166015625"),new AC.ptr(12,"1818989403545856475830078125"),new AC.ptr(13,"9094947017729282379150390625"),new AC.ptr(13,"45474735088646411895751953125"),new AC.ptr(13,"227373675443232059478759765625"),new AC.ptr(13,"1136868377216160297393798828125"),new AC.ptr(14,"5684341886080801486968994140625"),new AC.ptr(14,"28421709430404007434844970703125"),new AC.ptr(14,"142108547152020037174224853515625"),new AC.ptr(15,"710542735760100185871124267578125"),new AC.ptr(15,"3552713678800500929355621337890625"),new AC.ptr(15,"17763568394002504646778106689453125"),new AC.ptr(16,"88817841970012523233890533447265625"),new AC.ptr(16,"444089209850062616169452667236328125"),new AC.ptr(16,"2220446049250313080847263336181640625"),new AC.ptr(16,"11102230246251565404236316680908203125"),new AC.ptr(17,"55511151231257827021181583404541015625"),new AC.ptr(17,"277555756156289135105907917022705078125"),new AC.ptr(17,"1387778780781445675529539585113525390625"),new AC.ptr(18,"6938893903907228377647697925567626953125"),new AC.ptr(18,"34694469519536141888238489627838134765625"),new AC.ptr(18,"173472347597680709441192448139190673828125"),new AC.ptr(19,"867361737988403547205962240695953369140625")]);AI=$toNativeArray($kindStruct,[new AH.ptr(new $Uint64(2147483648,0),-63,false),new AH.ptr(new $Uint64(2684354560,0),-60,false),new AH.ptr(new $Uint64(3355443200,0),-57,false),new AH.ptr(new $Uint64(4194304000,0),-54,false),new AH.ptr(new $Uint64(2621440000,0),-50,false),new AH.ptr(new $Uint64(3276800000,0),-47,false),new AH.ptr(new $Uint64(4096000000,0),-44,false),new AH.ptr(new $Uint64(2560000000,0),-40,false)]);AJ=$toNativeArray($kindStruct,[new AH.ptr(new $Uint64(4203730336,136053384),-1220,false),new AH.ptr(new $Uint64(3132023167,2722021238),-1193,false),new AH.ptr(new $Uint64(2333539104,810921078),-1166,false),new AH.ptr(new $Uint64(3477244234,1573795306),-1140,false),new AH.ptr(new $Uint64(2590748842,1432697645),-1113,false),new AH.ptr(new $Uint64(3860516611,1025131999),-1087,false),new AH.ptr(new $Uint64(2876309015,3348809418),-1060,false),new AH.ptr(new $Uint64(4286034428,3200048207),-1034,false),new AH.ptr(new $Uint64(3193344495,1097586188),-1007,false),new AH.ptr(new $Uint64(2379227053,2424306748),-980,false),new AH.ptr(new $Uint64(3545324584,827693699),-954,false),new AH.ptr(new $Uint64(2641472655,2913388981),-927,false),new AH.ptr(new $Uint64(3936100983,602835915),-901,false),new AH.ptr(new $Uint64(2932623761,1081627501),-874,false),new AH.ptr(new $Uint64(2184974969,1572261463),-847,false),new AH.ptr(new $Uint64(3255866422,1308317239),-821,false),new AH.ptr(new $Uint64(2425809519,944281679),-794,false),new AH.ptr(new $Uint64(3614737867,629291719),-768,false),new AH.ptr(new $Uint64(2693189581,2545915892),-741,false),new AH.ptr(new $Uint64(4013165208,388672741),-715,false),new AH.ptr(new $Uint64(2990041083,708162190),-688,false),new AH.ptr(new $Uint64(2227754207,3536207675),-661,false),new AH.ptr(new $Uint64(3319612455,450088378),-635,false),new AH.ptr(new $Uint64(2473304014,3139815830),-608,false),new AH.ptr(new $Uint64(3685510180,2103616900),-582,false),new AH.ptr(new $Uint64(2745919064,224385782),-555,false),new AH.ptr(new $Uint64(4091738259,3737383206),-529,false),new AH.ptr(new $Uint64(3048582568,2868871352),-502,false),new AH.ptr(new $Uint64(2271371013,1820084875),-475,false),new AH.ptr(new $Uint64(3384606560,885076051),-449,false),new AH.ptr(new $Uint64(2521728396,2444895829),-422,false),new AH.ptr(new $Uint64(3757668132,1881767613),-396,false),new AH.ptr(new $Uint64(2799680927,3102062735),-369,false),new AH.ptr(new $Uint64(4171849679,2289335700),-343,false),new AH.ptr(new $Uint64(3108270227,2410191823),-316,false),new AH.ptr(new $Uint64(2315841784,3205436779),-289,false),new AH.ptr(new $Uint64(3450873173,1697722806),-263,false),new AH.ptr(new $Uint64(2571100870,3497754540),-236,false),new AH.ptr(new $Uint64(3831238852,707476230),-210,false),new AH.ptr(new $Uint64(2854495385,1769181907),-183,false),new AH.ptr(new $Uint64(4253529586,2197867022),-157,false),new AH.ptr(new $Uint64(3169126500,2450594539),-130,false),new AH.ptr(new $Uint64(2361183241,1867548876),-103,false),new AH.ptr(new $Uint64(3518437208,3793315116),-77,false),new AH.ptr(new $Uint64(2621440000,0),-50,false),new AH.ptr(new $Uint64(3906250000,0),-24,false),new AH.ptr(new $Uint64(2910383045,2892103680),3,false),new AH.ptr(new $Uint64(2168404344,4170451332),30,false),new AH.ptr(new $Uint64(3231174267,3372684723),56,false),new AH.ptr(new $Uint64(2407412430,2078956656),83,false),new AH.ptr(new $Uint64(3587324068,2884206696),109,false),new AH.ptr(new $Uint64(2672764710,395977285),136,false),new AH.ptr(new $Uint64(3982729777,3569679143),162,false),new AH.ptr(new $Uint64(2967364920,2361961896),189,false),new AH.ptr(new $Uint64(2210859150,447440347),216,false),new AH.ptr(new $Uint64(3294436857,1114709402),242,false),new AH.ptr(new $Uint64(2454546732,2786846552),269,false),new AH.ptr(new $Uint64(3657559652,443583978),295,false),new AH.ptr(new $Uint64(2725094297,2599384906),322,false),new AH.ptr(new $Uint64(4060706939,3028118405),348,false),new AH.ptr(new $Uint64(3025462433,2044532855),375,false),new AH.ptr(new $Uint64(2254145170,1536935362),402,false),new AH.ptr(new $Uint64(3358938053,3365297469),428,false),new AH.ptr(new $Uint64(2502603868,4204241075),455,false),new AH.ptr(new $Uint64(3729170365,2577424355),481,false),new AH.ptr(new $Uint64(2778448436,3677981733),508,false),new AH.ptr(new $Uint64(4140210802,2744688476),534,false),new AH.ptr(new $Uint64(3084697427,1424604878),561,false),new AH.ptr(new $Uint64(2298278679,4062331362),588,false),new AH.ptr(new $Uint64(3424702107,3546052773),614,false),new AH.ptr(new $Uint64(2551601907,2065781727),641,false),new AH.ptr(new $Uint64(3802183132,2535403578),667,false),new AH.ptr(new $Uint64(2832847187,1558426518),694,false),new AH.ptr(new $Uint64(4221271257,2762425404),720,false),new AH.ptr(new $Uint64(3145092172,2812560400),747,false),new AH.ptr(new $Uint64(2343276271,3057687578),774,false),new AH.ptr(new $Uint64(3491753744,2790753324),800,false),new AH.ptr(new $Uint64(2601559269,3918606633),827,false),new AH.ptr(new $Uint64(3876625403,2711358621),853,false),new AH.ptr(new $Uint64(2888311001,1648096297),880,false),new AH.ptr(new $Uint64(2151959390,2057817989),907,false),new AH.ptr(new $Uint64(3206669376,61660461),933,false),new AH.ptr(new $Uint64(2389154863,1581580175),960,false),new AH.ptr(new $Uint64(3560118173,2626467905),986,false),new AH.ptr(new $Uint64(2652494738,3034782633),1013,false),new AH.ptr(new $Uint64(3952525166,3135207385),1039,false),new AH.ptr(new $Uint64(2944860731,2616258155),1066,false)]);AK=$toNativeArray($kindUint64,[new $Uint64(0,1),new $Uint64(0,10),new $Uint64(0,100),new $Uint64(0,1000),new $Uint64(0,10000),new $Uint64(0,100000),new $Uint64(0,1000000),new $Uint64(0,10000000),new $Uint64(0,100000000),new $Uint64(0,1000000000),new $Uint64(2,1410065408),new $Uint64(23,1215752192),new $Uint64(232,3567587328),new $Uint64(2328,1316134912),new $Uint64(23283,276447232),new $Uint64(232830,2764472320),new $Uint64(2328306,1874919424),new $Uint64(23283064,1569325056),new $Uint64(232830643,2808348672),new $Uint64(2328306436,2313682944)]);AP=new AO.ptr(23,8,-127);AQ=new AO.ptr(52,11,-1023);BD=new CW([32,126,161,887,890,895,900,1366,1369,1418,1421,1479,1488,1514,1520,1524,1542,1563,1566,1805,1808,1866,1869,1969,1984,2042,2048,2093,2096,2139,2142,2142,2208,2237,2260,2444,2447,2448,2451,2482,2486,2489,2492,2500,2503,2504,2507,2510,2519,2519,2524,2531,2534,2555,2561,2570,2575,2576,2579,2617,2620,2626,2631,2632,2635,2637,2641,2641,2649,2654,2662,2677,2689,2745,2748,2765,2768,2768,2784,2787,2790,2801,2809,2809,2817,2828,2831,2832,2835,2873,2876,2884,2887,2888,2891,2893,2902,2903,2908,2915,2918,2935,2946,2954,2958,2965,2969,2975,2979,2980,2984,2986,2990,3001,3006,3010,3014,3021,3024,3024,3031,3031,3046,3066,3072,3129,3133,3149,3157,3162,3168,3171,3174,3183,3192,3257,3260,3277,3285,3286,3294,3299,3302,3314,3329,3386,3389,3407,3412,3427,3430,3455,3458,3478,3482,3517,3520,3526,3530,3530,3535,3551,3558,3567,3570,3572,3585,3642,3647,3675,3713,3716,3719,3722,3725,3725,3732,3751,3754,3773,3776,3789,3792,3801,3804,3807,3840,3948,3953,4058,4096,4295,4301,4301,4304,4685,4688,4701,4704,4749,4752,4789,4792,4805,4808,4885,4888,4954,4957,4988,4992,5017,5024,5109,5112,5117,5120,5788,5792,5880,5888,5908,5920,5942,5952,5971,5984,6003,6016,6109,6112,6121,6128,6137,6144,6157,6160,6169,6176,6263,6272,6314,6320,6389,6400,6443,6448,6459,6464,6464,6468,6509,6512,6516,6528,6571,6576,6601,6608,6618,6622,6683,6686,6780,6783,6793,6800,6809,6816,6829,6832,6846,6912,6987,6992,7036,7040,7155,7164,7223,7227,7241,7245,7304,7360,7367,7376,7417,7424,7669,7675,7957,7960,7965,7968,8005,8008,8013,8016,8061,8064,8147,8150,8175,8178,8190,8208,8231,8240,8286,8304,8305,8308,8348,8352,8382,8400,8432,8448,8587,8592,9254,9280,9290,9312,11123,11126,11157,11160,11193,11197,11217,11244,11247,11264,11507,11513,11559,11565,11565,11568,11623,11631,11632,11647,11670,11680,11844,11904,12019,12032,12245,12272,12283,12289,12438,12441,12543,12549,12589,12593,12730,12736,12771,12784,19893,19904,40917,40960,42124,42128,42182,42192,42539,42560,42743,42752,42935,42999,43051,43056,43065,43072,43127,43136,43205,43214,43225,43232,43261,43264,43347,43359,43388,43392,43481,43486,43574,43584,43597,43600,43609,43612,43714,43739,43766,43777,43782,43785,43790,43793,43798,43808,43877,43888,44013,44016,44025,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64449,64467,64831,64848,64911,64914,64967,65008,65021,65024,65049,65056,65131,65136,65276,65281,65470,65474,65479,65482,65487,65490,65495,65498,65500,65504,65518,65532,65533]);BE=new CW([173,907,909,930,1328,1376,1416,1424,1757,2111,2229,2274,2436,2473,2481,2526,2564,2601,2609,2612,2615,2621,2653,2692,2702,2706,2729,2737,2740,2758,2762,2820,2857,2865,2868,2910,2948,2961,2971,2973,3017,3076,3085,3089,3113,3141,3145,3159,3204,3213,3217,3241,3252,3269,3273,3295,3312,3332,3341,3345,3397,3401,3460,3506,3516,3541,3543,3715,3721,3736,3744,3748,3750,3756,3770,3781,3783,3912,3992,4029,4045,4294,4681,4695,4697,4745,4785,4799,4801,4823,4881,5760,5901,5997,6001,6431,6751,7415,8024,8026,8028,8030,8117,8133,8156,8181,8335,9215,11209,11311,11359,11558,11687,11695,11703,11711,11719,11727,11735,11743,11930,12352,12687,12831,13055,42927,43470,43519,43815,43823,64311,64317,64319,64322,64325,65107,65127,65141,65511]);BF=new CX([65536,65613,65616,65629,65664,65786,65792,65794,65799,65843,65847,65947,65952,65952,66000,66045,66176,66204,66208,66256,66272,66299,66304,66339,66352,66378,66384,66426,66432,66499,66504,66517,66560,66717,66720,66729,66736,66771,66776,66811,66816,66855,66864,66915,66927,66927,67072,67382,67392,67413,67424,67431,67584,67589,67592,67640,67644,67644,67647,67742,67751,67759,67808,67829,67835,67867,67871,67897,67903,67903,67968,68023,68028,68047,68050,68102,68108,68147,68152,68154,68159,68167,68176,68184,68192,68255,68288,68326,68331,68342,68352,68405,68409,68437,68440,68466,68472,68497,68505,68508,68521,68527,68608,68680,68736,68786,68800,68850,68858,68863,69216,69246,69632,69709,69714,69743,69759,69825,69840,69864,69872,69881,69888,69955,69968,70006,70016,70093,70096,70132,70144,70206,70272,70313,70320,70378,70384,70393,70400,70412,70415,70416,70419,70457,70460,70468,70471,70472,70475,70477,70480,70480,70487,70487,70493,70499,70502,70508,70512,70516,70656,70749,70784,70855,70864,70873,71040,71093,71096,71133,71168,71236,71248,71257,71264,71276,71296,71351,71360,71369,71424,71449,71453,71467,71472,71487,71840,71922,71935,71935,72384,72440,72704,72773,72784,72812,72816,72847,72850,72886,73728,74649,74752,74868,74880,75075,77824,78894,82944,83526,92160,92728,92736,92777,92782,92783,92880,92909,92912,92917,92928,92997,93008,93047,93053,93071,93952,94020,94032,94078,94095,94111,94176,94176,94208,100332,100352,101106,110592,110593,113664,113770,113776,113788,113792,113800,113808,113817,113820,113823,118784,119029,119040,119078,119081,119154,119163,119272,119296,119365,119552,119638,119648,119665,119808,119967,119970,119970,119973,119974,119977,120074,120077,120134,120138,120485,120488,120779,120782,121483,121499,121519,122880,122904,122907,122922,124928,125124,125127,125142,125184,125258,125264,125273,125278,125279,126464,126500,126503,126523,126530,126530,126535,126548,126551,126564,126567,126619,126625,126651,126704,126705,126976,127019,127024,127123,127136,127150,127153,127221,127232,127244,127248,127339,127344,127404,127462,127490,127504,127547,127552,127560,127568,127569,127744,128722,128736,128748,128752,128758,128768,128883,128896,128980,129024,129035,129040,129095,129104,129113,129120,129159,129168,129197,129296,129319,129328,129328,129331,129355,129360,129374,129408,129425,129472,129472,131072,173782,173824,177972,177984,178205,178208,183969,194560,195101,917760,917999]);BG=new CW([12,39,59,62,399,926,2057,2102,2134,2291,2564,2580,2584,4285,4405,4576,4626,4743,4745,4750,4766,4868,4905,4913,4916,5210,5212,7177,7223,7336,9327,27231,27482,27490,54357,54429,54445,54458,54460,54468,54534,54549,54557,54586,54591,54597,54609,55968,57351,57378,57381,60932,60960,60963,60968,60979,60984,60986,61000,61002,61004,61008,61011,61016,61018,61020,61022,61024,61027,61035,61043,61048,61053,61055,61066,61092,61098,61632,61648,61743,63775,63807]);BH=new CW([160,5760,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8239,8287,12288]);BN=$toNativeArray($kindUint,[0,0,1,0,2,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0]);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["reflect"]=(function(){var $pkg={},$init,A,C,F,D,B,E,L,N,O,P,AU,BY,BZ,CA,CB,CC,CD,CE,CF,CG,CH,CI,CJ,CK,CL,CM,CN,CP,CY,CZ,DA,DE,DF,DG,EZ,FA,FD,HM,HN,HO,HP,HQ,HR,IG,IH,II,IJ,IK,IL,IM,IN,IO,IP,IQ,IR,IS,IT,IU,IX,IY,IZ,JA,JB,JC,JN,JP,JQ,JS,JT,JU,KB,KC,G,M,Q,S,U,BG,BH,BL,CQ,DB,FM,H,I,J,K,R,T,V,W,X,Y,Z,AA,AB,AC,AF,AH,AI,AJ,AK,AM,AP,AQ,AR,AS,AT,AV,AW,AX,AY,AZ,BA,BB,BC,BD,BE,BF,BI,BJ,BK,BM,BN,DI,DK,DL,DM,DN,ER,EW,FN,FS,FU,FV,GD,GE,GF,GH,GI,GJ,GK,GL,GM,GN,GO,GP,GQ,GR,GS,GT,GU,GV,GW,GX,GY,GZ,HA,HB,HC;A=$packages["errors"];C=$packages["github.com/gopherjs/gopherjs/js"];F=$packages["math"];D=$packages["runtime"];B=$packages["strconv"];E=$packages["sync"];L=$pkg.uncommonType=$newType(0,$kindStruct,"reflect.uncommonType",true,"reflect",false,function(pkgPath_,mcount_,_$2_,moff_,_$4_,_methods_){this.$val=this;if(arguments.length===0){this.pkgPath=0;this.mcount=0;this._$2=0;this.moff=0;this._$4=0;this._methods=HP.nil;return;}this.pkgPath=pkgPath_;this.mcount=mcount_;this._$2=_$2_;this.moff=moff_;this._$4=_$4_;this._methods=_methods_;});N=$pkg.funcType=$newType(0,$kindStruct,"reflect.funcType",true,"reflect",false,function(rtype_,inCount_,outCount_,_in_,_out_){this.$val=this;if(arguments.length===0){this.rtype=new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0);this.inCount=0;this.outCount=0;this._in=HO.nil;this._out=HO.nil;return;}this.rtype=rtype_;this.inCount=inCount_;this.outCount=outCount_;this._in=_in_;this._out=_out_;});O=$pkg.name=$newType(0,$kindStruct,"reflect.name",true,"reflect",false,function(bytes_){this.$val=this;if(arguments.length===0){this.bytes=IL.nil;return;}this.bytes=bytes_;});P=$pkg.nameData=$newType(0,$kindStruct,"reflect.nameData",true,"reflect",false,function(name_,tag_,pkgPath_,exported_){this.$val=this;if(arguments.length===0){this.name="";this.tag="";this.pkgPath="";this.exported=false;return;}this.name=name_;this.tag=tag_;this.pkgPath=pkgPath_;this.exported=exported_;});AU=$pkg.mapIter=$newType(0,$kindStruct,"reflect.mapIter",true,"reflect",false,function(t_,m_,keys_,i_){this.$val=this;if(arguments.length===0){this.t=$ifaceNil;this.m=null;this.keys=null;this.i=0;return;}this.t=t_;this.m=m_;this.keys=keys_;this.i=i_;});BY=$pkg.Type=$newType(8,$kindInterface,"reflect.Type",true,"reflect",true,null);BZ=$pkg.Kind=$newType(4,$kindUint,"reflect.Kind",true,"reflect",true,null);CA=$pkg.tflag=$newType(1,$kindUint8,"reflect.tflag",true,"reflect",false,null);CB=$pkg.rtype=$newType(0,$kindStruct,"reflect.rtype",true,"reflect",false,function(size_,ptrdata_,hash_,tflag_,align_,fieldAlign_,kind_,alg_,gcdata_,str_,ptrToThis_){this.$val=this;if(arguments.length===0){this.size=0;this.ptrdata=0;this.hash=0;this.tflag=0;this.align=0;this.fieldAlign=0;this.kind=0;this.alg=IK.nil;this.gcdata=IL.nil;this.str=0;this.ptrToThis=0;return;}this.size=size_;this.ptrdata=ptrdata_;this.hash=hash_;this.tflag=tflag_;this.align=align_;this.fieldAlign=fieldAlign_;this.kind=kind_;this.alg=alg_;this.gcdata=gcdata_;this.str=str_;this.ptrToThis=ptrToThis_;});CC=$pkg.typeAlg=$newType(0,$kindStruct,"reflect.typeAlg",true,"reflect",false,function(hash_,equal_){this.$val=this;if(arguments.length===0){this.hash=$throwNilPointerError;this.equal=$throwNilPointerError;return;}this.hash=hash_;this.equal=equal_;});CD=$pkg.method=$newType(0,$kindStruct,"reflect.method",true,"reflect",false,function(name_,mtyp_,ifn_,tfn_){this.$val=this;if(arguments.length===0){this.name=0;this.mtyp=0;this.ifn=0;this.tfn=0;return;}this.name=name_;this.mtyp=mtyp_;this.ifn=ifn_;this.tfn=tfn_;});CE=$pkg.ChanDir=$newType(4,$kindInt,"reflect.ChanDir",true,"reflect",true,null);CF=$pkg.arrayType=$newType(0,$kindStruct,"reflect.arrayType",true,"reflect",false,function(rtype_,elem_,slice_,len_){this.$val=this;if(arguments.length===0){this.rtype=new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0);this.elem=HN.nil;this.slice=HN.nil;this.len=0;return;}this.rtype=rtype_;this.elem=elem_;this.slice=slice_;this.len=len_;});CG=$pkg.chanType=$newType(0,$kindStruct,"reflect.chanType",true,"reflect",false,function(rtype_,elem_,dir_){this.$val=this;if(arguments.length===0){this.rtype=new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0);this.elem=HN.nil;this.dir=0;return;}this.rtype=rtype_;this.elem=elem_;this.dir=dir_;});CH=$pkg.imethod=$newType(0,$kindStruct,"reflect.imethod",true,"reflect",false,function(name_,typ_){this.$val=this;if(arguments.length===0){this.name=0;this.typ=0;return;}this.name=name_;this.typ=typ_;});CI=$pkg.interfaceType=$newType(0,$kindStruct,"reflect.interfaceType",true,"reflect",false,function(rtype_,pkgPath_,methods_){this.$val=this;if(arguments.length===0){this.rtype=new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0);this.pkgPath=new O.ptr(IL.nil);this.methods=IM.nil;return;}this.rtype=rtype_;this.pkgPath=pkgPath_;this.methods=methods_;});CJ=$pkg.mapType=$newType(0,$kindStruct,"reflect.mapType",true,"reflect",false,function(rtype_,key_,elem_,bucket_,hmap_,keysize_,indirectkey_,valuesize_,indirectvalue_,bucketsize_,reflexivekey_,needkeyupdate_){this.$val=this;if(arguments.length===0){this.rtype=new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0);this.key=HN.nil;this.elem=HN.nil;this.bucket=HN.nil;this.hmap=HN.nil;this.keysize=0;this.indirectkey=0;this.valuesize=0;this.indirectvalue=0;this.bucketsize=0;this.reflexivekey=false;this.needkeyupdate=false;return;}this.rtype=rtype_;this.key=key_;this.elem=elem_;this.bucket=bucket_;this.hmap=hmap_;this.keysize=keysize_;this.indirectkey=indirectkey_;this.valuesize=valuesize_;this.indirectvalue=indirectvalue_;this.bucketsize=bucketsize_;this.reflexivekey=reflexivekey_;this.needkeyupdate=needkeyupdate_;});CK=$pkg.ptrType=$newType(0,$kindStruct,"reflect.ptrType",true,"reflect",false,function(rtype_,elem_){this.$val=this;if(arguments.length===0){this.rtype=new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0);this.elem=HN.nil;return;}this.rtype=rtype_;this.elem=elem_;});CL=$pkg.sliceType=$newType(0,$kindStruct,"reflect.sliceType",true,"reflect",false,function(rtype_,elem_){this.$val=this;if(arguments.length===0){this.rtype=new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0);this.elem=HN.nil;return;}this.rtype=rtype_;this.elem=elem_;});CM=$pkg.structField=$newType(0,$kindStruct,"reflect.structField",true,"reflect",false,function(name_,typ_,offset_){this.$val=this;if(arguments.length===0){this.name=new O.ptr(IL.nil);this.typ=HN.nil;this.offset=0;return;}this.name=name_;this.typ=typ_;this.offset=offset_;});CN=$pkg.structType=$newType(0,$kindStruct,"reflect.structType",true,"reflect",false,function(rtype_,pkgPath_,fields_){this.$val=this;if(arguments.length===0){this.rtype=new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0);this.pkgPath=new O.ptr(IL.nil);this.fields=IN.nil;return;}this.rtype=rtype_;this.pkgPath=pkgPath_;this.fields=fields_;});CP=$pkg.Method=$newType(0,$kindStruct,"reflect.Method",true,"reflect",true,function(Name_,PkgPath_,Type_,Func_,Index_){this.$val=this;if(arguments.length===0){this.Name="";this.PkgPath="";this.Type=$ifaceNil;this.Func=new EZ.ptr(HN.nil,0,0);this.Index=0;return;}this.Name=Name_;this.PkgPath=PkgPath_;this.Type=Type_;this.Func=Func_;this.Index=Index_;});CY=$pkg.nameOff=$newType(4,$kindInt32,"reflect.nameOff",true,"reflect",false,null);CZ=$pkg.typeOff=$newType(4,$kindInt32,"reflect.typeOff",true,"reflect",false,null);DA=$pkg.textOff=$newType(4,$kindInt32,"reflect.textOff",true,"reflect",false,null);DE=$pkg.StructField=$newType(0,$kindStruct,"reflect.StructField",true,"reflect",true,function(Name_,PkgPath_,Type_,Tag_,Offset_,Index_,Anonymous_){this.$val=this;if(arguments.length===0){this.Name="";this.PkgPath="";this.Type=$ifaceNil;this.Tag="";this.Offset=0;this.Index=IZ.nil;this.Anonymous=false;return;}this.Name=Name_;this.PkgPath=PkgPath_;this.Type=Type_;this.Tag=Tag_;this.Offset=Offset_;this.Index=Index_;this.Anonymous=Anonymous_;});DF=$pkg.StructTag=$newType(8,$kindString,"reflect.StructTag",true,"reflect",true,null);DG=$pkg.fieldScan=$newType(0,$kindStruct,"reflect.fieldScan",true,"reflect",false,function(typ_,index_){this.$val=this;if(arguments.length===0){this.typ=JB.nil;this.index=IZ.nil;return;}this.typ=typ_;this.index=index_;});EZ=$pkg.Value=$newType(0,$kindStruct,"reflect.Value",true,"reflect",true,function(typ_,ptr_,flag_){this.$val=this;if(arguments.length===0){this.typ=HN.nil;this.ptr=0;this.flag=0;return;}this.typ=typ_;this.ptr=ptr_;this.flag=flag_;});FA=$pkg.flag=$newType(4,$kindUintptr,"reflect.flag",true,"reflect",false,null);FD=$pkg.ValueError=$newType(0,$kindStruct,"reflect.ValueError",true,"reflect",true,function(Method_,Kind_){this.$val=this;if(arguments.length===0){this.Method="";this.Kind=0;return;}this.Method=Method_;this.Kind=Kind_;});HM=$sliceType(O);HN=$ptrType(CB);HO=$sliceType(HN);HP=$sliceType(CD);HQ=$mapType(HN,HP);HR=$structType("reflect",[{prop:"RWMutex",name:"",exported:true,typ:E.RWMutex,tag:""},{prop:"m",name:"m",exported:false,typ:HQ,tag:""}]);IG=$sliceType($emptyInterface);IH=$ptrType(C.Object);II=$funcType([IG],[IH],true);IJ=$sliceType($String);IK=$ptrType(CC);IL=$ptrType($Uint8);IM=$sliceType(CH);IN=$sliceType(CM);IO=$ptrType(L);IP=$ptrType(P);IQ=$structType("reflect",[{prop:"str",name:"str",exported:false,typ:$String,tag:""}]);IR=$sliceType(IH);IS=$sliceType(EZ);IT=$sliceType(BY);IU=$sliceType(IR);IX=$ptrType(CI);IY=$ptrType(CH);IZ=$sliceType($Int);JA=$sliceType(DG);JB=$ptrType(CN);JC=$sliceType($Uint8);JN=$ptrType($UnsafePointer);JP=$sliceType($Int32);JQ=$ptrType(N);JS=$funcType([$String],[$Bool],false);JT=$funcType([$UnsafePointer,$Uintptr],[$Uintptr],false);JU=$funcType([$UnsafePointer,$UnsafePointer],[$Bool],false);KB=$arrayType($Uintptr,2);KC=$ptrType(FD);H=function(){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=(function(am){var $ptr,am;});$r=am((an=new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),new an.constructor.elem(an)));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=am((ao=new L.ptr(0,0,0,0,0,HP.nil),new ao.constructor.elem(ao)));$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=am((ap=new CD.ptr(0,0,0,0),new ap.constructor.elem(ap)));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=am((aq=new CF.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),HN.nil,HN.nil,0),new aq.constructor.elem(aq)));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=am((ar=new CG.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),HN.nil,0),new ar.constructor.elem(ar)));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=am((as=new N.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),0,0,HO.nil,HO.nil),new as.constructor.elem(as)));$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=am((at=new CI.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),new O.ptr(IL.nil),IM.nil),new at.constructor.elem(at)));$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=am((au=new CJ.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),HN.nil,HN.nil,HN.nil,HN.nil,0,0,0,0,0,false,false),new au.constructor.elem(au)));$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=am((av=new CK.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),HN.nil),new av.constructor.elem(av)));$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=am((aw=new CL.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),HN.nil),new aw.constructor.elem(aw)));$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=am((ax=new CN.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),new O.ptr(IL.nil),IN.nil),new ax.constructor.elem(ax)));$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=am((ay=new CH.ptr(0,0),new ay.constructor.elem(ay)));$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=am((az=new CM.ptr(new O.ptr(IL.nil),HN.nil,0),new az.constructor.elem(az)));$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}G=true;FM=$assertType(AB(new $Uint8(0)),HN);$s=-1;return;}return;}if($f===undefined){$f={$blk:H};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.$s=$s;$f.$r=$r;return $f;};I=function(am){var $ptr,am;return am.jsType;};J=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu;if(am.reflectType===undefined){an=new CB.ptr((($parseInt(am.size)>>0)>>>0),0,0,0,0,0,(($parseInt(am.kind)>>0)<<24>>>24),IK.nil,IL.nil,T($clone(R(W(am.string),"","",!!(am.exported)),O)),0);an.jsType=am;am.reflectType=an;ao=$methodSet(am);if(!(($parseInt(ao.length)===0))||!!(am.named)){an.tflag=(an.tflag|(1))>>>0;if(!!(am.named)){an.tflag=(an.tflag|(4))>>>0;}ap=$makeSlice(HP,$parseInt(ao.length));aq=ap;ar=0;while(true){if(!(ar<aq.$length)){break;}as=ar;at=ao[as];CD.copy(((as<0||as>=ap.$length)?($throwRuntimeError("index out of range"),undefined):ap.$array[ap.$offset+as]),new CD.ptr(T($clone(R(W(at.name),"","",W(at.pkg)===""),O)),V(J(at.typ)),0,0));ar++;}au=new L.ptr(T($clone(R(W(am.pkg),"","",false),O)),($parseInt(ao.length)<<16>>>16),0,0,0,ap);av=an;(M||$throwRuntimeError("assignment to entry in nil map"))[HN.keyFor(av)]={k:av,v:au};au.jsType=am;}aw=an.Kind();if(aw===(17)){K(an,new CF.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),J(am.elem),HN.nil,(($parseInt(am.len)>>0)>>>0)));}else if(aw===(18)){ax=3;if(!!(am.sendOnly)){ax=2;}if(!!(am.recvOnly)){ax=1;}K(an,new CG.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),J(am.elem),(ax>>>0)));}else if(aw===(19)){ay=am.params;az=$makeSlice(HO,$parseInt(ay.length));ba=az;bb=0;while(true){if(!(bb<ba.$length)){break;}bc=bb;((bc<0||bc>=az.$length)?($throwRuntimeError("index out of range"),undefined):az.$array[az.$offset+bc]=J(ay[bc]));bb++;}bd=am.results;be=$makeSlice(HO,$parseInt(bd.length));bf=be;bg=0;while(true){if(!(bg<bf.$length)){break;}bh=bg;((bh<0||bh>=be.$length)?($throwRuntimeError("index out of range"),undefined):be.$array[be.$offset+bh]=J(bd[bh]));bg++;}bi=($parseInt(bd.length)<<16>>>16);if(!!(am.variadic)){bi=(bi|(32768))>>>0;}K(an,new N.ptr($clone(an,CB),($parseInt(ay.length)<<16>>>16),bi,az,be));}else if(aw===(20)){bj=am.methods;bk=$makeSlice(IM,$parseInt(bj.length));bl=bk;bm=0;while(true){if(!(bm<bl.$length)){break;}bn=bm;bo=bj[bn];CH.copy(((bn<0||bn>=bk.$length)?($throwRuntimeError("index out of range"),undefined):bk.$array[bk.$offset+bn]),new CH.ptr(T($clone(R(W(bo.name),"","",W(bo.pkg)===""),O)),V(J(bo.typ))));bm++;}K(an,new CI.ptr($clone(an,CB),new O.ptr(IL.nil),bk));}else if(aw===(21)){K(an,new CJ.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),J(am.key),J(am.elem),HN.nil,HN.nil,0,0,0,0,0,false,false));}else if(aw===(22)){K(an,new CK.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),J(am.elem)));}else if(aw===(23)){K(an,new CL.ptr(new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0),J(am.elem)));}else if(aw===(25)){bp=am.fields;bq=$makeSlice(IN,$parseInt(bp.length));br=bq;bs=0;while(true){if(!(bs<br.$length)){break;}bt=bs;bu=bp[bt];CM.copy(((bt<0||bt>=bq.$length)?($throwRuntimeError("index out of range"),undefined):bq.$array[bq.$offset+bt]),new CM.ptr($clone(R(W(bu.name),W(bu.tag),"",!!(bu.exported)),O),J(bu.typ),(bt>>>0)));bs++;}K(an,new CN.ptr($clone(an,CB),$clone(R(W(am.pkgPath),"","",false),O),bq));}}return am.reflectType;};K=function(am,an){var $ptr,am,an;am.kindType=an;an.rtype=am;};L.ptr.prototype.methods=function(){var $ptr,am;am=this;return am._methods;};L.prototype.methods=function(){return this.$val.methods();};CB.ptr.prototype.uncommon=function(){var $ptr,am,an;am=this;return(an=M[HN.keyFor(am)],an!==undefined?an.v:IO.nil);};CB.prototype.uncommon=function(){return this.$val.uncommon();};N.ptr.prototype.in$=function(){var $ptr,am;am=this;return am._in;};N.prototype.in$=function(){return this.$val.in$();};N.ptr.prototype.out=function(){var $ptr,am;am=this;return am._out;};N.prototype.out=function(){return this.$val.out();};O.ptr.prototype.name=function(){var $ptr,am,an,ao;am="";an=this;am=(ao=Q[IL.keyFor(an.bytes)],ao!==undefined?ao.v:IP.nil).name;return am;};O.prototype.name=function(){return this.$val.name();};O.ptr.prototype.tag=function(){var $ptr,am,an,ao;am="";an=this;am=(ao=Q[IL.keyFor(an.bytes)],ao!==undefined?ao.v:IP.nil).tag;return am;};O.prototype.tag=function(){return this.$val.tag();};O.ptr.prototype.pkgPath=function(){var $ptr,am,an;am=this;return(an=Q[IL.keyFor(am.bytes)],an!==undefined?an.v:IP.nil).pkgPath;};O.prototype.pkgPath=function(){return this.$val.pkgPath();};O.ptr.prototype.isExported=function(){var $ptr,am,an;am=this;return(an=Q[IL.keyFor(am.bytes)],an!==undefined?an.v:IP.nil).exported;};O.prototype.isExported=function(){return this.$val.isExported();};R=function(am,an,ao,ap){var $ptr,am,an,ao,ap,aq,ar;aq=$newDataPointer(0,IL);ar=aq;(Q||$throwRuntimeError("assignment to entry in nil map"))[IL.keyFor(ar)]={k:ar,v:new P.ptr(am,an,ao,ap)};return new O.ptr(aq);};CB.ptr.prototype.nameOff=function(am){var $ptr,am,an,ao;an=this;return(ao=(am>>0),((ao<0||ao>=S.$length)?($throwRuntimeError("index out of range"),undefined):S.$array[S.$offset+ao]));};CB.prototype.nameOff=function(am){return this.$val.nameOff(am);};T=function(am){var $ptr,am,an;an=S.$length;S=$append(S,am);return(an>>0);};CB.ptr.prototype.typeOff=function(am){var $ptr,am,an,ao;an=this;return(ao=(am>>0),((ao<0||ao>=U.$length)?($throwRuntimeError("index out of range"),undefined):U.$array[U.$offset+ao]));};CB.prototype.typeOff=function(am){return this.$val.typeOff(am);};V=function(am){var $ptr,am,an;an=U.$length;U=$append(U,am);return(an>>0);};W=function(am){var $ptr,am,an;an=new IQ.ptr("");an.str=am;return an.str;};X=function(am){var $ptr,am;return!!(I(am).wrapped);};Y=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar;ap=I(ao).fields;aq=0;while(true){if(!(aq<$parseInt(ap.length))){break;}ar=$internalize(ap[aq].prop,$String);am[$externalize(ar,$String)]=an[$externalize(ar,$String)];aq=aq+(1)>>0;}};Z=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ap=am.common();$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=ap;at=am.Kind();$s=6;case 6:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}if(at===17){as=true;$s=5;continue s;}au=am.Kind();$s=7;case 7:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}as=au===25;case 5:if(as){ar=true;$s=4;continue s;}av=am.Kind();$s=8;case 8:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}ar=av===22;case 4:if(ar){$s=2;continue;}$s=3;continue;case 2:aw=am.Kind();$s=9;case 9:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}$s=-1;return new EZ.ptr(aq,an,(ao|(aw>>>0))>>>0);case 3:ax=am.Kind();$s=10;case 10:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}$s=-1;return new EZ.ptr(aq,$newDataPointer(an,I(aq.ptrTo())),(((ao|(ax>>>0))>>>0)|128)>>>0);}return;}if($f===undefined){$f={$blk:Z};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.$s=$s;$f.$r=$r;return $f;};AA=function(am,an,ao){var $ptr,am,an,ao,ap,aq,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=[am];ap=am[0].Kind();$s=3;case 3:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}if(!((ap===23))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.MakeSlice of non-slice type"));case 2:if(an<0){$panic(new $String("reflect.MakeSlice: negative len"));}if(ao<0){$panic(new $String("reflect.MakeSlice: negative cap"));}if(an>ao){$panic(new $String("reflect.MakeSlice: len > cap"));}aq=Z(am[0],$makeSlice(I(am[0]),an,ao,(function(am){return function $b(){var $ptr,aq,ar,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aq=$f.aq;ar=$f.ar;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aq=am[0].Elem();$s=1;case 1:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=I(aq);$s=2;case 2:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}$s=-1;return ar.zero();}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.aq=aq;$f.ar=ar;$f.$s=$s;$f.$r=$r;return $f;};})(am)),0);$s=4;case 4:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}$s=-1;return aq;}return;}if($f===undefined){$f={$blk:AA};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.$s=$s;$f.$r=$r;return $f;};$pkg.MakeSlice=AA;AB=function(am){var $ptr,am;if(!G){return new CB.ptr(0,0,0,0,0,0,0,IK.nil,IL.nil,0,0);}if($interfaceIsEqual(am,$ifaceNil)){return $ifaceNil;}return J(am.constructor);};$pkg.TypeOf=AB;AC=function(am){var $ptr,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if($interfaceIsEqual(am,$ifaceNil)){$s=-1;return new EZ.ptr(HN.nil,0,0);}an=Z(J(am.constructor),am.$val,0);$s=1;case 1:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}$s=-1;return an;}return;}if($f===undefined){$f={$blk:AC};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.$s=$s;$f.$r=$r;return $f;};$pkg.ValueOf=AC;AF=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if(!(ao)){ap=false;$s=3;continue s;}if(am.$length===0){aq=true;$s=4;continue s;}as=(ar=am.$length-1>>0,((ar<0||ar>=am.$length)?($throwRuntimeError("index out of range"),undefined):am.$array[am.$offset+ar])).Kind();$s=5;case 5:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}aq=!((as===23));case 4:ap=aq;case 3:if(ap){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.FuncOf: last arg of variadic func must be slice"));case 2:at=$makeSlice(IR,am.$length);au=am;av=0;while(true){if(!(av<au.$length)){break;}aw=av;ax=((av<0||av>=au.$length)?($throwRuntimeError("index out of range"),undefined):au.$array[au.$offset+av]);((aw<0||aw>=at.$length)?($throwRuntimeError("index out of range"),undefined):at.$array[at.$offset+aw]=I(ax));av++;}ay=$makeSlice(IR,an.$length);az=an;ba=0;while(true){if(!(ba<az.$length)){break;}bb=ba;bc=((ba<0||ba>=az.$length)?($throwRuntimeError("index out of range"),undefined):az.$array[az.$offset+ba]);((bb<0||bb>=ay.$length)?($throwRuntimeError("index out of range"),undefined):ay.$array[ay.$offset+bb]=I(bc));ba++;}$s=-1;return J($funcType($externalize(at,IR),$externalize(ay,IR),$externalize(ao,$Bool)));}return;}if($f===undefined){$f={$blk:AF};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.$s=$s;$f.$r=$r;return $f;};$pkg.FuncOf=AF;CB.ptr.prototype.ptrTo=function(){var $ptr,am;am=this;return J($ptrType(I(am)));};CB.prototype.ptrTo=function(){return this.$val.ptrTo();};AH=function(am){var $ptr,am;return J($sliceType(I(am)));};$pkg.SliceOf=AH;AI=function(am){var $ptr,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=Z(am,I(am).zero(),0);$s=1;case 1:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}$s=-1;return an;}return;}if($f===undefined){$f={$blk:AI};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Zero=AI;AJ=function(am){var $ptr,am,an;an=am.Kind();if(an===(25)){return new(I(am).ptr)();}else if(an===(17)){return I(am).zero();}else{return $newDataPointer(I(am).zero(),I(am.ptrTo()));}};AK=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ap=ao.common();$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=ap;ar=AJ(aq);as=aq.Kind();if(as===(3)){ar.$set((an.$low<<24>>24));}else if(as===(4)){ar.$set((an.$low<<16>>16));}else if((as===(2))||(as===(5))){ar.$set((an.$low>>0));}else if(as===(6)){ar.$set(new $Int64(an.$high,an.$low));}else if(as===(8)){ar.$set((an.$low<<24>>>24));}else if(as===(9)){ar.$set((an.$low<<16>>>16));}else if((as===(7))||(as===(10))||(as===(12))){ar.$set((an.$low>>>0));}else if(as===(11)){ar.$set(an);}$s=-1;return new EZ.ptr(aq,ar,(((am|128)>>>0)|(aq.Kind()>>>0))>>>0);}return;}if($f===undefined){$f={$blk:AK};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};AM=function(am,an,ao){var $ptr,am,an,ao;an.$set(ao.$get());};AP=function(am){var $ptr,am,an;an=0;an=new($global.Object)();return an;};AQ=function(am,an){var $ptr,am,an,ao,ap;ao=an;if(!(ao.$get===undefined)){ao=ao.$get();}ap=$internalize(I(am.Key()).keyFor(ao),$String);return[ao,ap];};AR=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar;ap=AQ(am,ao);aq=ap[1];ar=an[$externalize(aq,$String)];if(ar===undefined){return 0;}return $newDataPointer(ar.v,I(DI(am.Elem())));};AS=function(am,an,ao,ap){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aq=AQ(am,ao);ar=aq[0];as=aq[1];at=ap.$get();au=am.Elem();av=au.Kind();$s=3;case 3:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}if(av===25){$s=1;continue;}$s=2;continue;case 1:aw=I(au).zero();Y(aw,at,au);at=aw;case 2:ax=new($global.Object)();ax.k=ar;ax.v=at;an[$externalize(as,$String)]=ax;$s=-1;return;}return;}if($f===undefined){$f={$blk:AS};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.$s=$s;$f.$r=$r;return $f;};AT=function(am,an,ao){var $ptr,am,an,ao,ap,aq;ap=AQ(am,ao);aq=ap[1];delete an[$externalize(aq,$String)];};AV=function(am,an){var $ptr,am,an;return new AU.ptr(am,an,$keys(an),0);};AW=function(am){var $ptr,am,an,ao,ap,aq,ar,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=am;ao=an.keys[an.i];ap=an.t.Key();$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=DI(ap);$s=2;case 2:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=I(aq);$s=3;case 3:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}$s=-1;return $newDataPointer(an.m[$externalize($internalize(ao,$String),$String)].k,ar);}return;}if($f===undefined){$f={$blk:AW};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.$s=$s;$f.$r=$r;return $f;};AX=function(am){var $ptr,am,an;an=am;an.i=an.i+(1)>>0;};AY=function(am){var $ptr,am;return $parseInt($keys(am).length);};AZ=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=$clone(am,EZ).object();if(ao===I(am.typ).nil){$s=1;continue;}$s=2;continue;case 1:ap=Z(an,I(an).nil,am.flag);$s=3;case 3:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}$s=-1;return ap;case 2:aq=null;ar=an.Kind();$s=5;case 5:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}as=ar;at=as;if(at===(23)){$s=6;continue;}if(at===(22)){$s=7;continue;}if(at===(25)){$s=8;continue;}if((at===(17))||(at===(1))||(at===(18))||(at===(19))||(at===(20))||(at===(21))||(at===(24))){$s=9;continue;}$s=10;continue;case 6:au=new(I(an))(ao.$array);au.$offset=ao.$offset;au.$length=ao.$length;au.$capacity=ao.$capacity;aq=$newDataPointer(au,I(DI(an)));$s=11;continue;case 7:av=an.Elem();$s=14;case 14:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}aw=av.Kind();$s=15;case 15:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}if(aw===25){$s=12;continue;}$s=13;continue;case 12:ax=an.Elem();$s=18;case 18:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}if($interfaceIsEqual(ax,am.typ.Elem())){$s=16;continue;}$s=17;continue;case 16:aq=ao;$s=4;continue;case 17:aq=new(I(an))();ay=aq;az=ao;ba=an.Elem();$s=19;case 19:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}bb=ba;$r=Y(ay,az,bb);$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=4;continue;case 13:aq=new(I(an))(ao.$get,ao.$set);$s=11;continue;case 8:aq=new(I(an).ptr)();Y(aq,ao,an);$s=11;continue;case 9:aq=am.ptr;$s=11;continue;case 10:$panic(new FD.ptr("reflect.Convert",as));case 11:case 4:bc=an.common();$s=21;case 21:if($c){$c=false;bc=bc.$blk();}if(bc&&bc.$blk!==undefined){break s;}bd=an.Kind();$s=22;case 22:if($c){$c=false;bd=bd.$blk();}if(bd&&bd.$blk!==undefined){break s;}$s=-1;return new EZ.ptr(bc,aq,(((am.flag&224)>>>0)|(bd>>>0))>>>0);}return;}if($f===undefined){$f={$blk:AZ};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.$s=$s;$f.$r=$r;return $f;};BA=function(am,an){var $ptr,am,an,ao,ap,aq,ar,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=new FA(am.flag).kind();if(!((ao===17))&&!((ao===23))){$panic(new FD.ptr("reflect.Copy",ao));}if(ao===17){new FA(am.flag).mustBeAssignable();}new FA(am.flag).mustBeExported();ap=new FA(an.flag).kind();if(!((ap===17))&&!((ap===23))){$panic(new FD.ptr("reflect.Copy",ap));}new FA(an.flag).mustBeExported();$r=FS("reflect.Copy",am.typ.Elem(),an.typ.Elem());$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}aq=$clone(am,EZ).object();if(ao===17){aq=new(I(AH(am.typ.Elem())))(aq);}ar=$clone(an,EZ).object();if(ap===17){ar=new(I(AH(an.typ.Elem())))(ar);}$s=-1;return $parseInt($copySlice(aq,ar))>>0;}return;}if($f===undefined){$f={$blk:BA};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Copy=BA;BB=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az;ap=HN.nil;aq=HN.nil;ar=0;as="";if(an.typ.Kind()===20){at=an.typ.kindType;if(ao<0||ao>=at.methods.$length){$panic(new $String("reflect: internal error: invalid method index"));}av=(au=at.methods,((ao<0||ao>=au.$length)?($throwRuntimeError("index out of range"),undefined):au.$array[au.$offset+ao]));if(!$clone(at.rtype.nameOff(av.name),O).isExported()){$panic(new $String("reflect: "+am+" of unexported method"));}aq=at.rtype.typeOff(av.typ);as=$clone(at.rtype.nameOff(av.name),O).name();}else{aw=an.typ.uncommon();if(aw===IO.nil||(ao>>>0)>=(aw.mcount>>>0)){$panic(new $String("reflect: internal error: invalid method index"));}ay=$clone((ax=aw.methods(),((ao<0||ao>=ax.$length)?($throwRuntimeError("index out of range"),undefined):ax.$array[ax.$offset+ao])),CD);if(!$clone(an.typ.nameOff(ay.name),O).isExported()){$panic(new $String("reflect: "+am+" of unexported method"));}aq=an.typ.typeOff(ay.mtyp);as=$internalize($methodSet(I(an.typ))[ao].prop,$String);}az=$clone(an,EZ).object();if(X(an.typ)){az=new(I(an.typ))(az);}ar=az[$externalize(as,$String)];return[ap,aq,ar];};BC=function(am,an){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if(am.flag===0){$panic(new FD.ptr("reflect.Value.Interface",0));}if(an&&!((((am.flag&96)>>>0)===0))){$panic(new $String("reflect.Value.Interface: cannot return value obtained from unexported field or method"));}if(!((((am.flag&512)>>>0)===0))){$s=1;continue;}$s=2;continue;case 1:ao=BF("Interface",$clone(am,EZ));$s=3;case 3:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}am=ao;case 2:if(X(am.typ)){$s=-1;return new(I(am.typ))($clone(am,EZ).object());}$s=-1;return $clone(am,EZ).object();}return;}if($f===undefined){$f={$blk:BC};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};BD=function(am,an,ao){var $ptr,am,an,ao;ao.$set(an);};BE=function(){var $ptr;return"?FIXME?";};BF=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=[ao];ap=[ap];if(((an.flag&512)>>>0)===0){$panic(new $String("reflect: internal error: invalid use of makePartialFunc"));}aq=BB(am,$clone(an,EZ),(an.flag>>0)>>10>>0);ao[0]=aq[2];ap[0]=$clone(an,EZ).object();if(X(an.typ)){ap[0]=new(I(an.typ))(ap[0]);}ar=C.MakeFunc((function(ao,ap){return function(ar,as){var $ptr,ar,as;return new $jsObjectPtr(ao[0].apply(ap[0],$externalize(as,IR)));};})(ao,ap));as=$clone(an,EZ).Type().common();$s=1;case 1:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}$s=-1;return new EZ.ptr(as,ar,(((an.flag&96)>>>0)|19)>>>0);}return;}if($f===undefined){$f={$blk:BF};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};CB.ptr.prototype.pointers=function(){var $ptr,am,an;am=this;an=am.Kind();if((an===(22))||(an===(21))||(an===(18))||(an===(19))||(an===(25))||(an===(17))){return true;}else{return false;}};CB.prototype.pointers=function(){return this.$val.pointers();};CB.ptr.prototype.Comparable=function(){var $ptr,am,an,ao,ap,aq,ar,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=this;an=am.Kind();if((an===(19))||(an===(23))||(an===(21))){$s=2;continue;}if(an===(17)){$s=3;continue;}if(an===(25)){$s=4;continue;}$s=5;continue;case 2:$s=-1;return false;case 3:ao=am.Elem().Comparable();$s=6;case 6:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;case 4:ap=0;case 7:if(!(ap<am.NumField())){$s=8;continue;}aq=am.Field(ap);$s=11;case 11:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=aq.Type.Comparable();$s=12;case 12:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}if(!ar){$s=9;continue;}$s=10;continue;case 9:$s=-1;return false;case 10:ap=ap+(1)>>0;$s=7;continue;case 8:case 5:case 1:$s=-1;return true;}return;}if($f===undefined){$f={$blk:CB.ptr.prototype.Comparable};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.$s=$s;$f.$r=$r;return $f;};CB.prototype.Comparable=function(){return this.$val.Comparable();};CB.ptr.prototype.Method=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;bf=$f.bf;bg=$f.bg;bh=$f.bh;bi=$f.bi;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=[an];ao=new CP.ptr("","",$ifaceNil,new EZ.ptr(HN.nil,0,0),0);ap=this;if(ap.Kind()===20){aq=ap.kindType;CP.copy(ao,aq.Method(am));$s=-1;return ao;}ar=ap.exportedMethods();$s=1;case 1:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}as=ar;if(am<0||am>=as.$length){$panic(new $String("reflect: Method index out of range"));}at=$clone(((am<0||am>=as.$length)?($throwRuntimeError("index out of range"),undefined):as.$array[as.$offset+am]),CD);au=$clone(ap.nameOff(at.name),O);ao.Name=$clone(au,O).name();av=19;aw=ap.typeOff(at.mtyp);ax=aw.kindType;ay=$makeSlice(IT,0,(1+ax.in$().$length>>0));ay=$append(ay,ap);az=ax.in$();ba=0;while(true){if(!(ba<az.$length)){break;}bb=((ba<0||ba>=az.$length)?($throwRuntimeError("index out of range"),undefined):az.$array[az.$offset+ba]);ay=$append(ay,bb);ba++;}bc=$makeSlice(IT,0,ax.out().$length);bd=ax.out();be=0;while(true){if(!(be<bd.$length)){break;}bf=((be<0||be>=bd.$length)?($throwRuntimeError("index out of range"),undefined):bd.$array[bd.$offset+be]);bc=$append(bc,bf);be++;}bg=AF(ay,bc,ax.rtype.IsVariadic());$s=2;case 2:if($c){$c=false;bg=bg.$blk();}if(bg&&bg.$blk!==undefined){break s;}bh=bg;ao.Type=bh;an[0]=$internalize($methodSet(ap.jsType)[am].prop,$String);bi=C.MakeFunc((function(an){return function(bi,bj){var $ptr,bi,bj,bk;bk=(0>=bj.$length?($throwRuntimeError("index out of range"),undefined):bj.$array[bj.$offset+0]);return new $jsObjectPtr(bk[$externalize(an[0],$String)].apply(bk,$externalize($subslice(bj,1),IR)));};})(an));ao.Func=new EZ.ptr($assertType(bh,HN),bi,av);ao.Index=am;CP.copy(ao,ao);$s=-1;return ao;}return;}if($f===undefined){$f={$blk:CB.ptr.prototype.Method};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$f.bf=bf;$f.bg=bg;$f.bh=bh;$f.bi=bi;$f.$s=$s;$f.$r=$r;return $f;};CB.prototype.Method=function(am){return this.$val.Method(am);};EZ.ptr.prototype.object=function(){var $ptr,am,an,ao,ap;am=this;if((am.typ.Kind()===17)||(am.typ.Kind()===25)){return am.ptr;}if(!((((am.flag&128)>>>0)===0))){an=am.ptr.$get();if(!(an===$ifaceNil)&&!(an.constructor===I(am.typ))){switch(0){default:ao=am.typ.Kind();if((ao===(11))||(ao===(6))){an=new(I(am.typ))(an.$high,an.$low);}else if((ao===(15))||(ao===(16))){an=new(I(am.typ))(an.$real,an.$imag);}else if(ao===(23)){if(an===an.constructor.nil){an=I(am.typ).nil;break;}ap=new(I(am.typ))(an.$array);ap.$offset=an.$offset;ap.$length=an.$length;ap.$capacity=an.$capacity;an=ap;}}}return an;}return am.ptr;};EZ.prototype.object=function(){return this.$val.object();};EZ.ptr.prototype.call=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;bf=$f.bf;bg=$f.bg;bh=$f.bh;bi=$f.bi;bj=$f.bj;bk=$f.bk;bl=$f.bl;bm=$f.bm;bn=$f.bn;bo=$f.bo;bp=$f.bp;bq=$f.bq;br=$f.br;bs=$f.bs;bt=$f.bt;bu=$f.bu;bv=$f.bv;bw=$f.bw;bx=$f.bx;by=$f.by;bz=$f.bz;ca=$f.ca;cb=$f.cb;cc=$f.cc;cd=$f.cd;ce=$f.ce;cf=$f.cf;cg=$f.cg;ch=$f.ch;ci=$f.ci;cj=$f.cj;ck=$f.ck;cl=$f.cl;cm=$f.cm;cn=$f.cn;co=$f.co;cp=$f.cp;cq=$f.cq;cr=$f.cr;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=this;ap=HN.nil;aq=0;ar=null;if(!((((ao.flag&512)>>>0)===0))){as=BB(am,$clone(ao,EZ),(ao.flag>>0)>>10>>0);ap=as[1];aq=as[2];ar=$clone(ao,EZ).object();if(X(ao.typ)){ar=new(I(ao.typ))(ar);}}else{ap=ao.typ;aq=$clone(ao,EZ).object();ar=undefined;}if(aq===0){$panic(new $String("reflect.Value.Call: call of nil function"));}at=am==="CallSlice";au=ap.NumIn();if(at){if(!ap.IsVariadic()){$panic(new $String("reflect: CallSlice of non-variadic function"));}if(an.$length<au){$panic(new $String("reflect: CallSlice with too few input arguments"));}if(an.$length>au){$panic(new $String("reflect: CallSlice with too many input arguments"));}}else{if(ap.IsVariadic()){au=au-(1)>>0;}if(an.$length<au){$panic(new $String("reflect: Call with too few input arguments"));}if(!ap.IsVariadic()&&an.$length>au){$panic(new $String("reflect: Call with too many input arguments"));}}av=an;aw=0;while(true){if(!(aw<av.$length)){break;}ax=((aw<0||aw>=av.$length)?($throwRuntimeError("index out of range"),undefined):av.$array[av.$offset+aw]);if($clone(ax,EZ).Kind()===0){$panic(new $String("reflect: "+am+" using zero Value argument"));}aw++;}ay=0;case 1:if(!(ay<au)){$s=2;continue;}az=$clone(((ay<0||ay>=an.$length)?($throwRuntimeError("index out of range"),undefined):an.$array[an.$offset+ay]),EZ).Type();ba=ap.In(ay);bb=az;bc=ba;bd=bb.AssignableTo(bc);$s=5;case 5:if($c){$c=false;bd=bd.$blk();}if(bd&&bd.$blk!==undefined){break s;}if(!bd){$s=3;continue;}$s=4;continue;case 3:be=bb.String();$s=6;case 6:if($c){$c=false;be=be.$blk();}if(be&&be.$blk!==undefined){break s;}bf=bc.String();$s=7;case 7:if($c){$c=false;bf=bf.$blk();}if(bf&&bf.$blk!==undefined){break s;}$panic(new $String("reflect: "+am+" using "+be+" as type "+bf));case 4:ay=ay+(1)>>0;$s=1;continue;case 2:if(!at&&ap.IsVariadic()){$s=8;continue;}$s=9;continue;case 8:bg=an.$length-au>>0;bh=AA(ap.In(au),bg,bg);$s=10;case 10:if($c){$c=false;bh=bh.$blk();}if(bh&&bh.$blk!==undefined){break s;}bi=bh;bj=ap.In(au).Elem();$s=11;case 11:if($c){$c=false;bj=bj.$blk();}if(bj&&bj.$blk!==undefined){break s;}bk=bj;bl=0;case 12:if(!(bl<bg)){$s=13;continue;}bn=(bm=au+bl>>0,((bm<0||bm>=an.$length)?($throwRuntimeError("index out of range"),undefined):an.$array[an.$offset+bm]));bo=$clone(bn,EZ).Type();bp=bo.AssignableTo(bk);$s=16;case 16:if($c){$c=false;bp=bp.$blk();}if(bp&&bp.$blk!==undefined){break s;}if(!bp){$s=14;continue;}$s=15;continue;case 14:bq=bo.String();$s=17;case 17:if($c){$c=false;bq=bq.$blk();}if(bq&&bq.$blk!==undefined){break s;}br=bk.String();$s=18;case 18:if($c){$c=false;br=br.$blk();}if(br&&br.$blk!==undefined){break s;}$panic(new $String("reflect: cannot use "+bq+" as type "+br+" in "+am));case 15:bs=$clone(bi,EZ).Index(bl);$s=19;case 19:if($c){$c=false;bs=bs.$blk();}if(bs&&bs.$blk!==undefined){break s;}$r=$clone(bs,EZ).Set($clone(bn,EZ));$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}bl=bl+(1)>>0;$s=12;continue;case 13:bt=an;an=$makeSlice(IS,(au+1>>0));$copySlice($subslice(an,0,au),bt);((au<0||au>=an.$length)?($throwRuntimeError("index out of range"),undefined):an.$array[an.$offset+au]=bi);case 9:bu=an.$length;if(!((bu===ap.NumIn()))){$panic(new $String("reflect.Value.Call: wrong argument count"));}bv=ap.NumOut();bw=new($global.Array)(ap.NumIn());bx=an;by=0;case 21:if(!(by<bx.$length)){$s=22;continue;}bz=by;ca=((by<0||by>=bx.$length)?($throwRuntimeError("index out of range"),undefined):bx.$array[bx.$offset+by]);cb=ap.In(bz);cc=ap.In(bz).common();$s=23;case 23:if($c){$c=false;cc=cc.$blk();}if(cc&&cc.$blk!==undefined){break s;}cd=cc;ce=0;cf=$clone(ca,EZ).assignTo("reflect.Value.Call",cd,ce);$s=24;case 24:if($c){$c=false;cf=cf.$blk();}if(cf&&cf.$blk!==undefined){break s;}cg=$clone(cf,EZ).object();$s=25;case 25:if($c){$c=false;cg=cg.$blk();}if(cg&&cg.$blk!==undefined){break s;}ch=cg;ci=BJ(cb,ch);$s=26;case 26:if($c){$c=false;ci=ci.$blk();}if(ci&&ci.$blk!==undefined){break s;}bw[bz]=ci;by++;$s=21;continue;case 22:cj=BG(new IG([new $jsObjectPtr(aq),new $jsObjectPtr(ar),new $jsObjectPtr(bw)]));$s=27;case 27:if($c){$c=false;cj=cj.$blk();}if(cj&&cj.$blk!==undefined){break s;}ck=cj;cl=bv;if(cl===(0)){$s=29;continue;}if(cl===(1)){$s=30;continue;}$s=31;continue;case 29:$s=-1;return IS.nil;case 30:cm=Z(ap.Out(0),BI(ap.Out(0),ck),0);$s=33;case 33:if($c){$c=false;cm=cm.$blk();}if(cm&&cm.$blk!==undefined){break s;}$s=-1;return new IS([$clone(cm,EZ)]);case 31:cn=$makeSlice(IS,bv);co=cn;cp=0;case 34:if(!(cp<co.$length)){$s=35;continue;}cq=cp;cr=Z(ap.Out(cq),BI(ap.Out(cq),ck[cq]),0);$s=36;case 36:if($c){$c=false;cr=cr.$blk();}if(cr&&cr.$blk!==undefined){break s;}((cq<0||cq>=cn.$length)?($throwRuntimeError("index out of range"),undefined):cn.$array[cn.$offset+cq]=cr);cp++;$s=34;continue;case 35:$s=-1;return cn;case 32:case 28:$s=-1;return IS.nil;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.call};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$f.bf=bf;$f.bg=bg;$f.bh=bh;$f.bi=bi;$f.bj=bj;$f.bk=bk;$f.bl=bl;$f.bm=bm;$f.bn=bn;$f.bo=bo;$f.bp=bp;$f.bq=bq;$f.br=br;$f.bs=bs;$f.bt=bt;$f.bu=bu;$f.bv=bv;$f.bw=bw;$f.bx=bx;$f.by=by;$f.bz=bz;$f.ca=ca;$f.cb=cb;$f.cc=cc;$f.cd=cd;$f.ce=ce;$f.cf=cf;$f.cg=cg;$f.ch=ch;$f.ci=ci;$f.cj=cj;$f.ck=ck;$f.cl=cl;$f.cm=cm;$f.cn=cn;$f.co=co;$f.cp=cp;$f.cq=cq;$f.cr=cr;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.call=function(am,an){return this.$val.call(am,an);};EZ.ptr.prototype.Cap=function(){var $ptr,am,an,ao;am=this;an=new FA(am.flag).kind();ao=an;if(ao===(17)){return am.typ.Len();}else if((ao===(18))||(ao===(23))){return $parseInt($clone(am,EZ).object().$capacity)>>0;}$panic(new FD.ptr("reflect.Value.Cap",an));};EZ.prototype.Cap=function(){return this.$val.Cap();};BI=function(am,an){var $ptr,am,an;if($interfaceIsEqual(am,BH)){return new(I(BH))(an);}return an;};BJ=function(am,an){var $ptr,am,an;if($interfaceIsEqual(am,BH)){return an.object;}return an;};EZ.ptr.prototype.Elem=function(){var $ptr,am,an,ao,ap,aq,ar,as,at,au,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=this;an=new FA(am.flag).kind();ao=an;if(ao===(20)){$s=2;continue;}if(ao===(22)){$s=3;continue;}$s=4;continue;case 2:ap=$clone(am,EZ).object();if(ap===$ifaceNil){$s=-1;return new EZ.ptr(HN.nil,0,0);}aq=J(ap.constructor);ar=Z(aq,ap.$val,(am.flag&96)>>>0);$s=6;case 6:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}$s=-1;return ar;case 3:if($clone(am,EZ).IsNil()){$s=-1;return new EZ.ptr(HN.nil,0,0);}as=$clone(am,EZ).object();at=am.typ.kindType;au=(((((am.flag&96)>>>0)|128)>>>0)|256)>>>0;au=(au|((at.elem.Kind()>>>0)))>>>0;$s=-1;return new EZ.ptr(at.elem,BI(at.elem,as),au);case 4:$panic(new FD.ptr("reflect.Value.Elem",an));case 5:case 1:$s=-1;return new EZ.ptr(HN.nil,0,0);}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Elem};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Elem=function(){return this.$val.Elem();};EZ.ptr.prototype.Field=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=[an];ao=[ao];ap=[ap];aq=[aq];ar=this;if(!((new FA(ar.flag).kind()===25))){$panic(new FD.ptr("reflect.Value.Field",new FA(ar.flag).kind()));}as=ar.typ.kindType;if((am>>>0)>=(as.fields.$length>>>0)){$panic(new $String("reflect: Field index out of range"));}ao[0]=$internalize(I(ar.typ).fields[am].prop,$String);au=(at=as.fields,((am<0||am>=at.$length)?($throwRuntimeError("index out of range"),undefined):at.$array[at.$offset+am]));aq[0]=au.typ;av=(((ar.flag&416)>>>0)|(aq[0].Kind()>>>0))>>>0;if(!$clone(au.name,O).isExported()){if($clone(au.name,O).name()===""){av=(av|(64))>>>0;}else{av=(av|(32))>>>0;}}ax=$clone((aw=as.fields,((am<0||am>=aw.$length)?($throwRuntimeError("index out of range"),undefined):aw.$array[aw.$offset+am])).name,O).tag();if(!(ax==="")&&!((am===0))){$s=1;continue;}$s=2;continue;case 1:an[0]=BK(ax);if(!(an[0]==="")){$s=3;continue;}$s=4;continue;case 3:case 5:ay=[ay];az=$clone(ar,EZ).Field(0);$s=7;case 7:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}ar=az;if(ar.typ===BH){$s=8;continue;}$s=9;continue;case 8:ay[0]=$clone(ar,EZ).object().object;$s=-1;return new EZ.ptr(aq[0],new(I(DI(aq[0])))((function(an,ao,ap,aq,ay){return function(){var $ptr;return $internalize(ay[0][$externalize(an[0],$String)],I(aq[0]));};})(an,ao,ap,aq,ay),(function(an,ao,ap,aq,ay){return function(ba){var $ptr,ba;ay[0][$externalize(an[0],$String)]=$externalize(ba,I(aq[0]));};})(an,ao,ap,aq,ay)),av);case 9:if(ar.typ.Kind()===22){$s=10;continue;}$s=11;continue;case 10:ba=$clone(ar,EZ).Elem();$s=12;case 12:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}ar=ba;case 11:$s=5;continue;case 6:case 4:case 2:ap[0]=ar.ptr;if(!((((av&128)>>>0)===0))&&!((aq[0].Kind()===17))&&!((aq[0].Kind()===25))){$s=13;continue;}$s=14;continue;case 13:$s=-1;return new EZ.ptr(aq[0],new(I(DI(aq[0])))((function(an,ao,ap,aq){return function(){var $ptr;return BI(aq[0],ap[0][$externalize(ao[0],$String)]);};})(an,ao,ap,aq),(function(an,ao,ap,aq){return function(bb){var $ptr,bb;ap[0][$externalize(ao[0],$String)]=BJ(aq[0],bb);};})(an,ao,ap,aq)),av);case 14:bb=Z(aq[0],BI(aq[0],ap[0][$externalize(ao[0],$String)]),av);$s=15;case 15:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}$s=-1;return bb;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Field};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Field=function(am){return this.$val.Field(am);};BK=function(am){var $ptr,am,an,ao,ap,aq,ar;while(true){if(!(!(am===""))){break;}an=0;while(true){if(!(an<am.length&&(am.charCodeAt(an)===32))){break;}an=an+(1)>>0;}am=$substring(am,an);if(am===""){break;}an=0;while(true){if(!(an<am.length&&!((am.charCodeAt(an)===32))&&!((am.charCodeAt(an)===58))&&!((am.charCodeAt(an)===34)))){break;}an=an+(1)>>0;}if((an+1>>0)>=am.length||!((am.charCodeAt(an)===58))||!((am.charCodeAt((an+1>>0))===34))){break;}ao=$substring(am,0,an);am=$substring(am,(an+1>>0));an=1;while(true){if(!(an<am.length&&!((am.charCodeAt(an)===34)))){break;}if(am.charCodeAt(an)===92){an=an+(1)>>0;}an=an+(1)>>0;}if(an>=am.length){break;}ap=$substring(am,0,(an+1>>0));am=$substring(am,(an+1>>0));if(ao==="js"){aq=B.Unquote(ap);ar=aq[0];return ar;}}return"";};EZ.ptr.prototype.Index=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=[am];an=[an];ao=[ao];ap=[ap];aq=[aq];ar=[ar];as=this;at=new FA(as.flag).kind();au=at;if(au===(17)){$s=2;continue;}if(au===(23)){$s=3;continue;}if(au===(24)){$s=4;continue;}$s=5;continue;case 2:av=as.typ.kindType;if(am[0]<0||am[0]>(av.len>>0)){$panic(new $String("reflect: array index out of range"));}aq[0]=av.elem;aw=(as.flag&480)>>>0;aw=(aw|((aq[0].Kind()>>>0)))>>>0;ao[0]=as.ptr;if(!((((aw&128)>>>0)===0))&&!((aq[0].Kind()===17))&&!((aq[0].Kind()===25))){$s=7;continue;}$s=8;continue;case 7:$s=-1;return new EZ.ptr(aq[0],new(I(DI(aq[0])))((function(am,an,ao,ap,aq,ar){return function(){var $ptr;return BI(aq[0],ao[0][am[0]]);};})(am,an,ao,ap,aq,ar),(function(am,an,ao,ap,aq,ar){return function(ax){var $ptr,ax;ao[0][am[0]]=BJ(aq[0],ax);};})(am,an,ao,ap,aq,ar)),aw);case 8:ax=Z(aq[0],BI(aq[0],ao[0][am[0]]),aw);$s=9;case 9:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}$s=-1;return ax;case 3:ay=$clone(as,EZ).object();if(am[0]<0||am[0]>=($parseInt(ay.$length)>>0)){$panic(new $String("reflect: slice index out of range"));}az=as.typ.kindType;ar[0]=az.elem;ba=(384|((as.flag&96)>>>0))>>>0;ba=(ba|((ar[0].Kind()>>>0)))>>>0;am[0]=am[0]+(($parseInt(ay.$offset)>>0))>>0;an[0]=ay.$array;if(!((((ba&128)>>>0)===0))&&!((ar[0].Kind()===17))&&!((ar[0].Kind()===25))){$s=10;continue;}$s=11;continue;case 10:$s=-1;return new EZ.ptr(ar[0],new(I(DI(ar[0])))((function(am,an,ao,ap,aq,ar){return function(){var $ptr;return BI(ar[0],an[0][am[0]]);};})(am,an,ao,ap,aq,ar),(function(am,an,ao,ap,aq,ar){return function(bb){var $ptr,bb;an[0][am[0]]=BJ(ar[0],bb);};})(am,an,ao,ap,aq,ar)),ba);case 11:bb=Z(ar[0],BI(ar[0],an[0][am[0]]),ba);$s=12;case 12:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}$s=-1;return bb;case 4:bc=as.ptr.$get();if(am[0]<0||am[0]>=bc.length){$panic(new $String("reflect: string index out of range"));}bd=(((as.flag&96)>>>0)|8)>>>0;ap[0]=bc.charCodeAt(am[0]);$s=-1;return new EZ.ptr(FM,(ap.$ptr||(ap.$ptr=new IL(function(){return this.$target[0];},function($v){this.$target[0]=$v;},ap))),(bd|128)>>>0);case 5:$panic(new FD.ptr("reflect.Value.Index",at));case 6:case 1:$s=-1;return new EZ.ptr(HN.nil,0,0);}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Index};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Index=function(am){return this.$val.Index(am);};EZ.ptr.prototype.InterfaceData=function(){var $ptr,am;am=this;$panic(A.New("InterfaceData is not supported by GopherJS"));};EZ.prototype.InterfaceData=function(){return this.$val.InterfaceData();};EZ.ptr.prototype.IsNil=function(){var $ptr,am,an,ao;am=this;an=new FA(am.flag).kind();ao=an;if((ao===(22))||(ao===(23))){return $clone(am,EZ).object()===I(am.typ).nil;}else if(ao===(18)){return $clone(am,EZ).object()===$chanNil;}else if(ao===(19)){return $clone(am,EZ).object()===$throwNilPointerError;}else if(ao===(21)){return $clone(am,EZ).object()===false;}else if(ao===(20)){return $clone(am,EZ).object()===$ifaceNil;}else{$panic(new FD.ptr("reflect.Value.IsNil",an));}};EZ.prototype.IsNil=function(){return this.$val.IsNil();};EZ.ptr.prototype.Len=function(){var $ptr,am,an,ao;am=this;an=new FA(am.flag).kind();ao=an;if((ao===(17))||(ao===(24))){return $parseInt($clone(am,EZ).object().length);}else if(ao===(23)){return $parseInt($clone(am,EZ).object().$length)>>0;}else if(ao===(18)){return $parseInt($clone(am,EZ).object().$buffer.length)>>0;}else if(ao===(21)){return $parseInt($keys($clone(am,EZ).object()).length);}else{$panic(new FD.ptr("reflect.Value.Len",an));}};EZ.prototype.Len=function(){return this.$val.Len();};EZ.ptr.prototype.Pointer=function(){var $ptr,am,an,ao;am=this;an=new FA(am.flag).kind();ao=an;if((ao===(18))||(ao===(21))||(ao===(22))||(ao===(26))){if($clone(am,EZ).IsNil()){return 0;}return $clone(am,EZ).object();}else if(ao===(19)){if($clone(am,EZ).IsNil()){return 0;}return 1;}else if(ao===(23)){if($clone(am,EZ).IsNil()){return 0;}return $clone(am,EZ).object().$array;}else{$panic(new FD.ptr("reflect.Value.Pointer",an));}};EZ.prototype.Pointer=function(){return this.$val.Pointer();};EZ.ptr.prototype.Set=function(am){var $ptr,am,an,ao,ap,aq,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;new FA(an.flag).mustBeAssignable();new FA(am.flag).mustBeExported();ao=$clone(am,EZ).assignTo("reflect.Set",an.typ,0);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}am=ao;if(!((((an.flag&128)>>>0)===0))){$s=2;continue;}$s=3;continue;case 2:ap=an.typ.Kind();if(ap===(17)){$s=5;continue;}if(ap===(20)){$s=6;continue;}if(ap===(25)){$s=7;continue;}$s=8;continue;case 5:I(an.typ).copy(an.ptr,am.ptr);$s=9;continue;case 6:aq=BC($clone(am,EZ),false);$s=10;case 10:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}an.ptr.$set(aq);$s=9;continue;case 7:Y(an.ptr,am.ptr,an.typ);$s=9;continue;case 8:an.ptr.$set($clone(am,EZ).object());case 9:case 4:$s=-1;return;case 3:an.ptr=am.ptr;$s=-1;return;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Set};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Set=function(am){return this.$val.Set(am);};EZ.ptr.prototype.SetBytes=function(am){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;new FA(an.flag).mustBeAssignable();new FA(an.flag).mustBe(23);ao=an.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}if(!((ao===8))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.SetBytes of non-byte slice"));case 2:ap=am;if(!(an.typ.Name()==="")){aq=true;$s=6;continue s;}ar=an.typ.Elem().Name();$s=7;case 7:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}aq=!(ar==="");case 6:if(aq){$s=4;continue;}$s=5;continue;case 4:as=new(I(an.typ))(ap.$array);as.$offset=ap.$offset;as.$length=ap.$length;as.$capacity=ap.$capacity;ap=as;case 5:an.ptr.$set(ap);$s=-1;return;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.SetBytes};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.SetBytes=function(am){return this.$val.SetBytes(am);};EZ.ptr.prototype.SetCap=function(am){var $ptr,am,an,ao,ap;an=this;new FA(an.flag).mustBeAssignable();new FA(an.flag).mustBe(23);ao=an.ptr.$get();if(am<($parseInt(ao.$length)>>0)||am>($parseInt(ao.$capacity)>>0)){$panic(new $String("reflect: slice capacity out of range in SetCap"));}ap=new(I(an.typ))(ao.$array);ap.$offset=ao.$offset;ap.$length=ao.$length;ap.$capacity=am;an.ptr.$set(ap);};EZ.prototype.SetCap=function(am){return this.$val.SetCap(am);};EZ.ptr.prototype.SetLen=function(am){var $ptr,am,an,ao,ap;an=this;new FA(an.flag).mustBeAssignable();new FA(an.flag).mustBe(23);ao=an.ptr.$get();if(am<0||am>($parseInt(ao.$capacity)>>0)){$panic(new $String("reflect: slice length out of range in SetLen"));}ap=new(I(an.typ))(ao.$array);ap.$offset=ao.$offset;ap.$length=am;ap.$capacity=ao.$capacity;an.ptr.$set(ap);};EZ.prototype.SetLen=function(am){return this.$val.SetLen(am);};EZ.ptr.prototype.Slice=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=this;ap=0;aq=$ifaceNil;ar=null;as=new FA(ao.flag).kind();at=as;if(at===(17)){$s=2;continue;}if(at===(23)){$s=3;continue;}if(at===(24)){$s=4;continue;}$s=5;continue;case 2:if(((ao.flag&256)>>>0)===0){$panic(new $String("reflect.Value.Slice: slice of unaddressable array"));}au=ao.typ.kindType;ap=(au.len>>0);aq=AH(au.elem);ar=new(I(aq))($clone(ao,EZ).object());$s=6;continue;case 3:aq=ao.typ;ar=$clone(ao,EZ).object();ap=$parseInt(ar.$capacity)>>0;$s=6;continue;case 4:av=ao.ptr.$get();if(am<0||an<am||an>av.length){$panic(new $String("reflect.Value.Slice: string slice index out of bounds"));}aw=AC(new $String($substring(av,am,an)));$s=7;case 7:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}$s=-1;return aw;case 5:$panic(new FD.ptr("reflect.Value.Slice",as));case 6:case 1:if(am<0||an<am||an>ap){$panic(new $String("reflect.Value.Slice: slice index out of bounds"));}ax=Z(aq,$subslice(ar,am,an),(ao.flag&96)>>>0);$s=8;case 8:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}$s=-1;return ax;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Slice};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Slice=function(am,an){return this.$val.Slice(am,an);};EZ.ptr.prototype.Slice3=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ap=this;aq=0;ar=$ifaceNil;as=null;at=new FA(ap.flag).kind();au=at;if(au===(17)){if(((ap.flag&256)>>>0)===0){$panic(new $String("reflect.Value.Slice: slice of unaddressable array"));}av=ap.typ.kindType;aq=(av.len>>0);ar=AH(av.elem);as=new(I(ar))($clone(ap,EZ).object());}else if(au===(23)){ar=ap.typ;as=$clone(ap,EZ).object();aq=$parseInt(as.$capacity)>>0;}else{$panic(new FD.ptr("reflect.Value.Slice3",at));}if(am<0||an<am||ao<an||ao>aq){$panic(new $String("reflect.Value.Slice3: slice index out of bounds"));}aw=Z(ar,$subslice(as,am,an,ao),(ap.flag&96)>>>0);$s=1;case 1:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}$s=-1;return aw;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Slice3};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Slice3=function(am,an,ao){return this.$val.Slice3(am,an,ao);};EZ.ptr.prototype.Close=function(){var $ptr,am;am=this;new FA(am.flag).mustBe(18);new FA(am.flag).mustBeExported();$close($clone(am,EZ).object());};EZ.prototype.Close=function(){return this.$val.Close();};BM=function(am,an,ao,ap){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aq=false;ar=false;as=new IU([new IR([an])]);if(ao){as=$append(as,new IR([]));}at=BL(new IG([as]));$s=1;case 1:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}au=at;if(ao&&(($parseInt(au[0])>>0)===1)){av=false;aw=false;aq=av;ar=aw;$s=-1;return[aq,ar];}ax=au[1];ap.$set(ax[0]);ay=true;az=!!(ax[1]);aq=ay;ar=az;$s=-1;return[aq,ar];}return;}if($f===undefined){$f={$blk:BM};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.$s=$s;$f.$r=$r;return $f;};BN=function(am,an,ao,ap){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:aq=new IU([new IR([an,ao.$get()])]);if(ap){aq=$append(aq,new IR([]));}ar=BL(new IG([aq]));$s=1;case 1:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}as=ar;if(ap&&(($parseInt(as[0])>>0)===1)){$s=-1;return false;}$s=-1;return true;}return;}if($f===undefined){$f={$blk:BN};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};BZ.prototype.String=function(){var $ptr,am;am=this.$val;if((am>>0)<CQ.$length){return((am<0||am>=CQ.$length)?($throwRuntimeError("index out of range"),undefined):CQ.$array[CQ.$offset+am]);}return"kind"+B.Itoa((am>>0));};$ptrType(BZ).prototype.String=function(){return new BZ(this.$get()).String();};CB.ptr.prototype.String=function(){var $ptr,am,an;am=this;an=$clone(am.nameOff(am.str),O).name();if(!((((am.tflag&2)>>>0)===0))){return $substring(an,1);}return an;};CB.prototype.String=function(){return this.$val.String();};CB.ptr.prototype.Size=function(){var $ptr,am;am=this;return am.size;};CB.prototype.Size=function(){return this.$val.Size();};CB.ptr.prototype.Bits=function(){var $ptr,am,an;am=this;if(am===HN.nil){$panic(new $String("reflect: Bits of nil Type"));}an=am.Kind();if(an<2||an>16){$panic(new $String("reflect: Bits of non-arithmetic Type "+am.String()));}return $imul((am.size>>0),8);};CB.prototype.Bits=function(){return this.$val.Bits();};CB.ptr.prototype.Align=function(){var $ptr,am;am=this;return(am.align>>0);};CB.prototype.Align=function(){return this.$val.Align();};CB.ptr.prototype.FieldAlign=function(){var $ptr,am;am=this;return(am.fieldAlign>>0);};CB.prototype.FieldAlign=function(){return this.$val.FieldAlign();};CB.ptr.prototype.Kind=function(){var $ptr,am;am=this;return(((am.kind&31)>>>0)>>>0);};CB.prototype.Kind=function(){return this.$val.Kind();};CB.ptr.prototype.common=function(){var $ptr,am;am=this;return am;};CB.prototype.common=function(){return this.$val.common();};CB.ptr.prototype.exportedMethods=function(){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=this;$r=DB.RWMutex.RLock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}an=(ao=DB.m[HN.keyFor(am)],ao!==undefined?[ao.v,true]:[HP.nil,false]);ap=an[0];aq=an[1];$r=DB.RWMutex.RUnlock();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(aq){$s=-1;return ap;}ar=am.uncommon();if(ar===IO.nil){$s=-1;return HP.nil;}as=ar.methods();at=true;au=as;av=0;while(true){if(!(av<au.$length)){break;}aw=$clone(((av<0||av>=au.$length)?($throwRuntimeError("index out of range"),undefined):au.$array[au.$offset+av]),CD);ax=$clone(am.nameOff(aw.name),O);if(!$clone(ax,O).isExported()){at=false;break;}av++;}if(at){ap=as;}else{ap=$makeSlice(HP,0,as.$length);ay=as;az=0;while(true){if(!(az<ay.$length)){break;}ba=$clone(((az<0||az>=ay.$length)?($throwRuntimeError("index out of range"),undefined):ay.$array[ay.$offset+az]),CD);bb=$clone(am.nameOff(ba.name),O);if($clone(bb,O).isExported()){ap=$append(ap,ba);}az++;}ap=$subslice(ap,0,ap.$length,ap.$length);}$r=DB.RWMutex.Lock();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(DB.m===false){DB.m={};}bc=am;(DB.m||$throwRuntimeError("assignment to entry in nil map"))[HN.keyFor(bc)]={k:bc,v:ap};$r=DB.RWMutex.Unlock();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return ap;}return;}if($f===undefined){$f={$blk:CB.ptr.prototype.exportedMethods};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.$s=$s;$f.$r=$r;return $f;};CB.prototype.exportedMethods=function(){return this.$val.exportedMethods();};CB.ptr.prototype.NumMethod=function(){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=this;if(am.Kind()===20){an=am.kindType;$s=-1;return an.NumMethod();}if(((am.tflag&1)>>>0)===0){$s=-1;return 0;}ao=am.exportedMethods();$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao.$length;}return;}if($f===undefined){$f={$blk:CB.ptr.prototype.NumMethod};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};CB.prototype.NumMethod=function(){return this.$val.NumMethod();};CB.ptr.prototype.MethodByName=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=new CP.ptr("","",$ifaceNil,new EZ.ptr(HN.nil,0,0),0);ao=false;ap=this;if(ap.Kind()===20){aq=ap.kindType;ar=aq.MethodByName(am);CP.copy(an,ar[0]);ao=ar[1];$s=-1;return[an,ao];}as=ap.uncommon();if(as===IO.nil){at=new CP.ptr("","",$ifaceNil,new EZ.ptr(HN.nil,0,0),0);au=false;CP.copy(an,at);ao=au;$s=-1;return[an,ao];}av=as.methods();aw=0;case 1:if(!(aw<(as.mcount>>0))){$s=2;continue;}ax=$clone(((aw<0||aw>=av.$length)?($throwRuntimeError("index out of range"),undefined):av.$array[av.$offset+aw]),CD);ay=$clone(ap.nameOff(ax.name),O);if($clone(ay,O).isExported()&&$clone(ay,O).name()===am){$s=3;continue;}$s=4;continue;case 3:ba=ap.Method(aw);$s=5;case 5:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}az=$clone(ba,CP);bb=true;CP.copy(an,az);ao=bb;$s=-1;return[an,ao];case 4:aw=aw+(1)>>0;$s=1;continue;case 2:bc=new CP.ptr("","",$ifaceNil,new EZ.ptr(HN.nil,0,0),0);bd=false;CP.copy(an,bc);ao=bd;$s=-1;return[an,ao];}return;}if($f===undefined){$f={$blk:CB.ptr.prototype.MethodByName};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.$s=$s;$f.$r=$r;return $f;};CB.prototype.MethodByName=function(am){return this.$val.MethodByName(am);};CB.ptr.prototype.PkgPath=function(){var $ptr,am,an;am=this;if(((am.tflag&4)>>>0)===0){return"";}an=am.uncommon();if(an===IO.nil){return"";}return $clone(am.nameOff(an.pkgPath),O).name();};CB.prototype.PkgPath=function(){return this.$val.PkgPath();};CB.ptr.prototype.Name=function(){var $ptr,am,an,ao;am=this;if(((am.tflag&4)>>>0)===0){return"";}an=am.String();ao=an.length-1>>0;while(true){if(!(ao>=0)){break;}if(an.charCodeAt(ao)===46){break;}ao=ao-(1)>>0;}return $substring(an,(ao+1>>0));};CB.prototype.Name=function(){return this.$val.Name();};CB.ptr.prototype.ChanDir=function(){var $ptr,am,an;am=this;if(!((am.Kind()===18))){$panic(new $String("reflect: ChanDir of non-chan type"));}an=am.kindType;return(an.dir>>0);};CB.prototype.ChanDir=function(){return this.$val.ChanDir();};CB.ptr.prototype.IsVariadic=function(){var $ptr,am,an;am=this;if(!((am.Kind()===19))){$panic(new $String("reflect: IsVariadic of non-func type"));}an=am.kindType;return!((((an.outCount&32768)>>>0)===0));};CB.prototype.IsVariadic=function(){return this.$val.IsVariadic();};CB.ptr.prototype.Elem=function(){var $ptr,am,an,ao,ap,aq,ar,as;am=this;an=am.Kind();if(an===(17)){ao=am.kindType;return ER(ao.elem);}else if(an===(18)){ap=am.kindType;return ER(ap.elem);}else if(an===(21)){aq=am.kindType;return ER(aq.elem);}else if(an===(22)){ar=am.kindType;return ER(ar.elem);}else if(an===(23)){as=am.kindType;return ER(as.elem);}$panic(new $String("reflect: Elem of invalid type"));};CB.prototype.Elem=function(){return this.$val.Elem();};CB.ptr.prototype.Field=function(am){var $ptr,am,an,ao,ap,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;if(!((an.Kind()===25))){$panic(new $String("reflect: Field of non-struct type"));}ao=an.kindType;ap=ao.Field(am);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}$s=-1;return ap;}return;}if($f===undefined){$f={$blk:CB.ptr.prototype.Field};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.$s=$s;$f.$r=$r;return $f;};CB.prototype.Field=function(am){return this.$val.Field(am);};CB.ptr.prototype.FieldByIndex=function(am){var $ptr,am,an,ao,ap,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;if(!((an.Kind()===25))){$panic(new $String("reflect: FieldByIndex of non-struct type"));}ao=an.kindType;ap=ao.FieldByIndex(am);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}$s=-1;return ap;}return;}if($f===undefined){$f={$blk:CB.ptr.prototype.FieldByIndex};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.$s=$s;$f.$r=$r;return $f;};CB.prototype.FieldByIndex=function(am){return this.$val.FieldByIndex(am);};CB.ptr.prototype.FieldByName=function(am){var $ptr,am,an,ao,ap,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;if(!((an.Kind()===25))){$panic(new $String("reflect: FieldByName of non-struct type"));}ao=an.kindType;ap=ao.FieldByName(am);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}$s=-1;return ap;}return;}if($f===undefined){$f={$blk:CB.ptr.prototype.FieldByName};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.$s=$s;$f.$r=$r;return $f;};CB.prototype.FieldByName=function(am){return this.$val.FieldByName(am);};CB.ptr.prototype.FieldByNameFunc=function(am){var $ptr,am,an,ao,ap,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;if(!((an.Kind()===25))){$panic(new $String("reflect: FieldByNameFunc of non-struct type"));}ao=an.kindType;ap=ao.FieldByNameFunc(am);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}$s=-1;return ap;}return;}if($f===undefined){$f={$blk:CB.ptr.prototype.FieldByNameFunc};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.$s=$s;$f.$r=$r;return $f;};CB.prototype.FieldByNameFunc=function(am){return this.$val.FieldByNameFunc(am);};CB.ptr.prototype.In=function(am){var $ptr,am,an,ao,ap;an=this;if(!((an.Kind()===19))){$panic(new $String("reflect: In of non-func type"));}ao=an.kindType;return ER((ap=ao.in$(),((am<0||am>=ap.$length)?($throwRuntimeError("index out of range"),undefined):ap.$array[ap.$offset+am])));};CB.prototype.In=function(am){return this.$val.In(am);};CB.ptr.prototype.Key=function(){var $ptr,am,an;am=this;if(!((am.Kind()===21))){$panic(new $String("reflect: Key of non-map type"));}an=am.kindType;return ER(an.key);};CB.prototype.Key=function(){return this.$val.Key();};CB.ptr.prototype.Len=function(){var $ptr,am,an;am=this;if(!((am.Kind()===17))){$panic(new $String("reflect: Len of non-array type"));}an=am.kindType;return(an.len>>0);};CB.prototype.Len=function(){return this.$val.Len();};CB.ptr.prototype.NumField=function(){var $ptr,am,an;am=this;if(!((am.Kind()===25))){$panic(new $String("reflect: NumField of non-struct type"));}an=am.kindType;return an.fields.$length;};CB.prototype.NumField=function(){return this.$val.NumField();};CB.ptr.prototype.NumIn=function(){var $ptr,am,an;am=this;if(!((am.Kind()===19))){$panic(new $String("reflect: NumIn of non-func type"));}an=am.kindType;return(an.inCount>>0);};CB.prototype.NumIn=function(){return this.$val.NumIn();};CB.ptr.prototype.NumOut=function(){var $ptr,am,an;am=this;if(!((am.Kind()===19))){$panic(new $String("reflect: NumOut of non-func type"));}an=am.kindType;return an.out().$length;};CB.prototype.NumOut=function(){return this.$val.NumOut();};CB.ptr.prototype.Out=function(am){var $ptr,am,an,ao,ap;an=this;if(!((an.Kind()===19))){$panic(new $String("reflect: Out of non-func type"));}ao=an.kindType;return ER((ap=ao.out(),((am<0||am>=ap.$length)?($throwRuntimeError("index out of range"),undefined):ap.$array[ap.$offset+am])));};CB.prototype.Out=function(am){return this.$val.Out(am);};CE.prototype.String=function(){var $ptr,am,an;am=this.$val;an=am;if(an===(2)){return"chan<-";}else if(an===(1)){return"<-chan";}else if(an===(3)){return"chan";}return"ChanDir"+B.Itoa((am>>0));};$ptrType(CE).prototype.String=function(){return new CE(this.$get()).String();};CI.ptr.prototype.Method=function(am){var $ptr,am,an,ao,ap,aq,ar;an=new CP.ptr("","",$ifaceNil,new EZ.ptr(HN.nil,0,0),0);ao=this;if(am<0||am>=ao.methods.$length){return an;}aq=(ap=ao.methods,((am<0||am>=ap.$length)?($throwRuntimeError("index out of range"),undefined):ap.$array[ap.$offset+am]));ar=$clone(ao.rtype.nameOff(aq.name),O);an.Name=$clone(ar,O).name();if(!$clone(ar,O).isExported()){an.PkgPath=$clone(ar,O).pkgPath();if(an.PkgPath===""){an.PkgPath=$clone(ao.pkgPath,O).name();}}an.Type=ER(ao.rtype.typeOff(aq.typ));an.Index=am;return an;};CI.prototype.Method=function(am){return this.$val.Method(am);};CI.ptr.prototype.NumMethod=function(){var $ptr,am;am=this;return am.methods.$length;};CI.prototype.NumMethod=function(){return this.$val.NumMethod();};CI.ptr.prototype.MethodByName=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw;an=new CP.ptr("","",$ifaceNil,new EZ.ptr(HN.nil,0,0),0);ao=false;ap=this;if(ap===IX.nil){return[an,ao];}aq=IY.nil;ar=ap.methods;as=0;while(true){if(!(as<ar.$length)){break;}at=as;aq=(au=ap.methods,((at<0||at>=au.$length)?($throwRuntimeError("index out of range"),undefined):au.$array[au.$offset+at]));if($clone(ap.rtype.nameOff(aq.name),O).name()===am){av=$clone(ap.Method(at),CP);aw=true;CP.copy(an,av);ao=aw;return[an,ao];}as++;}return[an,ao];};CI.prototype.MethodByName=function(am){return this.$val.MethodByName(am);};DF.prototype.Get=function(am){var $ptr,am,an,ao,ap;an=this.$val;ao=new DF(an).Lookup(am);ap=ao[0];return ap;};$ptrType(DF).prototype.Get=function(am){return new DF(this.$get()).Get(am);};DF.prototype.Lookup=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az;an="";ao=false;ap=this.$val;while(true){if(!(!(ap===""))){break;}aq=0;while(true){if(!(aq<ap.length&&(ap.charCodeAt(aq)===32))){break;}aq=aq+(1)>>0;}ap=$substring(ap,aq);if(ap===""){break;}aq=0;while(true){if(!(aq<ap.length&&ap.charCodeAt(aq)>32&&!((ap.charCodeAt(aq)===58))&&!((ap.charCodeAt(aq)===34))&&!((ap.charCodeAt(aq)===127)))){break;}aq=aq+(1)>>0;}if((aq===0)||(aq+1>>0)>=ap.length||!((ap.charCodeAt(aq)===58))||!((ap.charCodeAt((aq+1>>0))===34))){break;}ar=$substring(ap,0,aq);ap=$substring(ap,(aq+1>>0));aq=1;while(true){if(!(aq<ap.length&&!((ap.charCodeAt(aq)===34)))){break;}if(ap.charCodeAt(aq)===92){aq=aq+(1)>>0;}aq=aq+(1)>>0;}if(aq>=ap.length){break;}as=$substring(ap,0,(aq+1>>0));ap=$substring(ap,(aq+1>>0));if(am===ar){at=B.Unquote(as);au=at[0];av=at[1];if(!($interfaceIsEqual(av,$ifaceNil))){break;}aw=au;ax=true;an=aw;ao=ax;return[an,ao];}}ay="";az=false;an=ay;ao=az;return[an,ao];};$ptrType(DF).prototype.Lookup=function(am){return new DF(this.$get()).Lookup(am);};CN.ptr.prototype.Field=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=new DE.ptr("","",$ifaceNil,"",0,IZ.nil,false);ao=this;if(am<0||am>=ao.fields.$length){$panic(new $String("reflect: Field index out of bounds"));}aq=(ap=ao.fields,((am<0||am>=ap.$length)?($throwRuntimeError("index out of range"),undefined):ap.$array[ap.$offset+am]));an.Type=ER(aq.typ);ar=$clone(aq.name,O).name();if(!(ar==="")){$s=1;continue;}$s=2;continue;case 1:an.Name=ar;$s=3;continue;case 2:as=an.Type;at=as.Kind();$s=6;case 6:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}if(at===22){$s=4;continue;}$s=5;continue;case 4:au=as.Elem();$s=7;case 7:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}as=au;case 5:av=as.Name();$s=8;case 8:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}an.Name=av;an.Anonymous=true;case 3:if(!$clone(aq.name,O).isExported()){an.PkgPath=$clone(aq.name,O).pkgPath();if(an.PkgPath===""){an.PkgPath=$clone(ao.pkgPath,O).name();}}aw=$clone(aq.name,O).tag();if(!(aw==="")){an.Tag=aw;}an.Offset=aq.offset;an.Index=new IZ([am]);$s=-1;return an;}return;}if($f===undefined){$f={$blk:CN.ptr.prototype.Field};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.$s=$s;$f.$r=$r;return $f;};CN.prototype.Field=function(am){return this.$val.Field(am);};CN.ptr.prototype.FieldByIndex=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=new DE.ptr("","",$ifaceNil,"",0,IZ.nil,false);ao=this;an.Type=ER(ao.rtype);ap=am;aq=0;case 1:if(!(aq<ap.$length)){$s=2;continue;}ar=aq;as=((aq<0||aq>=ap.$length)?($throwRuntimeError("index out of range"),undefined):ap.$array[ap.$offset+aq]);if(ar>0){$s=3;continue;}$s=4;continue;case 3:at=an.Type;av=at.Kind();$s=8;case 8:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}if(!(av===22)){au=false;$s=7;continue s;}aw=at.Elem();$s=9;case 9:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}ax=aw.Kind();$s=10;case 10:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}au=ax===25;case 7:if(au){$s=5;continue;}$s=6;continue;case 5:ay=at.Elem();$s=11;case 11:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}at=ay;case 6:an.Type=at;case 4:az=an.Type.Field(as);$s=12;case 12:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}DE.copy(an,az);aq++;$s=1;continue;case 2:$s=-1;return an;}return;}if($f===undefined){$f={$blk:CN.ptr.prototype.FieldByIndex};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.$s=$s;$f.$r=$r;return $f;};CN.prototype.FieldByIndex=function(am){return this.$val.FieldByIndex(am);};CN.ptr.prototype.FieldByNameFunc=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;bf=$f.bf;bg=$f.bg;bh=$f.bh;bi=$f.bi;bj=$f.bj;bk=$f.bk;bl=$f.bl;bm=$f.bm;bn=$f.bn;bo=$f.bo;bp=$f.bp;bq=$f.bq;br=$f.br;bs=$f.bs;bt=$f.bt;bu=$f.bu;bv=$f.bv;bw=$f.bw;bx=$f.bx;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=new DE.ptr("","",$ifaceNil,"",0,IZ.nil,false);ao=false;ap=this;aq=new JA([]);ar=new JA([new DG.ptr(ap,IZ.nil)]);as=false;at=$makeMap(JB.keyFor,[]);case 1:if(!(ar.$length>0)){$s=2;continue;}au=ar;av=$subslice(aq,0,0);aq=au;ar=av;aw=as;as=false;ax=aq;ay=0;case 3:if(!(ay<ax.$length)){$s=4;continue;}az=$clone(((ay<0||ay>=ax.$length)?($throwRuntimeError("index out of range"),undefined):ax.$array[ax.$offset+ay]),DG);ba=az.typ;if((bb=at[JB.keyFor(ba)],bb!==undefined?bb.v:false)){$s=5;continue;}$s=6;continue;case 5:ay++;$s=3;continue;case 6:bc=ba;(at||$throwRuntimeError("assignment to entry in nil map"))[JB.keyFor(bc)]={k:bc,v:true};bd=ba.fields;be=0;case 7:if(!(be<bd.$length)){$s=8;continue;}bf=be;bh=(bg=ba.fields,((bf<0||bf>=bg.$length)?($throwRuntimeError("index out of range"),undefined):bg.$array[bg.$offset+bf]));bi="";bj=HN.nil;bk=$clone(bh.name,O).name();if(!(bk==="")){$s=9;continue;}$s=10;continue;case 9:bi=bk;$s=11;continue;case 10:bj=bh.typ;if(bj.Kind()===22){$s=12;continue;}$s=13;continue;case 12:bl=bj.Elem().common();$s=14;case 14:if($c){$c=false;bl=bl.$blk();}if(bl&&bl.$blk!==undefined){break s;}bj=bl;case 13:bi=bj.Name();case 11:bm=am(bi);$s=17;case 17:if($c){$c=false;bm=bm.$blk();}if(bm&&bm.$blk!==undefined){break s;}if(bm){$s=15;continue;}$s=16;continue;case 15:if((bn=aw[JB.keyFor(ba)],bn!==undefined?bn.v:0)>1||ao){bo=new DE.ptr("","",$ifaceNil,"",0,IZ.nil,false);bp=false;DE.copy(an,bo);ao=bp;$s=-1;return[an,ao];}bq=ba.Field(bf);$s=18;case 18:if($c){$c=false;bq=bq.$blk();}if(bq&&bq.$blk!==undefined){break s;}DE.copy(an,bq);an.Index=IZ.nil;an.Index=$appendSlice(an.Index,az.index);an.Index=$append(an.Index,bf);ao=true;be++;$s=7;continue;case 16:if(ao||bj===HN.nil||!((bj.Kind()===25))){be++;$s=7;continue;}br=bj.kindType;if((bs=as[JB.keyFor(br)],bs!==undefined?bs.v:0)>0){bt=br;(as||$throwRuntimeError("assignment to entry in nil map"))[JB.keyFor(bt)]={k:bt,v:2};be++;$s=7;continue;}if(as===false){as=$makeMap(JB.keyFor,[]);}bu=br;(as||$throwRuntimeError("assignment to entry in nil map"))[JB.keyFor(bu)]={k:bu,v:1};if((bv=aw[JB.keyFor(ba)],bv!==undefined?bv.v:0)>1){bw=br;(as||$throwRuntimeError("assignment to entry in nil map"))[JB.keyFor(bw)]={k:bw,v:2};}bx=IZ.nil;bx=$appendSlice(bx,az.index);bx=$append(bx,bf);ar=$append(ar,new DG.ptr(br,bx));be++;$s=7;continue;case 8:ay++;$s=3;continue;case 4:if(ao){$s=2;continue;}$s=1;continue;case 2:$s=-1;return[an,ao];}return;}if($f===undefined){$f={$blk:CN.ptr.prototype.FieldByNameFunc};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$f.bf=bf;$f.bg=bg;$f.bh=bh;$f.bi=bi;$f.bj=bj;$f.bk=bk;$f.bl=bl;$f.bm=bm;$f.bn=bn;$f.bo=bo;$f.bp=bp;$f.bq=bq;$f.br=br;$f.bs=bs;$f.bt=bt;$f.bu=bu;$f.bv=bv;$f.bw=bw;$f.bx=bx;$f.$s=$s;$f.$r=$r;return $f;};CN.prototype.FieldByNameFunc=function(am){return this.$val.FieldByNameFunc(am);};CN.ptr.prototype.FieldByName=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=[am];an=new DE.ptr("","",$ifaceNil,"",0,IZ.nil,false);ao=false;ap=this;aq=false;if(!(am[0]==="")){$s=1;continue;}$s=2;continue;case 1:ar=ap.fields;as=0;case 3:if(!(as<ar.$length)){$s=4;continue;}at=as;av=(au=ap.fields,((at<0||at>=au.$length)?($throwRuntimeError("index out of range"),undefined):au.$array[au.$offset+at]));aw=$clone(av.name,O).name();if(aw===""){$s=5;continue;}$s=6;continue;case 5:aq=true;as++;$s=3;continue;case 6:if(aw===am[0]){$s=7;continue;}$s=8;continue;case 7:ay=ap.Field(at);$s=9;case 9:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}ax=$clone(ay,DE);az=true;DE.copy(an,ax);ao=az;$s=-1;return[an,ao];case 8:as++;$s=3;continue;case 4:case 2:if(!aq){$s=-1;return[an,ao];}bb=ap.FieldByNameFunc((function(am){return function(bb){var $ptr,bb;return bb===am[0];};})(am));$s=10;case 10:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}ba=bb;DE.copy(an,ba[0]);ao=ba[1];$s=-1;return[an,ao];}return;}if($f===undefined){$f={$blk:CN.ptr.prototype.FieldByName};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.$s=$s;$f.$r=$r;return $f;};CN.prototype.FieldByName=function(am){return this.$val.FieldByName(am);};DI=function(am){var $ptr,am;return $assertType(am,HN).ptrTo();};$pkg.PtrTo=DI;CB.ptr.prototype.Implements=function(am){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;if($interfaceIsEqual(am,$ifaceNil)){$panic(new $String("reflect: nil type passed to Type.Implements"));}ao=am.Kind();$s=3;case 3:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}if(!((ao===20))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect: non-interface type passed to Type.Implements"));case 2:$s=-1;return DK($assertType(am,HN),an);}return;}if($f===undefined){$f={$blk:CB.ptr.prototype.Implements};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};CB.prototype.Implements=function(am){return this.$val.Implements(am);};CB.ptr.prototype.AssignableTo=function(am){var $ptr,am,an,ao,ap,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;if($interfaceIsEqual(am,$ifaceNil)){$panic(new $String("reflect: nil type passed to Type.AssignableTo"));}ao=$assertType(am,HN);ap=DL(ao,an);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}$s=-1;return ap||DK(ao,an);}return;}if($f===undefined){$f={$blk:CB.ptr.prototype.AssignableTo};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.$s=$s;$f.$r=$r;return $f;};CB.prototype.AssignableTo=function(am){return this.$val.AssignableTo(am);};CB.ptr.prototype.ConvertibleTo=function(am){var $ptr,am,an,ao,ap,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;if($interfaceIsEqual(am,$ifaceNil)){$panic(new $String("reflect: nil type passed to Type.ConvertibleTo"));}ao=$assertType(am,HN);ap=GH(ao,an);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}$s=-1;return!(ap===$throwNilPointerError);}return;}if($f===undefined){$f={$blk:CB.ptr.prototype.ConvertibleTo};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.$s=$s;$f.$r=$r;return $f;};CB.prototype.ConvertibleTo=function(am){return this.$val.ConvertibleTo(am);};DK=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc;if(!((am.Kind()===20))){return false;}ao=am.kindType;if(ao.methods.$length===0){return true;}if(an.Kind()===20){ap=an.kindType;aq=0;ar=0;while(true){if(!(ar<ap.methods.$length)){break;}at=(as=ao.methods,((aq<0||aq>=as.$length)?($throwRuntimeError("index out of range"),undefined):as.$array[as.$offset+aq]));av=(au=ap.methods,((ar<0||ar>=au.$length)?($throwRuntimeError("index out of range"),undefined):au.$array[au.$offset+ar]));if($clone(an.nameOff(av.name),O).name()===$clone(ao.rtype.nameOff(at.name),O).name()&&an.typeOff(av.typ)===ao.rtype.typeOff(at.typ)){aq=aq+(1)>>0;if(aq>=ao.methods.$length){return true;}}ar=ar+(1)>>0;}return false;}aw=an.uncommon();if(aw===IO.nil){return false;}ax=0;ay=aw.methods();az=0;while(true){if(!(az<(aw.mcount>>0))){break;}bb=(ba=ao.methods,((ax<0||ax>=ba.$length)?($throwRuntimeError("index out of range"),undefined):ba.$array[ba.$offset+ax]));bc=$clone(((az<0||az>=ay.$length)?($throwRuntimeError("index out of range"),undefined):ay.$array[ay.$offset+az]),CD);if($clone(an.nameOff(bc.name),O).name()===$clone(ao.rtype.nameOff(bb.name),O).name()&&an.typeOff(bc.mtyp)===ao.rtype.typeOff(bb.typ)){ax=ax+(1)>>0;if(ax>=ao.methods.$length){return true;}}az=az+(1)>>0;}return false;};DL=function(am,an){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if(am===an){$s=-1;return true;}if(!(am.Name()==="")&&!(an.Name()==="")||!((am.Kind()===an.Kind()))){$s=-1;return false;}ao=DN(am,an,true);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;}return;}if($f===undefined){$f={$blk:DL};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};DM=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if(ao){$s=-1;return $interfaceIsEqual(am,an);}aq=am.Name();$s=4;case 4:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=an.Name();$s=5;case 5:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}if(!(aq===ar)){ap=true;$s=3;continue s;}as=am.Kind();$s=6;case 6:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}at=an.Kind();$s=7;case 7:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}ap=!((as===at));case 3:if(ap){$s=1;continue;}$s=2;continue;case 1:$s=-1;return false;case 2:au=am.common();$s=8;case 8:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}av=au;aw=an.common();$s=9;case 9:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}ax=aw;ay=DN(av,ax,false);$s=10;case 10:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}$s=-1;return ay;}return;}if($f===undefined){$f={$blk:DM};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.$s=$s;$f.$r=$r;return $f;};DN=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;bf=$f.bf;bg=$f.bg;bh=$f.bh;bi=$f.bi;bj=$f.bj;bk=$f.bk;bl=$f.bl;bm=$f.bm;bn=$f.bn;bo=$f.bo;bp=$f.bp;bq=$f.bq;br=$f.br;bs=$f.bs;bt=$f.bt;bu=$f.bu;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if(am===an){$s=-1;return true;}ap=am.Kind();if(!((ap===an.Kind()))){$s=-1;return false;}if(1<=ap&&ap<=16||(ap===24)||(ap===26)){$s=-1;return true;}aq=ap;if(aq===(17)){$s=2;continue;}if(aq===(18)){$s=3;continue;}if(aq===(19)){$s=4;continue;}if(aq===(20)){$s=5;continue;}if(aq===(21)){$s=6;continue;}if((aq===(22))||(aq===(23))){$s=7;continue;}if(aq===(25)){$s=8;continue;}$s=9;continue;case 2:if(!(am.Len()===an.Len())){ar=false;$s=10;continue s;}as=DM(am.Elem(),an.Elem(),ao);$s=11;case 11:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}ar=as;case 10:$s=-1;return ar;case 3:if(!(an.ChanDir()===3)){at=false;$s=14;continue s;}au=DM(am.Elem(),an.Elem(),ao);$s=15;case 15:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}at=au;case 14:if(at){$s=12;continue;}$s=13;continue;case 12:$s=-1;return true;case 13:if(!(an.ChanDir()===am.ChanDir())){av=false;$s=16;continue s;}aw=DM(am.Elem(),an.Elem(),ao);$s=17;case 17:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}av=aw;case 16:$s=-1;return av;case 4:ax=am.kindType;ay=an.kindType;if(!((ax.outCount===ay.outCount))||!((ax.inCount===ay.inCount))){$s=-1;return false;}az=0;case 18:if(!(az<ax.rtype.NumIn())){$s=19;continue;}ba=DM(ax.rtype.In(az),ay.rtype.In(az),ao);$s=22;case 22:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}if(!ba){$s=20;continue;}$s=21;continue;case 20:$s=-1;return false;case 21:az=az+(1)>>0;$s=18;continue;case 19:bb=0;case 23:if(!(bb<ax.rtype.NumOut())){$s=24;continue;}bc=DM(ax.rtype.Out(bb),ay.rtype.Out(bb),ao);$s=27;case 27:if($c){$c=false;bc=bc.$blk();}if(bc&&bc.$blk!==undefined){break s;}if(!bc){$s=25;continue;}$s=26;continue;case 25:$s=-1;return false;case 26:bb=bb+(1)>>0;$s=23;continue;case 24:$s=-1;return true;case 5:bd=am.kindType;be=an.kindType;if((bd.methods.$length===0)&&(be.methods.$length===0)){$s=-1;return true;}$s=-1;return false;case 6:bg=DM(am.Key(),an.Key(),ao);$s=29;case 29:if($c){$c=false;bg=bg.$blk();}if(bg&&bg.$blk!==undefined){break s;}if(!(bg)){bf=false;$s=28;continue s;}bh=DM(am.Elem(),an.Elem(),ao);$s=30;case 30:if($c){$c=false;bh=bh.$blk();}if(bh&&bh.$blk!==undefined){break s;}bf=bh;case 28:$s=-1;return bf;case 7:bi=DM(am.Elem(),an.Elem(),ao);$s=31;case 31:if($c){$c=false;bi=bi.$blk();}if(bi&&bi.$blk!==undefined){break s;}$s=-1;return bi;case 8:bj=am.kindType;bk=an.kindType;if(!((bj.fields.$length===bk.fields.$length))){$s=-1;return false;}bl=bj.fields;bm=0;case 32:if(!(bm<bl.$length)){$s=33;continue;}bn=bm;bp=(bo=bj.fields,((bn<0||bn>=bo.$length)?($throwRuntimeError("index out of range"),undefined):bo.$array[bo.$offset+bn]));br=(bq=bk.fields,((bn<0||bn>=bq.$length)?($throwRuntimeError("index out of range"),undefined):bq.$array[bq.$offset+bn]));if(!($clone(bp.name,O).name()===$clone(br.name,O).name())){$s=-1;return false;}bs=DM(bp.typ,br.typ,ao);$s=36;case 36:if($c){$c=false;bs=bs.$blk();}if(bs&&bs.$blk!==undefined){break s;}if(!bs){$s=34;continue;}$s=35;continue;case 34:$s=-1;return false;case 35:if(ao&&!($clone(bp.name,O).tag()===$clone(br.name,O).tag())){$s=-1;return false;}if(!((bp.offset===br.offset))){$s=-1;return false;}if(!$clone(bp.name,O).isExported()){bt=$clone(bp.name,O).pkgPath();if(bt===""){bt=$clone(bj.pkgPath,O).name();}bu=$clone(br.name,O).pkgPath();if(bu===""){bu=$clone(bk.pkgPath,O).name();}if(!(bt===bu)){$s=-1;return false;}}bm++;$s=32;continue;case 33:$s=-1;return true;case 9:case 1:$s=-1;return false;}return;}if($f===undefined){$f={$blk:DN};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$f.bf=bf;$f.bg=bg;$f.bh=bh;$f.bi=bi;$f.bj=bj;$f.bk=bk;$f.bl=bl;$f.bm=bm;$f.bn=bn;$f.bo=bo;$f.bp=bp;$f.bq=bq;$f.br=br;$f.bs=bs;$f.bt=bt;$f.bu=bu;$f.$s=$s;$f.$r=$r;return $f;};ER=function(am){var $ptr,am;if(am===HN.nil){return $ifaceNil;}return am;};EW=function(am){var $ptr,am;return((am.kind&32)>>>0)===0;};FA.prototype.kind=function(){var $ptr,am;am=this.$val;return(((am&31)>>>0)>>>0);};$ptrType(FA).prototype.kind=function(){return new FA(this.$get()).kind();};EZ.ptr.prototype.pointer=function(){var $ptr,am;am=this;if(!((am.typ.size===4))||!am.typ.pointers()){$panic(new $String("can't call pointer on a non-pointer Value"));}if(!((((am.flag&128)>>>0)===0))){return am.ptr.$get();}return am.ptr;};EZ.prototype.pointer=function(){return this.$val.pointer();};FD.ptr.prototype.Error=function(){var $ptr,am;am=this;if(am.Kind===0){return"reflect: call of "+am.Method+" on zero Value";}return"reflect: call of "+am.Method+" on "+new BZ(am.Kind).String()+" Value";};FD.prototype.Error=function(){return this.$val.Error();};FA.prototype.mustBe=function(am){var $ptr,am,an;an=this.$val;if(!((new FA(an).kind()===am))){$panic(new FD.ptr(BE(),new FA(an).kind()));}};$ptrType(FA).prototype.mustBe=function(am){return new FA(this.$get()).mustBe(am);};FA.prototype.mustBeExported=function(){var $ptr,am;am=this.$val;if(am===0){$panic(new FD.ptr(BE(),0));}if(!((((am&96)>>>0)===0))){$panic(new $String("reflect: "+BE()+" using value obtained using unexported field"));}};$ptrType(FA).prototype.mustBeExported=function(){return new FA(this.$get()).mustBeExported();};FA.prototype.mustBeAssignable=function(){var $ptr,am;am=this.$val;if(am===0){$panic(new FD.ptr(BE(),0));}if(!((((am&96)>>>0)===0))){$panic(new $String("reflect: "+BE()+" using value obtained using unexported field"));}if(((am&256)>>>0)===0){$panic(new $String("reflect: "+BE()+" using unaddressable value"));}};$ptrType(FA).prototype.mustBeAssignable=function(){return new FA(this.$get()).mustBeAssignable();};EZ.ptr.prototype.Addr=function(){var $ptr,am;am=this;if(((am.flag&256)>>>0)===0){$panic(new $String("reflect.Value.Addr of unaddressable value"));}return new EZ.ptr(am.typ.ptrTo(),am.ptr,((((am.flag&96)>>>0))|22)>>>0);};EZ.prototype.Addr=function(){return this.$val.Addr();};EZ.ptr.prototype.Bool=function(){var $ptr,am;am=this;new FA(am.flag).mustBe(1);return am.ptr.$get();};EZ.prototype.Bool=function(){return this.$val.Bool();};EZ.ptr.prototype.Bytes=function(){var $ptr,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=this;new FA(am.flag).mustBe(23);an=am.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}if(!((an===8))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.Bytes of non-byte slice"));case 2:$s=-1;return am.ptr.$get();}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Bytes};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Bytes=function(){return this.$val.Bytes();};EZ.ptr.prototype.runes=function(){var $ptr,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=this;new FA(am.flag).mustBe(23);an=am.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}if(!((an===5))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.Bytes of non-rune slice"));case 2:$s=-1;return am.ptr.$get();}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.runes};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.runes=function(){return this.$val.runes();};EZ.ptr.prototype.CanAddr=function(){var $ptr,am;am=this;return!((((am.flag&256)>>>0)===0));};EZ.prototype.CanAddr=function(){return this.$val.CanAddr();};EZ.ptr.prototype.CanSet=function(){var $ptr,am;am=this;return((am.flag&352)>>>0)===256;};EZ.prototype.CanSet=function(){return this.$val.CanSet();};EZ.ptr.prototype.Call=function(am){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;new FA(an.flag).mustBe(19);new FA(an.flag).mustBeExported();ao=$clone(an,EZ).call("Call",am);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Call};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Call=function(am){return this.$val.Call(am);};EZ.ptr.prototype.CallSlice=function(am){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;new FA(an.flag).mustBe(19);new FA(an.flag).mustBeExported();ao=$clone(an,EZ).call("CallSlice",am);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.CallSlice};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.CallSlice=function(am){return this.$val.CallSlice(am);};EZ.ptr.prototype.Complex=function(){var $ptr,am,an,ao,ap;am=this;an=new FA(am.flag).kind();ao=an;if(ao===(15)){return(ap=am.ptr.$get(),new $Complex128(ap.$real,ap.$imag));}else if(ao===(16)){return am.ptr.$get();}$panic(new FD.ptr("reflect.Value.Complex",new FA(am.flag).kind()));};EZ.prototype.Complex=function(){return this.$val.Complex();};EZ.ptr.prototype.FieldByIndex=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;if(am.$length===1){$s=1;continue;}$s=2;continue;case 1:ao=$clone(an,EZ).Field((0>=am.$length?($throwRuntimeError("index out of range"),undefined):am.$array[am.$offset+0]));$s=3;case 3:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;case 2:new FA(an.flag).mustBe(25);ap=am;aq=0;case 4:if(!(aq<ap.$length)){$s=5;continue;}ar=aq;as=((aq<0||aq>=ap.$length)?($throwRuntimeError("index out of range"),undefined):ap.$array[ap.$offset+aq]);if(ar>0){$s=6;continue;}$s=7;continue;case 6:if(!($clone(an,EZ).Kind()===22)){at=false;$s=10;continue s;}au=an.typ.Elem().Kind();$s=11;case 11:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}at=au===25;case 10:if(at){$s=8;continue;}$s=9;continue;case 8:if($clone(an,EZ).IsNil()){$panic(new $String("reflect: indirection through nil pointer to embedded struct"));}av=$clone(an,EZ).Elem();$s=12;case 12:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}an=av;case 9:case 7:aw=$clone(an,EZ).Field(as);$s=13;case 13:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}an=aw;aq++;$s=4;continue;case 5:$s=-1;return an;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.FieldByIndex};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.FieldByIndex=function(am){return this.$val.FieldByIndex(am);};EZ.ptr.prototype.FieldByName=function(am){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;new FA(an.flag).mustBe(25);ap=an.typ.FieldByName(am);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}ao=ap;aq=$clone(ao[0],DE);ar=ao[1];if(ar){$s=2;continue;}$s=3;continue;case 2:as=$clone(an,EZ).FieldByIndex(aq.Index);$s=4;case 4:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}$s=-1;return as;case 3:$s=-1;return new EZ.ptr(HN.nil,0,0);}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.FieldByName};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.FieldByName=function(am){return this.$val.FieldByName(am);};EZ.ptr.prototype.FieldByNameFunc=function(am){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;ap=an.typ.FieldByNameFunc(am);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}ao=ap;aq=$clone(ao[0],DE);ar=ao[1];if(ar){$s=2;continue;}$s=3;continue;case 2:as=$clone(an,EZ).FieldByIndex(aq.Index);$s=4;case 4:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}$s=-1;return as;case 3:$s=-1;return new EZ.ptr(HN.nil,0,0);}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.FieldByNameFunc};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.FieldByNameFunc=function(am){return this.$val.FieldByNameFunc(am);};EZ.ptr.prototype.Float=function(){var $ptr,am,an,ao;am=this;an=new FA(am.flag).kind();ao=an;if(ao===(13)){return am.ptr.$get();}else if(ao===(14)){return am.ptr.$get();}$panic(new FD.ptr("reflect.Value.Float",new FA(am.flag).kind()));};EZ.prototype.Float=function(){return this.$val.Float();};EZ.ptr.prototype.Int=function(){var $ptr,am,an,ao,ap;am=this;an=new FA(am.flag).kind();ao=am.ptr;ap=an;if(ap===(2)){return new $Int64(0,ao.$get());}else if(ap===(3)){return new $Int64(0,ao.$get());}else if(ap===(4)){return new $Int64(0,ao.$get());}else if(ap===(5)){return new $Int64(0,ao.$get());}else if(ap===(6)){return ao.$get();}$panic(new FD.ptr("reflect.Value.Int",new FA(am.flag).kind()));};EZ.prototype.Int=function(){return this.$val.Int();};EZ.ptr.prototype.CanInterface=function(){var $ptr,am;am=this;if(am.flag===0){$panic(new FD.ptr("reflect.Value.CanInterface",0));}return((am.flag&96)>>>0)===0;};EZ.prototype.CanInterface=function(){return this.$val.CanInterface();};EZ.ptr.prototype.Interface=function(){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=$ifaceNil;an=this;ao=BC($clone(an,EZ),true);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}am=ao;$s=-1;return am;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Interface};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Interface=function(){return this.$val.Interface();};EZ.ptr.prototype.IsValid=function(){var $ptr,am;am=this;return!((am.flag===0));};EZ.prototype.IsValid=function(){return this.$val.IsValid();};EZ.ptr.prototype.Kind=function(){var $ptr,am;am=this;return new FA(am.flag).kind();};EZ.prototype.Kind=function(){return this.$val.Kind();};EZ.ptr.prototype.MapIndex=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;new FA(an.flag).mustBe(21);ao=an.typ.kindType;ap=$clone(am,EZ).assignTo("reflect.Value.MapIndex",ao.key,0);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}am=ap;aq=0;if(!((((am.flag&128)>>>0)===0))){aq=am.ptr;}else{aq=(am.$ptr_ptr||(am.$ptr_ptr=new JN(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},am)));}ar=AR(an.typ,$clone(an,EZ).pointer(),aq);if(ar===0){$s=-1;return new EZ.ptr(HN.nil,0,0);}as=ao.elem;at=((((an.flag|am.flag)>>>0))&96)>>>0;at=(at|((as.Kind()>>>0)))>>>0;if(EW(as)){au=AJ(as);AM(as,au,ar);$s=-1;return new EZ.ptr(as,au,(at|128)>>>0);}else{$s=-1;return new EZ.ptr(as,ar.$get(),at);}$s=-1;return new EZ.ptr(HN.nil,0,0);}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.MapIndex};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.MapIndex=function(am){return this.$val.MapIndex(am);};EZ.ptr.prototype.MapKeys=function(){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=this;new FA(am.flag).mustBe(21);an=am.typ.kindType;ao=an.key;ap=(((am.flag&96)>>>0)|(ao.Kind()>>>0))>>>0;aq=$clone(am,EZ).pointer();ar=0;if(!(aq===0)){ar=AY(aq);}as=AV(am.typ,aq);at=$makeSlice(IS,ar);au=0;au=0;case 1:if(!(au<at.$length)){$s=2;continue;}av=AW(as);$s=3;case 3:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}aw=av;if(aw===0){$s=2;continue;}if(EW(ao)){ax=AJ(ao);AM(ao,ax,aw);((au<0||au>=at.$length)?($throwRuntimeError("index out of range"),undefined):at.$array[at.$offset+au]=new EZ.ptr(ao,ax,(ap|128)>>>0));}else{((au<0||au>=at.$length)?($throwRuntimeError("index out of range"),undefined):at.$array[at.$offset+au]=new EZ.ptr(ao,aw.$get(),ap));}AX(as);au=au+(1)>>0;$s=1;continue;case 2:$s=-1;return $subslice(at,0,au);}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.MapKeys};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.MapKeys=function(){return this.$val.MapKeys();};EZ.ptr.prototype.Method=function(am){var $ptr,am,an,ao,ap,aq,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;if(an.typ===HN.nil){$panic(new FD.ptr("reflect.Value.Method",0));}if(!((((an.flag&512)>>>0)===0))){ao=true;$s=3;continue s;}ap=an.typ.NumMethod();$s=4;case 4:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}ao=(am>>>0)>=(ap>>>0);case 3:if(ao){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect: Method index out of range"));case 2:if((an.typ.Kind()===20)&&$clone(an,EZ).IsNil()){$panic(new $String("reflect: Method on nil interface value"));}aq=(an.flag&160)>>>0;aq=(aq|(19))>>>0;aq=(aq|(((((am>>>0)<<10>>>0)|512)>>>0)))>>>0;$s=-1;return new EZ.ptr(an.typ,an.ptr,aq);}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Method};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Method=function(am){return this.$val.Method(am);};EZ.ptr.prototype.NumMethod=function(){var $ptr,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=this;if(am.typ===HN.nil){$panic(new FD.ptr("reflect.Value.NumMethod",0));}if(!((((am.flag&512)>>>0)===0))){$s=-1;return 0;}an=am.typ.NumMethod();$s=1;case 1:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}$s=-1;return an;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.NumMethod};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.NumMethod=function(){return this.$val.NumMethod();};EZ.ptr.prototype.MethodByName=function(am){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;if(an.typ===HN.nil){$panic(new FD.ptr("reflect.Value.MethodByName",0));}if(!((((an.flag&512)>>>0)===0))){$s=-1;return new EZ.ptr(HN.nil,0,0);}ap=an.typ.MethodByName(am);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}ao=ap;aq=$clone(ao[0],CP);ar=ao[1];if(!ar){$s=-1;return new EZ.ptr(HN.nil,0,0);}as=$clone(an,EZ).Method(aq.Index);$s=2;case 2:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}$s=-1;return as;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.MethodByName};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.MethodByName=function(am){return this.$val.MethodByName(am);};EZ.ptr.prototype.NumField=function(){var $ptr,am,an;am=this;new FA(am.flag).mustBe(25);an=am.typ.kindType;return an.fields.$length;};EZ.prototype.NumField=function(){return this.$val.NumField();};EZ.ptr.prototype.OverflowComplex=function(am){var $ptr,am,an,ao,ap;an=this;ao=new FA(an.flag).kind();ap=ao;if(ap===(15)){return FN(am.$real)||FN(am.$imag);}else if(ap===(16)){return false;}$panic(new FD.ptr("reflect.Value.OverflowComplex",new FA(an.flag).kind()));};EZ.prototype.OverflowComplex=function(am){return this.$val.OverflowComplex(am);};EZ.ptr.prototype.OverflowFloat=function(am){var $ptr,am,an,ao,ap;an=this;ao=new FA(an.flag).kind();ap=ao;if(ap===(13)){return FN(am);}else if(ap===(14)){return false;}$panic(new FD.ptr("reflect.Value.OverflowFloat",new FA(an.flag).kind()));};EZ.prototype.OverflowFloat=function(am){return this.$val.OverflowFloat(am);};FN=function(am){var $ptr,am;if(am<0){am=-am;}return 3.4028234663852886e+38<am&&am<=1.7976931348623157e+308;};EZ.ptr.prototype.OverflowInt=function(am){var $ptr,am,an,ao,ap,aq,ar;an=this;ao=new FA(an.flag).kind();ap=ao;if((ap===(2))||(ap===(3))||(ap===(4))||(ap===(5))||(ap===(6))){aq=$imul(an.typ.size,8)>>>0;ar=$shiftRightInt64(($shiftLeft64(am,((64-aq>>>0)))),((64-aq>>>0)));return!((am.$high===ar.$high&&am.$low===ar.$low));}$panic(new FD.ptr("reflect.Value.OverflowInt",new FA(an.flag).kind()));};EZ.prototype.OverflowInt=function(am){return this.$val.OverflowInt(am);};EZ.ptr.prototype.OverflowUint=function(am){var $ptr,am,an,ao,ap,aq,ar;an=this;ao=new FA(an.flag).kind();ap=ao;if((ap===(7))||(ap===(12))||(ap===(8))||(ap===(9))||(ap===(10))||(ap===(11))){aq=$imul(an.typ.size,8)>>>0;ar=$shiftRightUint64(($shiftLeft64(am,((64-aq>>>0)))),((64-aq>>>0)));return!((am.$high===ar.$high&&am.$low===ar.$low));}$panic(new FD.ptr("reflect.Value.OverflowUint",new FA(an.flag).kind()));};EZ.prototype.OverflowUint=function(am){return this.$val.OverflowUint(am);};EZ.ptr.prototype.Recv=function(){var $ptr,am,an,ao,ap,aq,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=new EZ.ptr(HN.nil,0,0);an=false;ao=this;new FA(ao.flag).mustBe(18);new FA(ao.flag).mustBeExported();aq=$clone(ao,EZ).recv(false);$s=1;case 1:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ap=aq;am=ap[0];an=ap[1];$s=-1;return[am,an];}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Recv};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Recv=function(){return this.$val.Recv();};EZ.ptr.prototype.recv=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=new EZ.ptr(HN.nil,0,0);ao=false;ap=this;aq=ap.typ.kindType;if(((aq.dir>>0)&1)===0){$panic(new $String("reflect: recv on send-only channel"));}ar=aq.elem;an=new EZ.ptr(ar,0,(ar.Kind()>>>0));as=0;if(EW(ar)){as=AJ(ar);an.ptr=as;an.flag=(an.flag|(128))>>>0;}else{as=(an.$ptr_ptr||(an.$ptr_ptr=new JN(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},an)));}au=BM(ap.typ,$clone(ap,EZ).pointer(),am,as);$s=1;case 1:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}at=au;av=at[0];ao=at[1];if(!av){an=new EZ.ptr(HN.nil,0,0);}$s=-1;return[an,ao];}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.recv};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.recv=function(am){return this.$val.recv(am);};EZ.ptr.prototype.Send=function(am){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;new FA(an.flag).mustBe(18);new FA(an.flag).mustBeExported();ao=$clone(an,EZ).send($clone(am,EZ),false);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}ao;$s=-1;return;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Send};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Send=function(am){return this.$val.Send(am);};EZ.ptr.prototype.send=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,at,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=false;ap=this;aq=ap.typ.kindType;if(((aq.dir>>0)&2)===0){$panic(new $String("reflect: send on recv-only channel"));}new FA(am.flag).mustBeExported();ar=$clone(am,EZ).assignTo("reflect.Value.Send",aq.elem,0);$s=1;case 1:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}am=ar;as=0;if(!((((am.flag&128)>>>0)===0))){as=am.ptr;}else{as=(am.$ptr_ptr||(am.$ptr_ptr=new JN(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},am)));}at=BN(ap.typ,$clone(ap,EZ).pointer(),as,an);$s=2;case 2:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}ao=at;$s=-1;return ao;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.send};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.send=function(am,an){return this.$val.send(am,an);};EZ.ptr.prototype.SetBool=function(am){var $ptr,am,an;an=this;new FA(an.flag).mustBeAssignable();new FA(an.flag).mustBe(1);an.ptr.$set(am);};EZ.prototype.SetBool=function(am){return this.$val.SetBool(am);};EZ.ptr.prototype.setRunes=function(am){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;new FA(an.flag).mustBeAssignable();new FA(an.flag).mustBe(23);ao=an.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}if(!((ao===5))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.setRunes of non-rune slice"));case 2:an.ptr.$set(am);$s=-1;return;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.setRunes};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.setRunes=function(am){return this.$val.setRunes(am);};EZ.ptr.prototype.SetComplex=function(am){var $ptr,am,an,ao,ap;an=this;new FA(an.flag).mustBeAssignable();ao=new FA(an.flag).kind();ap=ao;if(ap===(15)){an.ptr.$set(new $Complex64(am.$real,am.$imag));}else if(ap===(16)){an.ptr.$set(am);}else{$panic(new FD.ptr("reflect.Value.SetComplex",new FA(an.flag).kind()));}};EZ.prototype.SetComplex=function(am){return this.$val.SetComplex(am);};EZ.ptr.prototype.SetFloat=function(am){var $ptr,am,an,ao,ap;an=this;new FA(an.flag).mustBeAssignable();ao=new FA(an.flag).kind();ap=ao;if(ap===(13)){an.ptr.$set($fround(am));}else if(ap===(14)){an.ptr.$set(am);}else{$panic(new FD.ptr("reflect.Value.SetFloat",new FA(an.flag).kind()));}};EZ.prototype.SetFloat=function(am){return this.$val.SetFloat(am);};EZ.ptr.prototype.SetInt=function(am){var $ptr,am,an,ao,ap;an=this;new FA(an.flag).mustBeAssignable();ao=new FA(an.flag).kind();ap=ao;if(ap===(2)){an.ptr.$set(((am.$low+((am.$high>>31)*4294967296))>>0));}else if(ap===(3)){an.ptr.$set(((am.$low+((am.$high>>31)*4294967296))<<24>>24));}else if(ap===(4)){an.ptr.$set(((am.$low+((am.$high>>31)*4294967296))<<16>>16));}else if(ap===(5)){an.ptr.$set(((am.$low+((am.$high>>31)*4294967296))>>0));}else if(ap===(6)){an.ptr.$set(am);}else{$panic(new FD.ptr("reflect.Value.SetInt",new FA(an.flag).kind()));}};EZ.prototype.SetInt=function(am){return this.$val.SetInt(am);};EZ.ptr.prototype.SetMapIndex=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,at,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=this;new FA(ao.flag).mustBe(21);new FA(ao.flag).mustBeExported();new FA(am.flag).mustBeExported();ap=ao.typ.kindType;aq=$clone(am,EZ).assignTo("reflect.Value.SetMapIndex",ap.key,0);$s=1;case 1:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}am=aq;ar=0;if(!((((am.flag&128)>>>0)===0))){ar=am.ptr;}else{ar=(am.$ptr_ptr||(am.$ptr_ptr=new JN(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},am)));}if(an.typ===HN.nil){AT(ao.typ,$clone(ao,EZ).pointer(),ar);$s=-1;return;}new FA(an.flag).mustBeExported();as=$clone(an,EZ).assignTo("reflect.Value.SetMapIndex",ap.elem,0);$s=2;case 2:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}an=as;at=0;if(!((((an.flag&128)>>>0)===0))){at=an.ptr;}else{at=(an.$ptr_ptr||(an.$ptr_ptr=new JN(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},an)));}$r=AS(ao.typ,$clone(ao,EZ).pointer(),ar,at);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.SetMapIndex};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.SetMapIndex=function(am,an){return this.$val.SetMapIndex(am,an);};EZ.ptr.prototype.SetUint=function(am){var $ptr,am,an,ao,ap;an=this;new FA(an.flag).mustBeAssignable();ao=new FA(an.flag).kind();ap=ao;if(ap===(7)){an.ptr.$set((am.$low>>>0));}else if(ap===(8)){an.ptr.$set((am.$low<<24>>>24));}else if(ap===(9)){an.ptr.$set((am.$low<<16>>>16));}else if(ap===(10)){an.ptr.$set((am.$low>>>0));}else if(ap===(11)){an.ptr.$set(am);}else if(ap===(12)){an.ptr.$set((am.$low>>>0));}else{$panic(new FD.ptr("reflect.Value.SetUint",new FA(an.flag).kind()));}};EZ.prototype.SetUint=function(am){return this.$val.SetUint(am);};EZ.ptr.prototype.SetPointer=function(am){var $ptr,am,an;an=this;new FA(an.flag).mustBeAssignable();new FA(an.flag).mustBe(26);an.ptr.$set(am);};EZ.prototype.SetPointer=function(am){return this.$val.SetPointer(am);};EZ.ptr.prototype.SetString=function(am){var $ptr,am,an;an=this;new FA(an.flag).mustBeAssignable();new FA(an.flag).mustBe(24);an.ptr.$set(am);};EZ.prototype.SetString=function(am){return this.$val.SetString(am);};EZ.ptr.prototype.String=function(){var $ptr,am,an,ao,ap,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=this;an=new FA(am.flag).kind();ao=an;if(ao===(0)){$s=-1;return"<invalid Value>";}else if(ao===(24)){$s=-1;return am.ptr.$get();}ap=$clone(am,EZ).Type().String();$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}$s=-1;return"<"+ap+" Value>";}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.String};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.String=function(){return this.$val.String();};EZ.ptr.prototype.TryRecv=function(){var $ptr,am,an,ao,ap,aq,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:am=new EZ.ptr(HN.nil,0,0);an=false;ao=this;new FA(ao.flag).mustBe(18);new FA(ao.flag).mustBeExported();aq=$clone(ao,EZ).recv(true);$s=1;case 1:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ap=aq;am=ap[0];an=ap[1];$s=-1;return[am,an];}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.TryRecv};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.TryRecv=function(){return this.$val.TryRecv();};EZ.ptr.prototype.TrySend=function(am){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;new FA(an.flag).mustBe(18);new FA(an.flag).mustBeExported();ao=$clone(an,EZ).send($clone(am,EZ),true);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.TrySend};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.TrySend=function(am){return this.$val.TrySend(am);};EZ.ptr.prototype.Type=function(){var $ptr,am,an,ao,ap,aq,ar,as,at,au;am=this;an=am.flag;if(an===0){$panic(new FD.ptr("reflect.Value.Type",0));}if(((an&512)>>>0)===0){return am.typ;}ao=(am.flag>>0)>>10>>0;if(am.typ.Kind()===20){ap=am.typ.kindType;if((ao>>>0)>=(ap.methods.$length>>>0)){$panic(new $String("reflect: internal error: invalid method index"));}ar=(aq=ap.methods,((ao<0||ao>=aq.$length)?($throwRuntimeError("index out of range"),undefined):aq.$array[aq.$offset+ao]));return am.typ.typeOff(ar.typ);}as=am.typ.uncommon();if(as===IO.nil||(ao>>>0)>=(as.mcount>>>0)){$panic(new $String("reflect: internal error: invalid method index"));}au=$clone((at=as.methods(),((ao<0||ao>=at.$length)?($throwRuntimeError("index out of range"),undefined):at.$array[at.$offset+ao])),CD);return am.typ.typeOff(au.mtyp);};EZ.prototype.Type=function(){return this.$val.Type();};EZ.ptr.prototype.Uint=function(){var $ptr,am,an,ao,ap,aq;am=this;an=new FA(am.flag).kind();ao=am.ptr;ap=an;if(ap===(7)){return new $Uint64(0,ao.$get());}else if(ap===(8)){return new $Uint64(0,ao.$get());}else if(ap===(9)){return new $Uint64(0,ao.$get());}else if(ap===(10)){return new $Uint64(0,ao.$get());}else if(ap===(11)){return ao.$get();}else if(ap===(12)){return(aq=ao.$get(),new $Uint64(0,aq.constructor===Number?aq:1));}$panic(new FD.ptr("reflect.Value.Uint",new FA(am.flag).kind()));};EZ.prototype.Uint=function(){return this.$val.Uint();};EZ.ptr.prototype.UnsafeAddr=function(){var $ptr,am;am=this;if(am.typ===HN.nil){$panic(new FD.ptr("reflect.Value.UnsafeAddr",0));}if(((am.flag&256)>>>0)===0){$panic(new $String("reflect.Value.UnsafeAddr of unaddressable value"));}return am.ptr;};EZ.prototype.UnsafeAddr=function(){return this.$val.UnsafeAddr();};FS=function(am,an,ao){var $ptr,am,an,ao,ap,aq,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if(!($interfaceIsEqual(an,ao))){$s=1;continue;}$s=2;continue;case 1:ap=an.String();$s=3;case 3:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=ao.String();$s=4;case 4:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}$panic(new $String(am+": "+ap+" != "+aq));case 2:$s=-1;return;}return;}if($f===undefined){$f={$blk:FS};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.$s=$s;$f.$r=$r;return $f;};FU=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=$clone(am,EZ).Len();ap=ao+an>>0;if(ap<ao){$panic(new $String("reflect.Append: slice overflow"));}aq=$clone(am,EZ).Cap();if(ap<=aq){$s=1;continue;}$s=2;continue;case 1:ar=$clone(am,EZ).Slice(0,ap);$s=3;case 3:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}$s=-1;return[ar,ao,ap];case 2:if(aq===0){aq=an;}else{while(true){if(!(aq<ap)){break;}if(ao<1024){aq=aq+(aq)>>0;}else{aq=aq+((as=aq/4,(as===as&&as!==1/0&&as!==-1/0)?as>>0:$throwRuntimeError("integer divide by zero")))>>0;}}}at=AA($clone(am,EZ).Type(),ap,aq);$s=4;case 4:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}au=at;av=BA($clone(au,EZ),$clone(am,EZ));$s=5;case 5:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}av;$s=-1;return[au,ao,ap];}return;}if($f===undefined){$f={$blk:FU};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.$s=$s;$f.$r=$r;return $f;};FV=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:new FA(am.flag).mustBe(23);ap=FU($clone(am,EZ),an.$length);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}ao=ap;am=ao[0];aq=ao[1];ar=ao[2];as=aq;at=0;au=as;av=at;case 2:if(!(au<ar)){$s=3;continue;}aw=$clone(am,EZ).Index(au);$s=4;case 4:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}$r=$clone(aw,EZ).Set($clone(((av<0||av>=an.$length)?($throwRuntimeError("index out of range"),undefined):an.$array[an.$offset+av]),EZ));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}ax=au+1>>0;ay=av+1>>0;au=ax;av=ay;$s=2;continue;case 3:$s=-1;return am;}return;}if($f===undefined){$f={$blk:FV};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Append=FV;GD=function(am){var $ptr,am,an,ao,ap,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=am.Kind();$s=3;case 3:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}if(!((an===21))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.MakeMap of non-map type"));case 2:ao=AP($assertType(am,HN));ap=am.common();$s=4;case 4:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}$s=-1;return new EZ.ptr(ap,ao,21);}return;}if($f===undefined){$f={$blk:GD};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.$s=$s;$f.$r=$r;return $f;};$pkg.MakeMap=GD;GE=function(am){var $ptr,am,an,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if(!(($clone(am,EZ).Kind()===22))){$s=-1;return am;}an=$clone(am,EZ).Elem();$s=1;case 1:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}$s=-1;return an;}return;}if($f===undefined){$f={$blk:GE};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Indirect=GE;GF=function(am){var $ptr,am,an,ao,ap,aq,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if($interfaceIsEqual(am,$ifaceNil)){$panic(new $String("reflect: New(nil)"));}an=AJ($assertType(am,HN));ao=22;ap=am.common();$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=ap.ptrTo();$s=2;case 2:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}$s=-1;return new EZ.ptr(aq,an,ao);}return;}if($f===undefined){$f={$blk:GF};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.$s=$s;$f.$r=$r;return $f;};$pkg.New=GF;EZ.ptr.prototype.assignTo=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ap=this;if(!((((ap.flag&512)>>>0)===0))){$s=1;continue;}$s=2;continue;case 1:aq=BF(am,$clone(ap,EZ));$s=3;case 3:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ap=aq;case 2:ar=DL(an,ap.typ);$s=8;case 8:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}if(ar){$s=5;continue;}if(DK(an,ap.typ)){$s=6;continue;}$s=7;continue;case 5:ap.typ=an;as=(ap.flag&480)>>>0;as=(as|((an.Kind()>>>0)))>>>0;$s=-1;return new EZ.ptr(an,ap.ptr,as);case 6:if(ao===0){ao=AJ(an);}at=BC($clone(ap,EZ),false);$s=9;case 9:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}au=at;av=an.NumMethod();$s=13;case 13:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}if(av===0){$s=10;continue;}$s=11;continue;case 10:ao.$set(au);$s=12;continue;case 11:BD(an,au,ao);case 12:$s=-1;return new EZ.ptr(an,ao,148);case 7:case 4:$panic(new $String(am+": value of type "+ap.typ.String()+" is not assignable to type "+an.String()));$s=-1;return new EZ.ptr(HN.nil,0,0);}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.assignTo};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.assignTo=function(am,an,ao){return this.$val.assignTo(am,an,ao);};EZ.ptr.prototype.Convert=function(am){var $ptr,am,an,ao,ap,aq,ar,as,at,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:an=this;if(!((((an.flag&512)>>>0)===0))){$s=1;continue;}$s=2;continue;case 1:ao=BF("Convert",$clone(an,EZ));$s=3;case 3:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}an=ao;case 2:ap=am.common();$s=4;case 4:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=GH(ap,an.typ);$s=5;case 5:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=aq;if(ar===$throwNilPointerError){$s=6;continue;}$s=7;continue;case 6:as=am.String();$s=8;case 8:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}$panic(new $String("reflect.Value.Convert: value of type "+an.typ.String()+" cannot be converted to type "+as));case 7:at=ar($clone(an,EZ),am);$s=9;case 9:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}$s=-1;return at;}return;}if($f===undefined){$f={$blk:EZ.ptr.prototype.Convert};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.$s=$s;$f.$r=$r;return $f;};EZ.prototype.Convert=function(am){return this.$val.Convert(am);};GH=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;bf=$f.bf;bg=$f.bg;bh=$f.bh;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=an.Kind();if((ao===(2))||(ao===(3))||(ao===(4))||(ao===(5))||(ao===(6))){$s=2;continue;}if((ao===(7))||(ao===(8))||(ao===(9))||(ao===(10))||(ao===(11))||(ao===(12))){$s=3;continue;}if((ao===(13))||(ao===(14))){$s=4;continue;}if((ao===(15))||(ao===(16))){$s=5;continue;}if(ao===(24)){$s=6;continue;}if(ao===(23)){$s=7;continue;}$s=8;continue;case 2:ap=am.Kind();if((ap===(2))||(ap===(3))||(ap===(4))||(ap===(5))||(ap===(6))||(ap===(7))||(ap===(8))||(ap===(9))||(ap===(10))||(ap===(11))||(ap===(12))){$s=-1;return GN;}else if((ap===(13))||(ap===(14))){$s=-1;return GR;}else if(ap===(24)){$s=-1;return GV;}$s=8;continue;case 3:aq=am.Kind();if((aq===(2))||(aq===(3))||(aq===(4))||(aq===(5))||(aq===(6))||(aq===(7))||(aq===(8))||(aq===(9))||(aq===(10))||(aq===(11))||(aq===(12))){$s=-1;return GO;}else if((aq===(13))||(aq===(14))){$s=-1;return GS;}else if(aq===(24)){$s=-1;return GW;}$s=8;continue;case 4:ar=am.Kind();if((ar===(2))||(ar===(3))||(ar===(4))||(ar===(5))||(ar===(6))){$s=-1;return GP;}else if((ar===(7))||(ar===(8))||(ar===(9))||(ar===(10))||(ar===(11))||(ar===(12))){$s=-1;return GQ;}else if((ar===(13))||(ar===(14))){$s=-1;return GT;}$s=8;continue;case 5:as=am.Kind();if((as===(15))||(as===(16))){$s=-1;return GU;}$s=8;continue;case 6:if(!(am.Kind()===23)){at=false;$s=11;continue s;}au=am.Elem().PkgPath();$s=12;case 12:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}at=au==="";case 11:if(at){$s=9;continue;}$s=10;continue;case 9:av=am.Elem().Kind();$s=14;case 14:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}aw=av;if(aw===(8)){$s=-1;return GY;}else if(aw===(5)){$s=-1;return HA;}case 13:case 10:$s=8;continue;case 7:if(!(am.Kind()===24)){ax=false;$s=17;continue s;}ay=an.Elem().PkgPath();$s=18;case 18:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}ax=ay==="";case 17:if(ax){$s=15;continue;}$s=16;continue;case 15:az=an.Elem().Kind();$s=20;case 20:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}ba=az;if(ba===(8)){$s=-1;return GX;}else if(ba===(5)){$s=-1;return GZ;}case 19:case 16:case 8:case 1:bb=DN(am,an,false);$s=23;case 23:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}if(bb){$s=21;continue;}$s=22;continue;case 21:$s=-1;return AZ;case 22:if(!((am.Kind()===22)&&am.Name()===""&&(an.Kind()===22)&&an.Name()==="")){bc=false;$s=26;continue s;}bd=am.Elem().common();$s=27;case 27:if($c){$c=false;bd=bd.$blk();}if(bd&&bd.$blk!==undefined){break s;}be=bd;bf=an.Elem().common();$s=28;case 28:if($c){$c=false;bf=bf.$blk();}if(bf&&bf.$blk!==undefined){break s;}bg=bf;bh=DN(be,bg,false);$s=29;case 29:if($c){$c=false;bh=bh.$blk();}if(bh&&bh.$blk!==undefined){break s;}bc=bh;case 26:if(bc){$s=24;continue;}$s=25;continue;case 24:$s=-1;return AZ;case 25:if(DK(am,an)){if(an.Kind()===20){$s=-1;return HC;}$s=-1;return HB;}$s=-1;return $throwNilPointerError;}return;}if($f===undefined){$f={$blk:GH};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$f.bf=bf;$f.bg=bg;$f.bh=bh;$f.$s=$s;$f.$r=$r;return $f;};GI=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ap=ao.common();$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=ap;ar=AJ(aq);as=aq.size;if(as===(4)){ar.$set($fround(an));}else if(as===(8)){ar.$set(an);}$s=-1;return new EZ.ptr(aq,ar,(((am|128)>>>0)|(aq.Kind()>>>0))>>>0);}return;}if($f===undefined){$f={$blk:GI};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};GJ=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ap=ao.common();$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=ap;ar=AJ(aq);as=aq.size;if(as===(8)){ar.$set(new $Complex64(an.$real,an.$imag));}else if(as===(16)){ar.$set(an);}$s=-1;return new EZ.ptr(aq,ar,(((am|128)>>>0)|(aq.Kind()>>>0))>>>0);}return;}if($f===undefined){$f={$blk:GJ};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};GK=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ap=GF(ao);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=$clone(ap,EZ).Elem();$s=2;case 2:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=aq;$clone(ar,EZ).SetString(an);ar.flag=(((ar.flag&~256)>>>0)|am)>>>0;$s=-1;return ar;}return;}if($f===undefined){$f={$blk:GK};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.$s=$s;$f.$r=$r;return $f;};GL=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ap=GF(ao);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=$clone(ap,EZ).Elem();$s=2;case 2:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=aq;$r=$clone(ar,EZ).SetBytes(an);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}ar.flag=(((ar.flag&~256)>>>0)|am)>>>0;$s=-1;return ar;}return;}if($f===undefined){$f={$blk:GL};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.$s=$s;$f.$r=$r;return $f;};GM=function(am,an,ao){var $ptr,am,an,ao,ap,aq,ar,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ap=GF(ao);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=$clone(ap,EZ).Elem();$s=2;case 2:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=aq;$r=$clone(ar,EZ).setRunes(an);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}ar.flag=(((ar.flag&~256)>>>0)|am)>>>0;$s=-1;return ar;}return;}if($f===undefined){$f={$blk:GM};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.$s=$s;$f.$r=$r;return $f;};GN=function(am,an){var $ptr,am,an,ao,ap,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ap=AK((am.flag&96)>>>0,(ao=$clone(am,EZ).Int(),new $Uint64(ao.$high,ao.$low)),an);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}$s=-1;return ap;}return;}if($f===undefined){$f={$blk:GN};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.$s=$s;$f.$r=$r;return $f;};GO=function(am,an){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=AK((am.flag&96)>>>0,$clone(am,EZ).Uint(),an);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;}return;}if($f===undefined){$f={$blk:GO};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};GP=function(am,an){var $ptr,am,an,ao,ap,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ap=AK((am.flag&96)>>>0,(ao=new $Int64(0,$clone(am,EZ).Float()),new $Uint64(ao.$high,ao.$low)),an);$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}$s=-1;return ap;}return;}if($f===undefined){$f={$blk:GP};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.$s=$s;$f.$r=$r;return $f;};GQ=function(am,an){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=AK((am.flag&96)>>>0,new $Uint64(0,$clone(am,EZ).Float()),an);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;}return;}if($f===undefined){$f={$blk:GQ};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};GR=function(am,an){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=GI((am.flag&96)>>>0,$flatten64($clone(am,EZ).Int()),an);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;}return;}if($f===undefined){$f={$blk:GR};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};GS=function(am,an){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=GI((am.flag&96)>>>0,$flatten64($clone(am,EZ).Uint()),an);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;}return;}if($f===undefined){$f={$blk:GS};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};GT=function(am,an){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=GI((am.flag&96)>>>0,$clone(am,EZ).Float(),an);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;}return;}if($f===undefined){$f={$blk:GT};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};GU=function(am,an){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=GJ((am.flag&96)>>>0,$clone(am,EZ).Complex(),an);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;}return;}if($f===undefined){$f={$blk:GU};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};GV=function(am,an){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=GK((am.flag&96)>>>0,$encodeRune($clone(am,EZ).Int().$low),an);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;}return;}if($f===undefined){$f={$blk:GV};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};GW=function(am,an){var $ptr,am,an,ao,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=GK((am.flag&96)>>>0,$encodeRune($clone(am,EZ).Uint().$low),an);$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return ao;}return;}if($f===undefined){$f={$blk:GW};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.$s=$s;$f.$r=$r;return $f;};GX=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=(am.flag&96)>>>0;ap=$clone(am,EZ).Bytes();$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=$bytesToString(ap);ar=an;as=GK(ao,aq,ar);$s=2;case 2:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}$s=-1;return as;}return;}if($f===undefined){$f={$blk:GX};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};GY=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=(am.flag&96)>>>0;ap=$clone(am,EZ).String();$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=new JC($stringToBytes(ap));ar=an;as=GL(ao,aq,ar);$s=2;case 2:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}$s=-1;return as;}return;}if($f===undefined){$f={$blk:GY};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};GZ=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=(am.flag&96)>>>0;ap=$clone(am,EZ).runes();$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=$runesToString(ap);ar=an;as=GK(ao,aq,ar);$s=2;case 2:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}$s=-1;return as;}return;}if($f===undefined){$f={$blk:GZ};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};HA=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=(am.flag&96)>>>0;ap=$clone(am,EZ).String();$s=1;case 1:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=new JP($stringToRunes(ap));ar=an;as=GM(ao,aq,ar);$s=2;case 2:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}$s=-1;return as;}return;}if($f===undefined){$f={$blk:HA};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.$s=$s;$f.$r=$r;return $f;};HB=function(am,an){var $ptr,am,an,ao,ap,aq,ar,as,at,au,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:ao=an.common();$s=1;case 1:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}ap=AJ(ao);$s=2;case 2:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=ap;ar=BC($clone(am,EZ),false);$s=3;case 3:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}as=ar;at=an.NumMethod();$s=7;case 7:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}if(at===0){$s=4;continue;}$s=5;continue;case 4:aq.$set(as);$s=6;continue;case 5:BD($assertType(an,HN),as,aq);case 6:au=an.common();$s=8;case 8:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}$s=-1;return new EZ.ptr(au,aq,(((((am.flag&96)>>>0)|128)>>>0)|20)>>>0);}return;}if($f===undefined){$f={$blk:HB};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.$s=$s;$f.$r=$r;return $f;};HC=function(am,an){var $ptr,am,an,ao,ap,aq,ar,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if($clone(am,EZ).IsNil()){$s=1;continue;}$s=2;continue;case 1:ao=AI(an);$s=3;case 3:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}ap=ao;ap.flag=(ap.flag|(((am.flag&96)>>>0)))>>>0;$s=-1;return ap;case 2:aq=$clone(am,EZ).Elem();$s=4;case 4:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=HB($clone(aq,EZ),an);$s=5;case 5:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}$s=-1;return ar;}return;}if($f===undefined){$f={$blk:HC};}$f.$ptr=$ptr;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.$s=$s;$f.$r=$r;return $f;};IO.methods=[{prop:"methods",name:"methods",pkg:"reflect",typ:$funcType([],[HP],false)}];JQ.methods=[{prop:"in$",name:"in",pkg:"reflect",typ:$funcType([],[HO],false)},{prop:"out",name:"out",pkg:"reflect",typ:$funcType([],[HO],false)}];O.methods=[{prop:"name",name:"name",pkg:"reflect",typ:$funcType([],[$String],false)},{prop:"tag",name:"tag",pkg:"reflect",typ:$funcType([],[$String],false)},{prop:"pkgPath",name:"pkgPath",pkg:"reflect",typ:$funcType([],[$String],false)},{prop:"isExported",name:"isExported",pkg:"reflect",typ:$funcType([],[$Bool],false)},{prop:"data",name:"data",pkg:"reflect",typ:$funcType([$Int],[IL],false)},{prop:"nameLen",name:"nameLen",pkg:"reflect",typ:$funcType([],[$Int],false)},{prop:"tagLen",name:"tagLen",pkg:"reflect",typ:$funcType([],[$Int],false)}];BZ.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];HN.methods=[{prop:"uncommon",name:"uncommon",pkg:"reflect",typ:$funcType([],[IO],false)},{prop:"nameOff",name:"nameOff",pkg:"reflect",typ:$funcType([CY],[O],false)},{prop:"typeOff",name:"typeOff",pkg:"reflect",typ:$funcType([CZ],[HN],false)},{prop:"ptrTo",name:"ptrTo",pkg:"reflect",typ:$funcType([],[HN],false)},{prop:"pointers",name:"pointers",pkg:"reflect",typ:$funcType([],[$Bool],false)},{prop:"Comparable",name:"Comparable",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[CP],false)},{prop:"textOff",name:"textOff",pkg:"reflect",typ:$funcType([DA],[$UnsafePointer],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Uintptr],false)},{prop:"Bits",name:"Bits",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Align",name:"Align",pkg:"",typ:$funcType([],[$Int],false)},{prop:"FieldAlign",name:"FieldAlign",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Kind",name:"Kind",pkg:"",typ:$funcType([],[BZ],false)},{prop:"common",name:"common",pkg:"reflect",typ:$funcType([],[HN],false)},{prop:"exportedMethods",name:"exportedMethods",pkg:"reflect",typ:$funcType([],[HP],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[CP,$Bool],false)},{prop:"PkgPath",name:"PkgPath",pkg:"",typ:$funcType([],[$String],false)},{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"ChanDir",name:"ChanDir",pkg:"",typ:$funcType([],[CE],false)},{prop:"IsVariadic",name:"IsVariadic",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Elem",name:"Elem",pkg:"",typ:$funcType([],[BY],false)},{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[DE],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([IZ],[DE],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[DE,$Bool],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([JS],[DE,$Bool],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([$Int],[BY],false)},{prop:"Key",name:"Key",pkg:"",typ:$funcType([],[BY],false)},{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"NumField",name:"NumField",pkg:"",typ:$funcType([],[$Int],false)},{prop:"NumIn",name:"NumIn",pkg:"",typ:$funcType([],[$Int],false)},{prop:"NumOut",name:"NumOut",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Out",name:"Out",pkg:"",typ:$funcType([$Int],[BY],false)},{prop:"Implements",name:"Implements",pkg:"",typ:$funcType([BY],[$Bool],false)},{prop:"AssignableTo",name:"AssignableTo",pkg:"",typ:$funcType([BY],[$Bool],false)},{prop:"ConvertibleTo",name:"ConvertibleTo",pkg:"",typ:$funcType([BY],[$Bool],false)}];CE.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];IX.methods=[{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[CP],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[CP,$Bool],false)}];JB.methods=[{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[DE],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([IZ],[DE],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([JS],[DE,$Bool],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[DE,$Bool],false)}];DF.methods=[{prop:"Get",name:"Get",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"Lookup",name:"Lookup",pkg:"",typ:$funcType([$String],[$String,$Bool],false)}];EZ.methods=[{prop:"object",name:"object",pkg:"reflect",typ:$funcType([],[IH],false)},{prop:"call",name:"call",pkg:"reflect",typ:$funcType([$String,IS],[IS],false)},{prop:"Cap",name:"Cap",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Elem",name:"Elem",pkg:"",typ:$funcType([],[EZ],false)},{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[EZ],false)},{prop:"Index",name:"Index",pkg:"",typ:$funcType([$Int],[EZ],false)},{prop:"InterfaceData",name:"InterfaceData",pkg:"",typ:$funcType([],[KB],false)},{prop:"IsNil",name:"IsNil",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Pointer",name:"Pointer",pkg:"",typ:$funcType([],[$Uintptr],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([EZ],[],false)},{prop:"SetBytes",name:"SetBytes",pkg:"",typ:$funcType([JC],[],false)},{prop:"SetCap",name:"SetCap",pkg:"",typ:$funcType([$Int],[],false)},{prop:"SetLen",name:"SetLen",pkg:"",typ:$funcType([$Int],[],false)},{prop:"Slice",name:"Slice",pkg:"",typ:$funcType([$Int,$Int],[EZ],false)},{prop:"Slice3",name:"Slice3",pkg:"",typ:$funcType([$Int,$Int,$Int],[EZ],false)},{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[],false)},{prop:"pointer",name:"pointer",pkg:"reflect",typ:$funcType([],[$UnsafePointer],false)},{prop:"Addr",name:"Addr",pkg:"",typ:$funcType([],[EZ],false)},{prop:"Bool",name:"Bool",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Bytes",name:"Bytes",pkg:"",typ:$funcType([],[JC],false)},{prop:"runes",name:"runes",pkg:"reflect",typ:$funcType([],[JP],false)},{prop:"CanAddr",name:"CanAddr",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"CanSet",name:"CanSet",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Call",name:"Call",pkg:"",typ:$funcType([IS],[IS],false)},{prop:"CallSlice",name:"CallSlice",pkg:"",typ:$funcType([IS],[IS],false)},{prop:"Complex",name:"Complex",pkg:"",typ:$funcType([],[$Complex128],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([IZ],[EZ],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[EZ],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([JS],[EZ],false)},{prop:"Float",name:"Float",pkg:"",typ:$funcType([],[$Float64],false)},{prop:"Int",name:"Int",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"CanInterface",name:"CanInterface",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Interface",name:"Interface",pkg:"",typ:$funcType([],[$emptyInterface],false)},{prop:"IsValid",name:"IsValid",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Kind",name:"Kind",pkg:"",typ:$funcType([],[BZ],false)},{prop:"MapIndex",name:"MapIndex",pkg:"",typ:$funcType([EZ],[EZ],false)},{prop:"MapKeys",name:"MapKeys",pkg:"",typ:$funcType([],[IS],false)},{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[EZ],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[EZ],false)},{prop:"NumField",name:"NumField",pkg:"",typ:$funcType([],[$Int],false)},{prop:"OverflowComplex",name:"OverflowComplex",pkg:"",typ:$funcType([$Complex128],[$Bool],false)},{prop:"OverflowFloat",name:"OverflowFloat",pkg:"",typ:$funcType([$Float64],[$Bool],false)},{prop:"OverflowInt",name:"OverflowInt",pkg:"",typ:$funcType([$Int64],[$Bool],false)},{prop:"OverflowUint",name:"OverflowUint",pkg:"",typ:$funcType([$Uint64],[$Bool],false)},{prop:"Recv",name:"Recv",pkg:"",typ:$funcType([],[EZ,$Bool],false)},{prop:"recv",name:"recv",pkg:"reflect",typ:$funcType([$Bool],[EZ,$Bool],false)},{prop:"Send",name:"Send",pkg:"",typ:$funcType([EZ],[],false)},{prop:"send",name:"send",pkg:"reflect",typ:$funcType([EZ,$Bool],[$Bool],false)},{prop:"SetBool",name:"SetBool",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"setRunes",name:"setRunes",pkg:"reflect",typ:$funcType([JP],[],false)},{prop:"SetComplex",name:"SetComplex",pkg:"",typ:$funcType([$Complex128],[],false)},{prop:"SetFloat",name:"SetFloat",pkg:"",typ:$funcType([$Float64],[],false)},{prop:"SetInt",name:"SetInt",pkg:"",typ:$funcType([$Int64],[],false)},{prop:"SetMapIndex",name:"SetMapIndex",pkg:"",typ:$funcType([EZ,EZ],[],false)},{prop:"SetUint",name:"SetUint",pkg:"",typ:$funcType([$Uint64],[],false)},{prop:"SetPointer",name:"SetPointer",pkg:"",typ:$funcType([$UnsafePointer],[],false)},{prop:"SetString",name:"SetString",pkg:"",typ:$funcType([$String],[],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"TryRecv",name:"TryRecv",pkg:"",typ:$funcType([],[EZ,$Bool],false)},{prop:"TrySend",name:"TrySend",pkg:"",typ:$funcType([EZ],[$Bool],false)},{prop:"Type",name:"Type",pkg:"",typ:$funcType([],[BY],false)},{prop:"Uint",name:"Uint",pkg:"",typ:$funcType([],[$Uint64],false)},{prop:"UnsafeAddr",name:"UnsafeAddr",pkg:"",typ:$funcType([],[$Uintptr],false)},{prop:"assignTo",name:"assignTo",pkg:"reflect",typ:$funcType([$String,HN,$UnsafePointer],[EZ],false)},{prop:"Convert",name:"Convert",pkg:"",typ:$funcType([BY],[EZ],false)}];FA.methods=[{prop:"kind",name:"kind",pkg:"reflect",typ:$funcType([],[BZ],false)},{prop:"mustBe",name:"mustBe",pkg:"reflect",typ:$funcType([BZ],[],false)},{prop:"mustBeExported",name:"mustBeExported",pkg:"reflect",typ:$funcType([],[],false)},{prop:"mustBeAssignable",name:"mustBeAssignable",pkg:"reflect",typ:$funcType([],[],false)}];KC.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];L.init("reflect",[{prop:"pkgPath",name:"pkgPath",exported:false,typ:CY,tag:""},{prop:"mcount",name:"mcount",exported:false,typ:$Uint16,tag:""},{prop:"_$2",name:"_",exported:false,typ:$Uint16,tag:""},{prop:"moff",name:"moff",exported:false,typ:$Uint32,tag:""},{prop:"_$4",name:"_",exported:false,typ:$Uint32,tag:""},{prop:"_methods",name:"_methods",exported:false,typ:HP,tag:""}]);N.init("reflect",[{prop:"rtype",name:"",exported:false,typ:CB,tag:"reflect:\"func\""},{prop:"inCount",name:"inCount",exported:false,typ:$Uint16,tag:""},{prop:"outCount",name:"outCount",exported:false,typ:$Uint16,tag:""},{prop:"_in",name:"_in",exported:false,typ:HO,tag:""},{prop:"_out",name:"_out",exported:false,typ:HO,tag:""}]);O.init("reflect",[{prop:"bytes",name:"bytes",exported:false,typ:IL,tag:""}]);P.init("reflect",[{prop:"name",name:"name",exported:false,typ:$String,tag:""},{prop:"tag",name:"tag",exported:false,typ:$String,tag:""},{prop:"pkgPath",name:"pkgPath",exported:false,typ:$String,tag:""},{prop:"exported",name:"exported",exported:false,typ:$Bool,tag:""}]);AU.init("reflect",[{prop:"t",name:"t",exported:false,typ:BY,tag:""},{prop:"m",name:"m",exported:false,typ:IH,tag:""},{prop:"keys",name:"keys",exported:false,typ:IH,tag:""},{prop:"i",name:"i",exported:false,typ:$Int,tag:""}]);BY.init([{prop:"Align",name:"Align",pkg:"",typ:$funcType([],[$Int],false)},{prop:"AssignableTo",name:"AssignableTo",pkg:"",typ:$funcType([BY],[$Bool],false)},{prop:"Bits",name:"Bits",pkg:"",typ:$funcType([],[$Int],false)},{prop:"ChanDir",name:"ChanDir",pkg:"",typ:$funcType([],[CE],false)},{prop:"Comparable",name:"Comparable",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"ConvertibleTo",name:"ConvertibleTo",pkg:"",typ:$funcType([BY],[$Bool],false)},{prop:"Elem",name:"Elem",pkg:"",typ:$funcType([],[BY],false)},{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[DE],false)},{prop:"FieldAlign",name:"FieldAlign",pkg:"",typ:$funcType([],[$Int],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([IZ],[DE],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[DE,$Bool],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([JS],[DE,$Bool],false)},{prop:"Implements",name:"Implements",pkg:"",typ:$funcType([BY],[$Bool],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([$Int],[BY],false)},{prop:"IsVariadic",name:"IsVariadic",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Key",name:"Key",pkg:"",typ:$funcType([],[BY],false)},{prop:"Kind",name:"Kind",pkg:"",typ:$funcType([],[BZ],false)},{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[CP],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[CP,$Bool],false)},{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"NumField",name:"NumField",pkg:"",typ:$funcType([],[$Int],false)},{prop:"NumIn",name:"NumIn",pkg:"",typ:$funcType([],[$Int],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"NumOut",name:"NumOut",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Out",name:"Out",pkg:"",typ:$funcType([$Int],[BY],false)},{prop:"PkgPath",name:"PkgPath",pkg:"",typ:$funcType([],[$String],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Uintptr],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"common",name:"common",pkg:"reflect",typ:$funcType([],[HN],false)},{prop:"uncommon",name:"uncommon",pkg:"reflect",typ:$funcType([],[IO],false)}]);CB.init("reflect",[{prop:"size",name:"size",exported:false,typ:$Uintptr,tag:""},{prop:"ptrdata",name:"ptrdata",exported:false,typ:$Uintptr,tag:""},{prop:"hash",name:"hash",exported:false,typ:$Uint32,tag:""},{prop:"tflag",name:"tflag",exported:false,typ:CA,tag:""},{prop:"align",name:"align",exported:false,typ:$Uint8,tag:""},{prop:"fieldAlign",name:"fieldAlign",exported:false,typ:$Uint8,tag:""},{prop:"kind",name:"kind",exported:false,typ:$Uint8,tag:""},{prop:"alg",name:"alg",exported:false,typ:IK,tag:""},{prop:"gcdata",name:"gcdata",exported:false,typ:IL,tag:""},{prop:"str",name:"str",exported:false,typ:CY,tag:""},{prop:"ptrToThis",name:"ptrToThis",exported:false,typ:CZ,tag:""}]);CC.init("reflect",[{prop:"hash",name:"hash",exported:false,typ:JT,tag:""},{prop:"equal",name:"equal",exported:false,typ:JU,tag:""}]);CD.init("reflect",[{prop:"name",name:"name",exported:false,typ:CY,tag:""},{prop:"mtyp",name:"mtyp",exported:false,typ:CZ,tag:""},{prop:"ifn",name:"ifn",exported:false,typ:DA,tag:""},{prop:"tfn",name:"tfn",exported:false,typ:DA,tag:""}]);CF.init("reflect",[{prop:"rtype",name:"",exported:false,typ:CB,tag:"reflect:\"array\""},{prop:"elem",name:"elem",exported:false,typ:HN,tag:""},{prop:"slice",name:"slice",exported:false,typ:HN,tag:""},{prop:"len",name:"len",exported:false,typ:$Uintptr,tag:""}]);CG.init("reflect",[{prop:"rtype",name:"",exported:false,typ:CB,tag:"reflect:\"chan\""},{prop:"elem",name:"elem",exported:false,typ:HN,tag:""},{prop:"dir",name:"dir",exported:false,typ:$Uintptr,tag:""}]);CH.init("reflect",[{prop:"name",name:"name",exported:false,typ:CY,tag:""},{prop:"typ",name:"typ",exported:false,typ:CZ,tag:""}]);CI.init("reflect",[{prop:"rtype",name:"",exported:false,typ:CB,tag:"reflect:\"interface\""},{prop:"pkgPath",name:"pkgPath",exported:false,typ:O,tag:""},{prop:"methods",name:"methods",exported:false,typ:IM,tag:""}]);CJ.init("reflect",[{prop:"rtype",name:"",exported:false,typ:CB,tag:"reflect:\"map\""},{prop:"key",name:"key",exported:false,typ:HN,tag:""},{prop:"elem",name:"elem",exported:false,typ:HN,tag:""},{prop:"bucket",name:"bucket",exported:false,typ:HN,tag:""},{prop:"hmap",name:"hmap",exported:false,typ:HN,tag:""},{prop:"keysize",name:"keysize",exported:false,typ:$Uint8,tag:""},{prop:"indirectkey",name:"indirectkey",exported:false,typ:$Uint8,tag:""},{prop:"valuesize",name:"valuesize",exported:false,typ:$Uint8,tag:""},{prop:"indirectvalue",name:"indirectvalue",exported:false,typ:$Uint8,tag:""},{prop:"bucketsize",name:"bucketsize",exported:false,typ:$Uint16,tag:""},{prop:"reflexivekey",name:"reflexivekey",exported:false,typ:$Bool,tag:""},{prop:"needkeyupdate",name:"needkeyupdate",exported:false,typ:$Bool,tag:""}]);CK.init("reflect",[{prop:"rtype",name:"",exported:false,typ:CB,tag:"reflect:\"ptr\""},{prop:"elem",name:"elem",exported:false,typ:HN,tag:""}]);CL.init("reflect",[{prop:"rtype",name:"",exported:false,typ:CB,tag:"reflect:\"slice\""},{prop:"elem",name:"elem",exported:false,typ:HN,tag:""}]);CM.init("reflect",[{prop:"name",name:"name",exported:false,typ:O,tag:""},{prop:"typ",name:"typ",exported:false,typ:HN,tag:""},{prop:"offset",name:"offset",exported:false,typ:$Uintptr,tag:""}]);CN.init("reflect",[{prop:"rtype",name:"",exported:false,typ:CB,tag:"reflect:\"struct\""},{prop:"pkgPath",name:"pkgPath",exported:false,typ:O,tag:""},{prop:"fields",name:"fields",exported:false,typ:IN,tag:""}]);CP.init("",[{prop:"Name",name:"Name",exported:true,typ:$String,tag:""},{prop:"PkgPath",name:"PkgPath",exported:true,typ:$String,tag:""},{prop:"Type",name:"Type",exported:true,typ:BY,tag:""},{prop:"Func",name:"Func",exported:true,typ:EZ,tag:""},{prop:"Index",name:"Index",exported:true,typ:$Int,tag:""}]);DE.init("",[{prop:"Name",name:"Name",exported:true,typ:$String,tag:""},{prop:"PkgPath",name:"PkgPath",exported:true,typ:$String,tag:""},{prop:"Type",name:"Type",exported:true,typ:BY,tag:""},{prop:"Tag",name:"Tag",exported:true,typ:DF,tag:""},{prop:"Offset",name:"Offset",exported:true,typ:$Uintptr,tag:""},{prop:"Index",name:"Index",exported:true,typ:IZ,tag:""},{prop:"Anonymous",name:"Anonymous",exported:true,typ:$Bool,tag:""}]);DG.init("reflect",[{prop:"typ",name:"typ",exported:false,typ:JB,tag:""},{prop:"index",name:"index",exported:false,typ:IZ,tag:""}]);EZ.init("reflect",[{prop:"typ",name:"typ",exported:false,typ:HN,tag:""},{prop:"ptr",name:"ptr",exported:false,typ:$UnsafePointer,tag:""},{prop:"flag",name:"",exported:false,typ:FA,tag:""}]);FD.init("",[{prop:"Method",name:"Method",exported:true,typ:$String,tag:""},{prop:"Kind",name:"Kind",exported:true,typ:BZ,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}S=HM.nil;U=HO.nil;DB=new HR.ptr(new E.RWMutex.ptr(new E.Mutex.ptr(0,0),0,0,0,0),false);G=false;M={};Q={};BG=$assertType($internalize($call,$emptyInterface),II);BL=$assertType($internalize($select,$emptyInterface),II);BH=J($jsObjectPtr);CQ=new IJ(["invalid","bool","int","int8","int16","int32","int64","uint","uint8","uint16","uint32","uint64","uintptr","float32","float64","complex64","complex128","array","chan","func","interface","map","ptr","slice","string","struct","unsafe.Pointer"]);FM=$assertType(AB(new $Uint8(0)),HN);$r=H();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["encoding/binary"]=(function(){var $pkg={},$init,A,B,C,D,E,F,G,N,O,X,Y,Z,AA,AB,AC,AD,AE,AF,AG,AH,AI,AJ,AK,AL,AM,AN,AO,AP,AQ,AR,U,H,I,K,L,P,Q,R;A=$packages["errors"];B=$packages["io"];C=$packages["math"];D=$packages["reflect"];E=$pkg.ByteOrder=$newType(8,$kindInterface,"binary.ByteOrder",true,"encoding/binary",true,null);F=$pkg.littleEndian=$newType(0,$kindStruct,"binary.littleEndian",true,"encoding/binary",false,function(){this.$val=this;if(arguments.length===0){return;}});G=$pkg.bigEndian=$newType(0,$kindStruct,"binary.bigEndian",true,"encoding/binary",false,function(){this.$val=this;if(arguments.length===0){return;}});N=$pkg.decoder=$newType(0,$kindStruct,"binary.decoder",true,"encoding/binary",false,function(order_,buf_){this.$val=this;if(arguments.length===0){this.order=$ifaceNil;this.buf=Y.nil;return;}this.order=order_;this.buf=buf_;});O=$pkg.encoder=$newType(0,$kindStruct,"binary.encoder",true,"encoding/binary",false,function(order_,buf_){this.$val=this;if(arguments.length===0){this.order=$ifaceNil;this.buf=Y.nil;return;}this.order=order_;this.buf=buf_;});X=$arrayType($Uint8,8);Y=$sliceType($Uint8);Z=$ptrType($Bool);AA=$ptrType($Int8);AB=$ptrType($Uint8);AC=$ptrType($Int16);AD=$ptrType($Uint16);AE=$ptrType($Int32);AF=$ptrType($Uint32);AG=$ptrType($Int64);AH=$ptrType($Uint64);AI=$sliceType($Bool);AJ=$sliceType($Int8);AK=$sliceType($Int16);AL=$sliceType($Uint16);AM=$sliceType($Int32);AN=$sliceType($Uint32);AO=$sliceType($Int64);AP=$sliceType($Uint64);AQ=$ptrType(N);AR=$ptrType(O);F.ptr.prototype.Uint16=function(a){var $ptr,a;$unused((1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]));return(((0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0])<<16>>>16)|(((1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1])<<16>>>16)<<8<<16>>>16))>>>0;};F.prototype.Uint16=function(a){return this.$val.Uint16(a);};F.ptr.prototype.PutUint16=function(a,b){var $ptr,a,b;$unused((1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]));(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=(b<<24>>>24));(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=((b>>>8<<16>>>16)<<24>>>24));};F.prototype.PutUint16=function(a,b){return this.$val.PutUint16(a,b);};F.ptr.prototype.Uint32=function(a){var $ptr,a;$unused((3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]));return(((((((0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0])>>>0)|(((1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1])>>>0)<<8>>>0))>>>0)|(((2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2])>>>0)<<16>>>0))>>>0)|(((3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3])>>>0)<<24>>>0))>>>0;};F.prototype.Uint32=function(a){return this.$val.Uint32(a);};F.ptr.prototype.PutUint32=function(a,b){var $ptr,a,b;$unused((3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]));(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=(b<<24>>>24));(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=((b>>>8>>>0)<<24>>>24));(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]=((b>>>16>>>0)<<24>>>24));(3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]=((b>>>24>>>0)<<24>>>24));};F.prototype.PutUint32=function(a,b){return this.$val.PutUint32(a,b);};F.ptr.prototype.Uint64=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;$unused((7>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+7]));return(b=(c=(d=(e=(f=(g=(h=new $Uint64(0,(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0])),i=$shiftLeft64(new $Uint64(0,(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1])),8),new $Uint64(h.$high|i.$high,(h.$low|i.$low)>>>0)),j=$shiftLeft64(new $Uint64(0,(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2])),16),new $Uint64(g.$high|j.$high,(g.$low|j.$low)>>>0)),k=$shiftLeft64(new $Uint64(0,(3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3])),24),new $Uint64(f.$high|k.$high,(f.$low|k.$low)>>>0)),l=$shiftLeft64(new $Uint64(0,(4>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+4])),32),new $Uint64(e.$high|l.$high,(e.$low|l.$low)>>>0)),m=$shiftLeft64(new $Uint64(0,(5>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+5])),40),new $Uint64(d.$high|m.$high,(d.$low|m.$low)>>>0)),n=$shiftLeft64(new $Uint64(0,(6>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+6])),48),new $Uint64(c.$high|n.$high,(c.$low|n.$low)>>>0)),o=$shiftLeft64(new $Uint64(0,(7>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+7])),56),new $Uint64(b.$high|o.$high,(b.$low|o.$low)>>>0));};F.prototype.Uint64=function(a){return this.$val.Uint64(a);};F.ptr.prototype.PutUint64=function(a,b){var $ptr,a,b;$unused((7>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+7]));(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=(b.$low<<24>>>24));(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=($shiftRightUint64(b,8).$low<<24>>>24));(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]=($shiftRightUint64(b,16).$low<<24>>>24));(3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]=($shiftRightUint64(b,24).$low<<24>>>24));(4>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+4]=($shiftRightUint64(b,32).$low<<24>>>24));(5>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+5]=($shiftRightUint64(b,40).$low<<24>>>24));(6>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+6]=($shiftRightUint64(b,48).$low<<24>>>24));(7>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+7]=($shiftRightUint64(b,56).$low<<24>>>24));};F.prototype.PutUint64=function(a,b){return this.$val.PutUint64(a,b);};F.ptr.prototype.String=function(){var $ptr;return"LittleEndian";};F.prototype.String=function(){return this.$val.String();};F.ptr.prototype.GoString=function(){var $ptr;return"binary.LittleEndian";};F.prototype.GoString=function(){return this.$val.GoString();};G.ptr.prototype.Uint16=function(a){var $ptr,a;$unused((1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]));return(((1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1])<<16>>>16)|(((0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0])<<16>>>16)<<8<<16>>>16))>>>0;};G.prototype.Uint16=function(a){return this.$val.Uint16(a);};G.ptr.prototype.PutUint16=function(a,b){var $ptr,a,b;$unused((1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]));(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=((b>>>8<<16>>>16)<<24>>>24));(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=(b<<24>>>24));};G.prototype.PutUint16=function(a,b){return this.$val.PutUint16(a,b);};G.ptr.prototype.Uint32=function(a){var $ptr,a;$unused((3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]));return(((((((3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3])>>>0)|(((2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2])>>>0)<<8>>>0))>>>0)|(((1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1])>>>0)<<16>>>0))>>>0)|(((0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0])>>>0)<<24>>>0))>>>0;};G.prototype.Uint32=function(a){return this.$val.Uint32(a);};G.ptr.prototype.PutUint32=function(a,b){var $ptr,a,b;$unused((3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]));(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=((b>>>24>>>0)<<24>>>24));(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=((b>>>16>>>0)<<24>>>24));(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]=((b>>>8>>>0)<<24>>>24));(3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]=(b<<24>>>24));};G.prototype.PutUint32=function(a,b){return this.$val.PutUint32(a,b);};G.ptr.prototype.Uint64=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;$unused((7>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+7]));return(b=(c=(d=(e=(f=(g=(h=new $Uint64(0,(7>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+7])),i=$shiftLeft64(new $Uint64(0,(6>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+6])),8),new $Uint64(h.$high|i.$high,(h.$low|i.$low)>>>0)),j=$shiftLeft64(new $Uint64(0,(5>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+5])),16),new $Uint64(g.$high|j.$high,(g.$low|j.$low)>>>0)),k=$shiftLeft64(new $Uint64(0,(4>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+4])),24),new $Uint64(f.$high|k.$high,(f.$low|k.$low)>>>0)),l=$shiftLeft64(new $Uint64(0,(3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3])),32),new $Uint64(e.$high|l.$high,(e.$low|l.$low)>>>0)),m=$shiftLeft64(new $Uint64(0,(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2])),40),new $Uint64(d.$high|m.$high,(d.$low|m.$low)>>>0)),n=$shiftLeft64(new $Uint64(0,(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1])),48),new $Uint64(c.$high|n.$high,(c.$low|n.$low)>>>0)),o=$shiftLeft64(new $Uint64(0,(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0])),56),new $Uint64(b.$high|o.$high,(b.$low|o.$low)>>>0));};G.prototype.Uint64=function(a){return this.$val.Uint64(a);};G.ptr.prototype.PutUint64=function(a,b){var $ptr,a,b;$unused((7>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+7]));(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=($shiftRightUint64(b,56).$low<<24>>>24));(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=($shiftRightUint64(b,48).$low<<24>>>24));(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]=($shiftRightUint64(b,40).$low<<24>>>24));(3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]=($shiftRightUint64(b,32).$low<<24>>>24));(4>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+4]=($shiftRightUint64(b,24).$low<<24>>>24));(5>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+5]=($shiftRightUint64(b,16).$low<<24>>>24));(6>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+6]=($shiftRightUint64(b,8).$low<<24>>>24));(7>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+7]=(b.$low<<24>>>24));};G.prototype.PutUint64=function(a,b){return this.$val.PutUint64(a,b);};G.ptr.prototype.String=function(){var $ptr;return"BigEndian";};G.prototype.String=function(){return this.$val.String();};G.ptr.prototype.GoString=function(){var $ptr;return"binary.BigEndian";};G.prototype.GoString=function(){return this.$val.GoString();};H=function(a,b,c){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,c,ca,cb,cc,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;b=$f.b;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;bf=$f.bf;bg=$f.bg;bh=$f.bh;bi=$f.bi;bj=$f.bj;bk=$f.bk;bl=$f.bl;bm=$f.bm;bn=$f.bn;bo=$f.bo;bp=$f.bp;bq=$f.bq;br=$f.br;bs=$f.bs;bt=$f.bt;bu=$f.bu;bv=$f.bv;bw=$f.bw;bx=$f.bx;by=$f.by;bz=$f.bz;c=$f.c;ca=$f.ca;cb=$f.cb;cc=$f.cc;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:d=P(c);if(!((d===0))){$s=1;continue;}$s=2;continue;case 1:e=X.zero();f=Y.nil;if(d>8){f=$makeSlice(Y,d);}else{f=$subslice(new Y(e),0,d);}h=B.ReadFull(a,f);$s=3;case 3:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;i=g[1];if(!($interfaceIsEqual(i,$ifaceNil))){$s=-1;return i;}j=c;if($assertType(j,Z,true)[1]){$s=4;continue;}if($assertType(j,AA,true)[1]){$s=5;continue;}if($assertType(j,AB,true)[1]){$s=6;continue;}if($assertType(j,AC,true)[1]){$s=7;continue;}if($assertType(j,AD,true)[1]){$s=8;continue;}if($assertType(j,AE,true)[1]){$s=9;continue;}if($assertType(j,AF,true)[1]){$s=10;continue;}if($assertType(j,AG,true)[1]){$s=11;continue;}if($assertType(j,AH,true)[1]){$s=12;continue;}if($assertType(j,AI,true)[1]){$s=13;continue;}if($assertType(j,AJ,true)[1]){$s=14;continue;}if($assertType(j,Y,true)[1]){$s=15;continue;}if($assertType(j,AK,true)[1]){$s=16;continue;}if($assertType(j,AL,true)[1]){$s=17;continue;}if($assertType(j,AM,true)[1]){$s=18;continue;}if($assertType(j,AN,true)[1]){$s=19;continue;}if($assertType(j,AO,true)[1]){$s=20;continue;}if($assertType(j,AP,true)[1]){$s=21;continue;}$s=22;continue;case 4:k=j.$val;k.$set(!((e[0]===0)));$s=22;continue;case 5:l=j.$val;l.$set((e[0]<<24>>24));$s=22;continue;case 6:m=j.$val;m.$set(e[0]);$s=22;continue;case 7:n=j.$val;ac=b.Uint16(f);$s=23;case 23:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}n.$set((ac<<16>>16));$s=22;continue;case 8:o=j.$val;ad=b.Uint16(f);$s=24;case 24:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}o.$set(ad);$s=22;continue;case 9:p=j.$val;ae=b.Uint32(f);$s=25;case 25:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}p.$set((ae>>0));$s=22;continue;case 10:q=j.$val;af=b.Uint32(f);$s=26;case 26:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}q.$set(af);$s=22;continue;case 11:r=j.$val;ah=b.Uint64(f);$s=27;case 27:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}r.$set((ag=ah,new $Int64(ag.$high,ag.$low)));$s=22;continue;case 12:s=j.$val;ai=b.Uint64(f);$s=28;case 28:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}s.$set(ai);$s=22;continue;case 13:t=j.$val;aj=f;ak=0;while(true){if(!(ak<aj.$length)){break;}al=ak;am=((ak<0||ak>=aj.$length)?($throwRuntimeError("index out of range"),undefined):aj.$array[aj.$offset+ak]);((al<0||al>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+al]=!((am===0)));ak++;}$s=22;continue;case 14:u=j.$val;an=f;ao=0;while(true){if(!(ao<an.$length)){break;}ap=ao;aq=((ao<0||ao>=an.$length)?($throwRuntimeError("index out of range"),undefined):an.$array[an.$offset+ao]);((ap<0||ap>=u.$length)?($throwRuntimeError("index out of range"),undefined):u.$array[u.$offset+ap]=(aq<<24>>24));ao++;}$s=22;continue;case 15:v=j.$val;$copySlice(v,f);$s=22;continue;case 16:w=j.$val;ar=w;as=0;case 29:if(!(as<ar.$length)){$s=30;continue;}at=as;au=b.Uint16($subslice(f,($imul(2,at))));$s=31;case 31:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}((at<0||at>=w.$length)?($throwRuntimeError("index out of range"),undefined):w.$array[w.$offset+at]=(au<<16>>16));as++;$s=29;continue;case 30:$s=22;continue;case 17:x=j.$val;av=x;aw=0;case 32:if(!(aw<av.$length)){$s=33;continue;}ax=aw;ay=b.Uint16($subslice(f,($imul(2,ax))));$s=34;case 34:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}((ax<0||ax>=x.$length)?($throwRuntimeError("index out of range"),undefined):x.$array[x.$offset+ax]=ay);aw++;$s=32;continue;case 33:$s=22;continue;case 18:y=j.$val;az=y;ba=0;case 35:if(!(ba<az.$length)){$s=36;continue;}bb=ba;bc=b.Uint32($subslice(f,($imul(4,bb))));$s=37;case 37:if($c){$c=false;bc=bc.$blk();}if(bc&&bc.$blk!==undefined){break s;}((bb<0||bb>=y.$length)?($throwRuntimeError("index out of range"),undefined):y.$array[y.$offset+bb]=(bc>>0));ba++;$s=35;continue;case 36:$s=22;continue;case 19:z=j.$val;bd=z;be=0;case 38:if(!(be<bd.$length)){$s=39;continue;}bf=be;bg=b.Uint32($subslice(f,($imul(4,bf))));$s=40;case 40:if($c){$c=false;bg=bg.$blk();}if(bg&&bg.$blk!==undefined){break s;}((bf<0||bf>=z.$length)?($throwRuntimeError("index out of range"),undefined):z.$array[z.$offset+bf]=bg);be++;$s=38;continue;case 39:$s=22;continue;case 20:aa=j.$val;bh=aa;bi=0;case 41:if(!(bi<bh.$length)){$s=42;continue;}bj=bi;bl=b.Uint64($subslice(f,($imul(8,bj))));$s=43;case 43:if($c){$c=false;bl=bl.$blk();}if(bl&&bl.$blk!==undefined){break s;}((bj<0||bj>=aa.$length)?($throwRuntimeError("index out of range"),undefined):aa.$array[aa.$offset+bj]=(bk=bl,new $Int64(bk.$high,bk.$low)));bi++;$s=41;continue;case 42:$s=22;continue;case 21:ab=j.$val;bm=ab;bn=0;case 44:if(!(bn<bm.$length)){$s=45;continue;}bo=bn;bp=b.Uint64($subslice(f,($imul(8,bo))));$s=46;case 46:if($c){$c=false;bp=bp.$blk();}if(bp&&bp.$blk!==undefined){break s;}((bo<0||bo>=ab.$length)?($throwRuntimeError("index out of range"),undefined):ab.$array[ab.$offset+bo]=bp);bn++;$s=44;continue;case 45:case 22:$s=-1;return $ifaceNil;case 2:bq=D.ValueOf(c);$s=47;case 47:if($c){$c=false;bq=bq.$blk();}if(bq&&bq.$blk!==undefined){break s;}br=bq;bs=-1;bt=$clone(br,D.Value).Kind();if(bt===(22)){$s=49;continue;}if(bt===(23)){$s=50;continue;}$s=51;continue;case 49:bu=$clone(br,D.Value).Elem();$s=52;case 52:if($c){$c=false;bu=bu.$blk();}if(bu&&bu.$blk!==undefined){break s;}br=bu;bv=K($clone(br,D.Value));$s=53;case 53:if($c){$c=false;bv=bv.$blk();}if(bv&&bv.$blk!==undefined){break s;}bs=bv;$s=51;continue;case 50:bw=K($clone(br,D.Value));$s=54;case 54:if($c){$c=false;bw=bw.$blk();}if(bw&&bw.$blk!==undefined){break s;}bs=bw;case 51:case 48:if(bs<0){$s=55;continue;}$s=56;continue;case 55:bx=D.TypeOf(c).String();$s=57;case 57:if($c){$c=false;bx=bx.$blk();}if(bx&&bx.$blk!==undefined){break s;}by=A.New("binary.Read: invalid type "+bx);$s=58;case 58:if($c){$c=false;by=by.$blk();}if(by&&by.$blk!==undefined){break s;}$s=-1;return by;case 56:bz=new N.ptr(b,$makeSlice(Y,bs));cb=B.ReadFull(a,bz.buf);$s=59;case 59:if($c){$c=false;cb=cb.$blk();}if(cb&&cb.$blk!==undefined){break s;}ca=cb;cc=ca[1];if(!($interfaceIsEqual(cc,$ifaceNil))){$s=-1;return cc;}$r=bz.value($clone(br,D.Value));$s=60;case 60:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:H};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.b=b;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$f.bf=bf;$f.bg=bg;$f.bh=bh;$f.bi=bi;$f.bj=bj;$f.bk=bk;$f.bl=bl;$f.bm=bm;$f.bn=bn;$f.bo=bo;$f.bp=bp;$f.bq=bq;$f.br=br;$f.bs=bs;$f.bt=bt;$f.bu=bu;$f.bv=bv;$f.bw=bw;$f.bx=bx;$f.by=by;$f.bz=bz;$f.c=c;$f.ca=ca;$f.cb=cb;$f.cc=cc;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Read=H;I=function(a,b,c){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,c,ca,cb,cc,cd,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;b=$f.b;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;bf=$f.bf;bg=$f.bg;bh=$f.bh;bi=$f.bi;bj=$f.bj;bk=$f.bk;bl=$f.bl;bm=$f.bm;bn=$f.bn;bo=$f.bo;bp=$f.bp;bq=$f.bq;br=$f.br;bs=$f.bs;bt=$f.bt;bu=$f.bu;bv=$f.bv;bw=$f.bw;bx=$f.bx;by=$f.by;bz=$f.bz;c=$f.c;ca=$f.ca;cb=$f.cb;cc=$f.cc;cd=$f.cd;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:d=P(c);if(!((d===0))){$s=1;continue;}$s=2;continue;case 1:e=X.zero();f=Y.nil;if(d>8){f=$makeSlice(Y,d);}else{f=$subslice(new Y(e),0,d);}g=c;if($assertType(g,Z,true)[1]){$s=3;continue;}if($assertType(g,$Bool,true)[1]){$s=4;continue;}if($assertType(g,AI,true)[1]){$s=5;continue;}if($assertType(g,AA,true)[1]){$s=6;continue;}if($assertType(g,$Int8,true)[1]){$s=7;continue;}if($assertType(g,AJ,true)[1]){$s=8;continue;}if($assertType(g,AB,true)[1]){$s=9;continue;}if($assertType(g,$Uint8,true)[1]){$s=10;continue;}if($assertType(g,Y,true)[1]){$s=11;continue;}if($assertType(g,AC,true)[1]){$s=12;continue;}if($assertType(g,$Int16,true)[1]){$s=13;continue;}if($assertType(g,AK,true)[1]){$s=14;continue;}if($assertType(g,AD,true)[1]){$s=15;continue;}if($assertType(g,$Uint16,true)[1]){$s=16;continue;}if($assertType(g,AL,true)[1]){$s=17;continue;}if($assertType(g,AE,true)[1]){$s=18;continue;}if($assertType(g,$Int32,true)[1]){$s=19;continue;}if($assertType(g,AM,true)[1]){$s=20;continue;}if($assertType(g,AF,true)[1]){$s=21;continue;}if($assertType(g,$Uint32,true)[1]){$s=22;continue;}if($assertType(g,AN,true)[1]){$s=23;continue;}if($assertType(g,AG,true)[1]){$s=24;continue;}if($assertType(g,$Int64,true)[1]){$s=25;continue;}if($assertType(g,AO,true)[1]){$s=26;continue;}if($assertType(g,AH,true)[1]){$s=27;continue;}if($assertType(g,$Uint64,true)[1]){$s=28;continue;}if($assertType(g,AP,true)[1]){$s=29;continue;}$s=30;continue;case 3:h=g.$val;if(h.$get()){e[0]=1;}else{e[0]=0;}$s=30;continue;case 4:i=g.$val;if(i){e[0]=1;}else{e[0]=0;}$s=30;continue;case 5:j=g.$val;ai=j;aj=0;while(true){if(!(aj<ai.$length)){break;}ak=aj;al=((aj<0||aj>=ai.$length)?($throwRuntimeError("index out of range"),undefined):ai.$array[ai.$offset+aj]);if(al){((ak<0||ak>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+ak]=1);}else{((ak<0||ak>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+ak]=0);}aj++;}$s=30;continue;case 6:k=g.$val;e[0]=(k.$get()<<24>>>24);$s=30;continue;case 7:l=g.$val;e[0]=(l<<24>>>24);$s=30;continue;case 8:m=g.$val;am=m;an=0;while(true){if(!(an<am.$length)){break;}ao=an;ap=((an<0||an>=am.$length)?($throwRuntimeError("index out of range"),undefined):am.$array[am.$offset+an]);((ao<0||ao>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+ao]=(ap<<24>>>24));an++;}$s=30;continue;case 9:n=g.$val;e[0]=n.$get();$s=30;continue;case 10:o=g.$val;e[0]=o;$s=30;continue;case 11:p=g.$val;f=p;$s=30;continue;case 12:q=g.$val;$r=b.PutUint16(f,(q.$get()<<16>>>16));$s=31;case 31:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=30;continue;case 13:r=g.$val;$r=b.PutUint16(f,(r<<16>>>16));$s=32;case 32:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=30;continue;case 14:s=g.$val;aq=s;ar=0;case 33:if(!(ar<aq.$length)){$s=34;continue;}as=ar;at=((ar<0||ar>=aq.$length)?($throwRuntimeError("index out of range"),undefined):aq.$array[aq.$offset+ar]);$r=b.PutUint16($subslice(f,($imul(2,as))),(at<<16>>>16));$s=35;case 35:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}ar++;$s=33;continue;case 34:$s=30;continue;case 15:t=g.$val;$r=b.PutUint16(f,t.$get());$s=36;case 36:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=30;continue;case 16:u=g.$val;$r=b.PutUint16(f,u);$s=37;case 37:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=30;continue;case 17:v=g.$val;au=v;av=0;case 38:if(!(av<au.$length)){$s=39;continue;}aw=av;ax=((av<0||av>=au.$length)?($throwRuntimeError("index out of range"),undefined):au.$array[au.$offset+av]);$r=b.PutUint16($subslice(f,($imul(2,aw))),ax);$s=40;case 40:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}av++;$s=38;continue;case 39:$s=30;continue;case 18:w=g.$val;$r=b.PutUint32(f,(w.$get()>>>0));$s=41;case 41:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=30;continue;case 19:x=g.$val;$r=b.PutUint32(f,(x>>>0));$s=42;case 42:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=30;continue;case 20:y=g.$val;ay=y;az=0;case 43:if(!(az<ay.$length)){$s=44;continue;}ba=az;bb=((az<0||az>=ay.$length)?($throwRuntimeError("index out of range"),undefined):ay.$array[ay.$offset+az]);$r=b.PutUint32($subslice(f,($imul(4,ba))),(bb>>>0));$s=45;case 45:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}az++;$s=43;continue;case 44:$s=30;continue;case 21:z=g.$val;$r=b.PutUint32(f,z.$get());$s=46;case 46:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=30;continue;case 22:aa=g.$val;$r=b.PutUint32(f,aa);$s=47;case 47:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=30;continue;case 23:ab=g.$val;bc=ab;bd=0;case 48:if(!(bd<bc.$length)){$s=49;continue;}be=bd;bf=((bd<0||bd>=bc.$length)?($throwRuntimeError("index out of range"),undefined):bc.$array[bc.$offset+bd]);$r=b.PutUint32($subslice(f,($imul(4,be))),bf);$s=50;case 50:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}bd++;$s=48;continue;case 49:$s=30;continue;case 24:ac=g.$val;$r=b.PutUint64(f,(bg=ac.$get(),new $Uint64(bg.$high,bg.$low)));$s=51;case 51:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=30;continue;case 25:ad=g.$val;$r=b.PutUint64(f,new $Uint64(ad.$high,ad.$low));$s=52;case 52:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=30;continue;case 26:ae=g.$val;bh=ae;bi=0;case 53:if(!(bi<bh.$length)){$s=54;continue;}bj=bi;bk=((bi<0||bi>=bh.$length)?($throwRuntimeError("index out of range"),undefined):bh.$array[bh.$offset+bi]);$r=b.PutUint64($subslice(f,($imul(8,bj))),new $Uint64(bk.$high,bk.$low));$s=55;case 55:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}bi++;$s=53;continue;case 54:$s=30;continue;case 27:af=g.$val;$r=b.PutUint64(f,af.$get());$s=56;case 56:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=30;continue;case 28:ag=g.$val;$r=b.PutUint64(f,ag);$s=57;case 57:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=30;continue;case 29:ah=g.$val;bl=ah;bm=0;case 58:if(!(bm<bl.$length)){$s=59;continue;}bn=bm;bo=((bm<0||bm>=bl.$length)?($throwRuntimeError("index out of range"),undefined):bl.$array[bl.$offset+bm]);$r=b.PutUint64($subslice(f,($imul(8,bn))),bo);$s=60;case 60:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}bm++;$s=58;continue;case 59:case 30:bq=a.Write(f);$s=61;case 61:if($c){$c=false;bq=bq.$blk();}if(bq&&bq.$blk!==undefined){break s;}bp=bq;br=bp[1];$s=-1;return br;case 2:bs=D.ValueOf(c);$s=62;case 62:if($c){$c=false;bs=bs.$blk();}if(bs&&bs.$blk!==undefined){break s;}bt=D.Indirect($clone(bs,D.Value));$s=63;case 63:if($c){$c=false;bt=bt.$blk();}if(bt&&bt.$blk!==undefined){break s;}bu=bt;bv=K($clone(bu,D.Value));$s=64;case 64:if($c){$c=false;bv=bv.$blk();}if(bv&&bv.$blk!==undefined){break s;}bw=bv;if(bw<0){$s=65;continue;}$s=66;continue;case 65:bx=D.TypeOf(c).String();$s=67;case 67:if($c){$c=false;bx=bx.$blk();}if(bx&&bx.$blk!==undefined){break s;}by=A.New("binary.Write: invalid type "+bx);$s=68;case 68:if($c){$c=false;by=by.$blk();}if(by&&by.$blk!==undefined){break s;}$s=-1;return by;case 66:bz=$makeSlice(Y,bw);ca=new O.ptr(b,bz);$r=ca.value($clone(bu,D.Value));$s=69;case 69:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}cc=a.Write(bz);$s=70;case 70:if($c){$c=false;cc=cc.$blk();}if(cc&&cc.$blk!==undefined){break s;}cb=cc;cd=cb[1];$s=-1;return cd;}return;}if($f===undefined){$f={$blk:I};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.b=b;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$f.bf=bf;$f.bg=bg;$f.bh=bh;$f.bi=bi;$f.bj=bj;$f.bk=bk;$f.bl=bl;$f.bm=bm;$f.bn=bn;$f.bo=bo;$f.bp=bp;$f.bq=bq;$f.br=br;$f.bs=bs;$f.bt=bt;$f.bu=bu;$f.bv=bv;$f.bw=bw;$f.bx=bx;$f.by=by;$f.bz=bz;$f.c=c;$f.ca=ca;$f.cb=cb;$f.cc=cc;$f.cd=cd;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Write=I;K=function(a){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if($clone(a,D.Value).Kind()===23){$s=1;continue;}$s=2;continue;case 1:b=$clone(a,D.Value).Type().Elem();$s=3;case 3:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=L(b);$s=4;case 4:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(d>=0){$s=-1;return $imul(d,$clone(a,D.Value).Len());}$s=-1;return-1;case 2:e=L($clone(a,D.Value).Type());$s=5;case 5:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=-1;return e;}return;}if($f===undefined){$f={$blk:K};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};L=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=a.Kind();$s=2;case 2:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;if(c===(17)){$s=3;continue;}if(c===(25)){$s=4;continue;}if((c===(1))||(c===(8))||(c===(9))||(c===(10))||(c===(11))||(c===(3))||(c===(4))||(c===(5))||(c===(6))||(c===(13))||(c===(14))||(c===(15))||(c===(16))){$s=5;continue;}$s=6;continue;case 3:d=a.Elem();$s=7;case 7:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=L(d);$s=8;case 8:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(f>=0){$s=9;continue;}$s=10;continue;case 9:g=a.Len();$s=11;case 11:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$s=-1;return $imul(f,g);case 10:$s=6;continue;case 4:h=0;i=0;k=a.NumField();$s=12;case 12:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=i;m=j;case 13:if(!(l<m)){$s=14;continue;}n=a.Field(l);$s=15;case 15:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=L(n.Type);$s=16;case 16:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=o;if(p<0){$s=-1;return-1;}h=h+(p)>>0;l=l+(1)>>0;$s=13;continue;case 14:$s=-1;return h;case 5:q=a.Size();$s=17;case 17:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}$s=-1;return(q>>0);case 6:case 1:$s=-1;return-1;}return;}if($f===undefined){$f={$blk:L};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.$s=$s;$f.$r=$r;return $f;};N.ptr.prototype.bool=function(){var $ptr,a,b,c;a=this;c=(b=a.buf,(0>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+0]));a.buf=$subslice(a.buf,1);return!((c===0));};N.prototype.bool=function(){return this.$val.bool();};O.ptr.prototype.bool=function(a){var $ptr,a,b,c,d;b=this;if(a){(c=b.buf,(0>=c.$length?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+0]=1));}else{(d=b.buf,(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0]=0));}b.buf=$subslice(b.buf,1);};O.prototype.bool=function(a){return this.$val.bool(a);};N.ptr.prototype.uint8=function(){var $ptr,a,b,c;a=this;c=(b=a.buf,(0>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+0]));a.buf=$subslice(a.buf,1);return c;};N.prototype.uint8=function(){return this.$val.uint8();};O.ptr.prototype.uint8=function(a){var $ptr,a,b,c;b=this;(c=b.buf,(0>=c.$length?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+0]=a));b.buf=$subslice(b.buf,1);};O.prototype.uint8=function(a){return this.$val.uint8(a);};N.ptr.prototype.uint16=function(){var $ptr,a,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.order.Uint16($subslice(a.buf,0,2));$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;a.buf=$subslice(a.buf,2);$s=-1;return c;}return;}if($f===undefined){$f={$blk:N.ptr.prototype.uint16};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.uint16=function(){return this.$val.uint16();};O.ptr.prototype.uint16=function(a){var $ptr,a,b,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;$r=b.order.PutUint16($subslice(b.buf,0,2),a);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}b.buf=$subslice(b.buf,2);$s=-1;return;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.uint16};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};O.prototype.uint16=function(a){return this.$val.uint16(a);};N.ptr.prototype.uint32=function(){var $ptr,a,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.order.Uint32($subslice(a.buf,0,4));$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;a.buf=$subslice(a.buf,4);$s=-1;return c;}return;}if($f===undefined){$f={$blk:N.ptr.prototype.uint32};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.uint32=function(){return this.$val.uint32();};O.ptr.prototype.uint32=function(a){var $ptr,a,b,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;$r=b.order.PutUint32($subslice(b.buf,0,4),a);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}b.buf=$subslice(b.buf,4);$s=-1;return;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.uint32};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};O.prototype.uint32=function(a){return this.$val.uint32(a);};N.ptr.prototype.uint64=function(){var $ptr,a,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.order.Uint64($subslice(a.buf,0,8));$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;a.buf=$subslice(a.buf,8);$s=-1;return c;}return;}if($f===undefined){$f={$blk:N.ptr.prototype.uint64};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.uint64=function(){return this.$val.uint64();};O.ptr.prototype.uint64=function(a){var $ptr,a,b,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;$r=b.order.PutUint64($subslice(b.buf,0,8),a);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}b.buf=$subslice(b.buf,8);$s=-1;return;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.uint64};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};O.prototype.uint64=function(a){return this.$val.uint64(a);};N.ptr.prototype.int8=function(){var $ptr,a;a=this;return(a.uint8()<<24>>24);};N.prototype.int8=function(){return this.$val.int8();};O.ptr.prototype.int8=function(a){var $ptr,a,b;b=this;b.uint8((a<<24>>>24));};O.prototype.int8=function(a){return this.$val.int8(a);};N.ptr.prototype.int16=function(){var $ptr,a,b,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.uint16();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=-1;return(b<<16>>16);}return;}if($f===undefined){$f={$blk:N.ptr.prototype.int16};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.int16=function(){return this.$val.int16();};O.ptr.prototype.int16=function(a){var $ptr,a,b,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;$r=b.uint16((a<<16>>>16));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.int16};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};O.prototype.int16=function(a){return this.$val.int16(a);};N.ptr.prototype.int32=function(){var $ptr,a,b,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.uint32();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=-1;return(b>>0);}return;}if($f===undefined){$f={$blk:N.ptr.prototype.int32};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.int32=function(){return this.$val.int32();};O.ptr.prototype.int32=function(a){var $ptr,a,b,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;$r=b.uint32((a>>>0));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.int32};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};O.prototype.int32=function(a){return this.$val.int32(a);};N.ptr.prototype.int64=function(){var $ptr,a,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;c=a.uint64();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=-1;return(b=c,new $Int64(b.$high,b.$low));}return;}if($f===undefined){$f={$blk:N.ptr.prototype.int64};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.int64=function(){return this.$val.int64();};O.ptr.prototype.int64=function(a){var $ptr,a,b,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;$r=b.uint64(new $Uint64(a.$high,a.$low));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.int64};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};O.prototype.int64=function(a){return this.$val.int64(a);};N.ptr.prototype.value=function(a){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=$clone(a,D.Value).Kind();if(c===(17)){$s=2;continue;}if(c===(25)){$s=3;continue;}if(c===(23)){$s=4;continue;}if(c===(1)){$s=5;continue;}if(c===(3)){$s=6;continue;}if(c===(4)){$s=7;continue;}if(c===(5)){$s=8;continue;}if(c===(6)){$s=9;continue;}if(c===(8)){$s=10;continue;}if(c===(9)){$s=11;continue;}if(c===(10)){$s=12;continue;}if(c===(11)){$s=13;continue;}if(c===(13)){$s=14;continue;}if(c===(14)){$s=15;continue;}if(c===(15)){$s=16;continue;}if(c===(16)){$s=17;continue;}$s=18;continue;case 2:d=$clone(a,D.Value).Len();e=0;case 19:if(!(e<d)){$s=20;continue;}f=$clone(a,D.Value).Index(e);$s=21;case 21:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$r=b.value($clone(f,D.Value));$s=22;case 22:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=e+(1)>>0;$s=19;continue;case 20:$s=18;continue;case 3:g=$clone(a,D.Value).Type();h=$clone(a,D.Value).NumField();i=0;case 23:if(!(i<h)){$s=24;continue;}j=$clone(a,D.Value).Field(i);$s=25;case 25:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;if($clone(k,D.Value).CanSet()){l=true;$s=29;continue s;}m=g.Field(i);$s=30;case 30:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=!(m.Name==="_");case 29:if(l){$s=26;continue;}$s=27;continue;case 26:$r=b.value($clone(k,D.Value));$s=31;case 31:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=28;continue;case 27:$r=b.skip($clone(k,D.Value));$s=32;case 32:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 28:i=i+(1)>>0;$s=23;continue;case 24:$s=18;continue;case 4:n=$clone(a,D.Value).Len();o=0;case 33:if(!(o<n)){$s=34;continue;}p=$clone(a,D.Value).Index(o);$s=35;case 35:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}$r=b.value($clone(p,D.Value));$s=36;case 36:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}o=o+(1)>>0;$s=33;continue;case 34:$s=18;continue;case 5:$clone(a,D.Value).SetBool(b.bool());$s=18;continue;case 6:$clone(a,D.Value).SetInt(new $Int64(0,b.int8()));$s=18;continue;case 7:q=b.int16();$s=37;case 37:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}$r=$clone(a,D.Value).SetInt(new $Int64(0,q));$s=38;case 38:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=18;continue;case 8:r=b.int32();$s=39;case 39:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}$r=$clone(a,D.Value).SetInt(new $Int64(0,r));$s=40;case 40:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=18;continue;case 9:s=b.int64();$s=41;case 41:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}$r=$clone(a,D.Value).SetInt(s);$s=42;case 42:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=18;continue;case 10:$clone(a,D.Value).SetUint(new $Uint64(0,b.uint8()));$s=18;continue;case 11:t=b.uint16();$s=43;case 43:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}$r=$clone(a,D.Value).SetUint(new $Uint64(0,t));$s=44;case 44:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=18;continue;case 12:u=b.uint32();$s=45;case 45:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}$r=$clone(a,D.Value).SetUint(new $Uint64(0,u));$s=46;case 46:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=18;continue;case 13:v=b.uint64();$s=47;case 47:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}$r=$clone(a,D.Value).SetUint(v);$s=48;case 48:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=18;continue;case 14:w=b.uint32();$s=49;case 49:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}x=C.Float32frombits(w);$s=50;case 50:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}$r=$clone(a,D.Value).SetFloat(x);$s=51;case 51:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=18;continue;case 15:y=b.uint64();$s=52;case 52:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}z=C.Float64frombits(y);$s=53;case 53:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}$r=$clone(a,D.Value).SetFloat(z);$s=54;case 54:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=18;continue;case 16:aa=b.uint32();$s=55;case 55:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}ab=C.Float32frombits(aa);$s=56;case 56:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}ac=ab;ad=b.uint32();$s=57;case 57:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}ae=C.Float32frombits(ad);$s=58;case 58:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}af=ae;$r=$clone(a,D.Value).SetComplex(new $Complex128(ac,af));$s=59;case 59:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=18;continue;case 17:ag=b.uint64();$s=60;case 60:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}ah=C.Float64frombits(ag);$s=61;case 61:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ai=ah;aj=b.uint64();$s=62;case 62:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=C.Float64frombits(aj);$s=63;case 63:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=ak;$r=$clone(a,D.Value).SetComplex(new $Complex128(ai,al));$s=64;case 64:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 18:case 1:$s=-1;return;}return;}if($f===undefined){$f={$blk:N.ptr.prototype.value};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.value=function(a){return this.$val.value(a);};O.ptr.prototype.value=function(a){var $ptr,a,aa,ab,ac,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=$clone(a,D.Value).Kind();if(c===(17)){$s=2;continue;}if(c===(25)){$s=3;continue;}if(c===(23)){$s=4;continue;}if(c===(1)){$s=5;continue;}if((c===(2))||(c===(3))||(c===(4))||(c===(5))||(c===(6))){$s=6;continue;}if((c===(7))||(c===(8))||(c===(9))||(c===(10))||(c===(11))||(c===(12))){$s=7;continue;}if((c===(13))||(c===(14))){$s=8;continue;}if((c===(15))||(c===(16))){$s=9;continue;}$s=10;continue;case 2:d=$clone(a,D.Value).Len();e=0;case 11:if(!(e<d)){$s=12;continue;}f=$clone(a,D.Value).Index(e);$s=13;case 13:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$r=b.value($clone(f,D.Value));$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=e+(1)>>0;$s=11;continue;case 12:$s=10;continue;case 3:g=$clone(a,D.Value).Type();h=$clone(a,D.Value).NumField();i=0;case 15:if(!(i<h)){$s=16;continue;}j=$clone(a,D.Value).Field(i);$s=17;case 17:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;if($clone(k,D.Value).CanSet()){l=true;$s=21;continue s;}m=g.Field(i);$s=22;case 22:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=!(m.Name==="_");case 21:if(l){$s=18;continue;}$s=19;continue;case 18:$r=b.value($clone(k,D.Value));$s=23;case 23:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=20;continue;case 19:$r=b.skip($clone(k,D.Value));$s=24;case 24:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 20:i=i+(1)>>0;$s=15;continue;case 16:$s=10;continue;case 4:n=$clone(a,D.Value).Len();o=0;case 25:if(!(o<n)){$s=26;continue;}p=$clone(a,D.Value).Index(o);$s=27;case 27:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}$r=b.value($clone(p,D.Value));$s=28;case 28:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}o=o+(1)>>0;$s=25;continue;case 26:$s=10;continue;case 5:b.bool($clone(a,D.Value).Bool());$s=10;continue;case 6:q=$clone(a,D.Value).Type().Kind();$s=30;case 30:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=q;if(r===(3)){$s=31;continue;}if(r===(4)){$s=32;continue;}if(r===(5)){$s=33;continue;}if(r===(6)){$s=34;continue;}$s=35;continue;case 31:b.int8(((s=$clone(a,D.Value).Int(),s.$low+((s.$high>>31)*4294967296))<<24>>24));$s=35;continue;case 32:$r=b.int16(((t=$clone(a,D.Value).Int(),t.$low+((t.$high>>31)*4294967296))<<16>>16));$s=36;case 36:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=35;continue;case 33:$r=b.int32(((u=$clone(a,D.Value).Int(),u.$low+((u.$high>>31)*4294967296))>>0));$s=37;case 37:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=35;continue;case 34:$r=b.int64($clone(a,D.Value).Int());$s=38;case 38:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 35:case 29:$s=10;continue;case 7:v=$clone(a,D.Value).Type().Kind();$s=40;case 40:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}w=v;if(w===(8)){$s=41;continue;}if(w===(9)){$s=42;continue;}if(w===(10)){$s=43;continue;}if(w===(11)){$s=44;continue;}$s=45;continue;case 41:b.uint8(($clone(a,D.Value).Uint().$low<<24>>>24));$s=45;continue;case 42:$r=b.uint16(($clone(a,D.Value).Uint().$low<<16>>>16));$s=46;case 46:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=45;continue;case 43:$r=b.uint32(($clone(a,D.Value).Uint().$low>>>0));$s=47;case 47:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=45;continue;case 44:$r=b.uint64($clone(a,D.Value).Uint());$s=48;case 48:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 45:case 39:$s=10;continue;case 8:x=$clone(a,D.Value).Type().Kind();$s=50;case 50:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}y=x;if(y===(13)){$s=51;continue;}if(y===(14)){$s=52;continue;}$s=53;continue;case 51:$r=b.uint32(C.Float32bits($fround($clone(a,D.Value).Float())));$s=54;case 54:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=53;continue;case 52:$r=b.uint64(C.Float64bits($clone(a,D.Value).Float()));$s=55;case 55:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 53:case 49:$s=10;continue;case 9:z=$clone(a,D.Value).Type().Kind();$s=57;case 57:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}aa=z;if(aa===(15)){$s=58;continue;}if(aa===(16)){$s=59;continue;}$s=60;continue;case 58:ab=$clone(a,D.Value).Complex();$r=b.uint32(C.Float32bits($fround(ab.$real)));$s=61;case 61:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.uint32(C.Float32bits($fround(ab.$imag)));$s=62;case 62:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=60;continue;case 59:ac=$clone(a,D.Value).Complex();$r=b.uint64(C.Float64bits(ac.$real));$s=63;case 63:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.uint64(C.Float64bits(ac.$imag));$s=64;case 64:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 60:case 56:case 10:case 1:$s=-1;return;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.value};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};O.prototype.value=function(a){return this.$val.value(a);};N.ptr.prototype.skip=function(a){var $ptr,a,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=K($clone(a,D.Value));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b.buf=$subslice(b.buf,c);$s=-1;return;}return;}if($f===undefined){$f={$blk:N.ptr.prototype.skip};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};N.prototype.skip=function(a){return this.$val.skip(a);};O.ptr.prototype.skip=function(a){var $ptr,a,b,c,d,e,f,g,h,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=K($clone(a,D.Value));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=$subslice(b.buf,0,d);f=0;while(true){if(!(f<e.$length)){break;}g=f;(h=b.buf,((g<0||g>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+g]=0));f++;}b.buf=$subslice(b.buf,d);$s=-1;return;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.skip};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};O.prototype.skip=function(a){return this.$val.skip(a);};P=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n;b=a;if($assertType(b,$Bool,true)[1]||$assertType(b,$Int8,true)[1]||$assertType(b,$Uint8,true)[1]||$assertType(b,Z,true)[1]||$assertType(b,AA,true)[1]||$assertType(b,AB,true)[1]){c=b;return 1;}else if($assertType(b,AJ,true)[1]){d=b.$val;return d.$length;}else if($assertType(b,Y,true)[1]){e=b.$val;return e.$length;}else if($assertType(b,$Int16,true)[1]||$assertType(b,$Uint16,true)[1]||$assertType(b,AC,true)[1]||$assertType(b,AD,true)[1]){f=b;return 2;}else if($assertType(b,AK,true)[1]){g=b.$val;return $imul(2,g.$length);}else if($assertType(b,AL,true)[1]){h=b.$val;return $imul(2,h.$length);}else if($assertType(b,$Int32,true)[1]||$assertType(b,$Uint32,true)[1]||$assertType(b,AE,true)[1]||$assertType(b,AF,true)[1]){i=b;return 4;}else if($assertType(b,AM,true)[1]){j=b.$val;return $imul(4,j.$length);}else if($assertType(b,AN,true)[1]){k=b.$val;return $imul(4,k.$length);}else if($assertType(b,$Int64,true)[1]||$assertType(b,$Uint64,true)[1]||$assertType(b,AG,true)[1]||$assertType(b,AH,true)[1]){l=b;return 8;}else if($assertType(b,AO,true)[1]){m=b.$val;return $imul(8,m.$length);}else if($assertType(b,AP,true)[1]){n=b.$val;return $imul(8,n.$length);}return 0;};Q=function(a,b){var $ptr,a,b,c;c=0;while(true){if(!((b.$high>0||(b.$high===0&&b.$low>=128)))){break;}((c<0||c>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+c]=(((b.$low<<24>>>24)|128)>>>0));b=$shiftRightUint64(b,(7));c=c+(1)>>0;}((c<0||c>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+c]=(b.$low<<24>>>24));return c+1>>0;};$pkg.PutUvarint=Q;R=function(a){var $ptr,a,b,c,d,e,f,g,h,i;b=new $Uint64(0,0);c=0;d=a;e=0;while(true){if(!(e<d.$length)){break;}f=e;g=((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]);if(g<128){if(f>9||(f===9)&&g>1){return[new $Uint64(0,0),-((f+1>>0))];}return[(h=$shiftLeft64(new $Uint64(0,g),c),new $Uint64(b.$high|h.$high,(b.$low|h.$low)>>>0)),f+1>>0];}b=(i=$shiftLeft64(new $Uint64(0,((g&127)>>>0)),c),new $Uint64(b.$high|i.$high,(b.$low|i.$low)>>>0));c=c+(7)>>>0;e++;}return[new $Uint64(0,0),0];};$pkg.Uvarint=R;F.methods=[{prop:"Uint16",name:"Uint16",pkg:"",typ:$funcType([Y],[$Uint16],false)},{prop:"PutUint16",name:"PutUint16",pkg:"",typ:$funcType([Y,$Uint16],[],false)},{prop:"Uint32",name:"Uint32",pkg:"",typ:$funcType([Y],[$Uint32],false)},{prop:"PutUint32",name:"PutUint32",pkg:"",typ:$funcType([Y,$Uint32],[],false)},{prop:"Uint64",name:"Uint64",pkg:"",typ:$funcType([Y],[$Uint64],false)},{prop:"PutUint64",name:"PutUint64",pkg:"",typ:$funcType([Y,$Uint64],[],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"GoString",name:"GoString",pkg:"",typ:$funcType([],[$String],false)}];G.methods=[{prop:"Uint16",name:"Uint16",pkg:"",typ:$funcType([Y],[$Uint16],false)},{prop:"PutUint16",name:"PutUint16",pkg:"",typ:$funcType([Y,$Uint16],[],false)},{prop:"Uint32",name:"Uint32",pkg:"",typ:$funcType([Y],[$Uint32],false)},{prop:"PutUint32",name:"PutUint32",pkg:"",typ:$funcType([Y,$Uint32],[],false)},{prop:"Uint64",name:"Uint64",pkg:"",typ:$funcType([Y],[$Uint64],false)},{prop:"PutUint64",name:"PutUint64",pkg:"",typ:$funcType([Y,$Uint64],[],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"GoString",name:"GoString",pkg:"",typ:$funcType([],[$String],false)}];AQ.methods=[{prop:"bool",name:"bool",pkg:"encoding/binary",typ:$funcType([],[$Bool],false)},{prop:"uint8",name:"uint8",pkg:"encoding/binary",typ:$funcType([],[$Uint8],false)},{prop:"uint16",name:"uint16",pkg:"encoding/binary",typ:$funcType([],[$Uint16],false)},{prop:"uint32",name:"uint32",pkg:"encoding/binary",typ:$funcType([],[$Uint32],false)},{prop:"uint64",name:"uint64",pkg:"encoding/binary",typ:$funcType([],[$Uint64],false)},{prop:"int8",name:"int8",pkg:"encoding/binary",typ:$funcType([],[$Int8],false)},{prop:"int16",name:"int16",pkg:"encoding/binary",typ:$funcType([],[$Int16],false)},{prop:"int32",name:"int32",pkg:"encoding/binary",typ:$funcType([],[$Int32],false)},{prop:"int64",name:"int64",pkg:"encoding/binary",typ:$funcType([],[$Int64],false)},{prop:"value",name:"value",pkg:"encoding/binary",typ:$funcType([D.Value],[],false)},{prop:"skip",name:"skip",pkg:"encoding/binary",typ:$funcType([D.Value],[],false)}];AR.methods=[{prop:"bool",name:"bool",pkg:"encoding/binary",typ:$funcType([$Bool],[],false)},{prop:"uint8",name:"uint8",pkg:"encoding/binary",typ:$funcType([$Uint8],[],false)},{prop:"uint16",name:"uint16",pkg:"encoding/binary",typ:$funcType([$Uint16],[],false)},{prop:"uint32",name:"uint32",pkg:"encoding/binary",typ:$funcType([$Uint32],[],false)},{prop:"uint64",name:"uint64",pkg:"encoding/binary",typ:$funcType([$Uint64],[],false)},{prop:"int8",name:"int8",pkg:"encoding/binary",typ:$funcType([$Int8],[],false)},{prop:"int16",name:"int16",pkg:"encoding/binary",typ:$funcType([$Int16],[],false)},{prop:"int32",name:"int32",pkg:"encoding/binary",typ:$funcType([$Int32],[],false)},{prop:"int64",name:"int64",pkg:"encoding/binary",typ:$funcType([$Int64],[],false)},{prop:"value",name:"value",pkg:"encoding/binary",typ:$funcType([D.Value],[],false)},{prop:"skip",name:"skip",pkg:"encoding/binary",typ:$funcType([D.Value],[],false)}];E.init([{prop:"PutUint16",name:"PutUint16",pkg:"",typ:$funcType([Y,$Uint16],[],false)},{prop:"PutUint32",name:"PutUint32",pkg:"",typ:$funcType([Y,$Uint32],[],false)},{prop:"PutUint64",name:"PutUint64",pkg:"",typ:$funcType([Y,$Uint64],[],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Uint16",name:"Uint16",pkg:"",typ:$funcType([Y],[$Uint16],false)},{prop:"Uint32",name:"Uint32",pkg:"",typ:$funcType([Y],[$Uint32],false)},{prop:"Uint64",name:"Uint64",pkg:"",typ:$funcType([Y],[$Uint64],false)}]);F.init("",[]);G.init("",[]);N.init("encoding/binary",[{prop:"order",name:"order",exported:false,typ:E,tag:""},{prop:"buf",name:"buf",exported:false,typ:Y,tag:""}]);O.init("encoding/binary",[{prop:"order",name:"order",exported:false,typ:E,tag:""},{prop:"buf",name:"buf",exported:false,typ:Y,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$pkg.LittleEndian=new F.ptr();$pkg.BigEndian=new G.ptr();U=A.New("binary: varint overflows a 64-bit integer");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["gopkg.in/dedis/crypto.v0/subtle"]=(function(){var $pkg={},$init,A,C;A=$packages["crypto/subtle"];C=function(a,b){var $ptr,a,b,c,d,e,f;c=0;d=a;e=0;while(true){if(!(e<d.$length)){break;}f=((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]);c=(c|(((f^b)<<24>>>24)))>>>0;e++;}return A.ConstantTimeByteEq(c,0);};$pkg.ConstantTimeAllEq=C;$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["gopkg.in/dedis/crypto.v0/util"]=(function(){var $pkg={},$init,A,B,C,D,J,G,E,I;A=$packages["errors"];B=$packages["io/ioutil"];C=$packages["os"];D=$packages["path/filepath"];J=$sliceType($Uint8);E=function(a,b){var $ptr,a,b,c,d,e;c=a.$length;d=c+b>>0;if(d>a.$capacity){e=$makeSlice(J,d,($imul(((d+1>>0)),2)));$copySlice(e,a);a=e;}return[$subslice(a,0,d),$subslice(a,c,d)];};$pkg.Grow=E;I=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j;if(a===J.nil){a=$makeSlice(J,b.$length);}else if(!((b.$length===a.$length))){$panic(new $String("Reverse requires equal-length slices"));}c=a.$length;d=0;e=c-1>>0;f=d;g=e;while(true){if(!(f<(h=((c+1>>0))/2,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero")))){break;}i=((g<0||g>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+g]);j=((f<0||f>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+f]);((f<0||f>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+f]=i);((g<0||g>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+g]=j);f=f+(1)>>0;g=g-(1)>>0;}return a;};$pkg.Reverse=I;$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}G=A.New("File was concurrently modified");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["gopkg.in/dedis/crypto.v0/ints"]=(function(){var $pkg={},$init,A,B;A=function(a,b){var $ptr,a,b,c,d,e;c=b;d=0;while(true){if(!(d<c.$length)){break;}e=((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]);if(e>a){a=e;}d++;}return a;};$pkg.Max=A;B=function(a,b){var $ptr,a,b,c,d,e;c=b;d=0;while(true){if(!(d<c.$length)){break;}e=((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]);if(e<a){a=e;}d++;}return a;};$pkg.Min=B;$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["math/big"]=(function(){var $pkg={},$init,F,E,I,A,J,C,B,H,G,D,X,BO,BW,BX,CU,DI,DJ,DK,DM,DO,DP,DR,DS,DT,DU,DW,BP,BY,BZ,CE,CM,CN,CO,CT,CV,K,L,M,N,O,P,Q,R,S,T,U,V,Y,Z,AA,AB,AC,AE,AG,AH,AI,AJ,AK,AL,AM,AN,AO,AP,BQ,BS,BT,BU,BV,CB,CC,CD,CF,CG,CH,CI,CJ,CK,CL,CP,CQ,CR,CS,CW;F=$packages["bytes"];E=$packages["encoding/binary"];I=$packages["errors"];A=$packages["fmt"];J=$packages["github.com/gopherjs/gopherjs/nosync"];C=$packages["io"];B=$packages["math"];H=$packages["math/rand"];G=$packages["strconv"];D=$packages["strings"];X=$pkg.Word=$newType(4,$kindUintptr,"big.Word",true,"math/big",true,null);BO=$pkg.Int=$newType(0,$kindStruct,"big.Int",true,"math/big",true,function(neg_,abs_){this.$val=this;if(arguments.length===0){this.neg=false;this.abs=BX.nil;return;}this.neg=neg_;this.abs=abs_;});BW=$pkg.byteReader=$newType(0,$kindStruct,"big.byteReader",true,"math/big",false,function(ScanState_){this.$val=this;if(arguments.length===0){this.ScanState=$ifaceNil;return;}this.ScanState=ScanState_;});BX=$pkg.nat=$newType(12,$kindSlice,"big.nat",true,"math/big",false,null);CU=$pkg.divisor=$newType(0,$kindStruct,"big.divisor",true,"math/big",false,function(bbb_,nbits_,ndigits_){this.$val=this;if(arguments.length===0){this.bbb=BX.nil;this.nbits=0;this.ndigits=0;return;}this.bbb=bbb_;this.nbits=nbits_;this.ndigits=ndigits_;});DI=$sliceType($emptyInterface);DJ=$arrayType(CU,64);DK=$structType("math/big",[{prop:"Mutex",name:"",exported:true,typ:J.Mutex,tag:""},{prop:"table",name:"table",exported:false,typ:DJ,tag:""}]);DM=$sliceType($Uint8);DO=$sliceType(X);DP=$ptrType(BO);DR=$ptrType(X);DS=$ptrType(BX);DT=$arrayType(BX,16);DU=$sliceType(CU);DW=$ptrType(H.Rand);K=function(m,n){var $ptr,m,n,o,p,q;o=0;p=0;q=AA(m,n);o=q[0];p=q[1];return[o,p];};L=function(m,n,o){var $ptr,m,n,o,p,q,r;p=0;q=0;r=AG(m,n,o);p=r[0];q=r[1];return[p,q];};M=function(m,n,o){var $ptr,m,n,o,p;p=0;p=AH(m,n,o);return p;};N=function(m,n,o){var $ptr,m,n,o,p;p=0;p=AI(m,n,o);return p;};O=function(m,n,o){var $ptr,m,n,o,p;p=0;p=AJ(m,n,o);return p;};P=function(m,n,o){var $ptr,m,n,o,p;p=0;p=AK(m,n,o);return p;};Q=function(m,n,o){var $ptr,m,n,o,p;p=0;p=AL(m,n,o);return p;};R=function(m,n,o){var $ptr,m,n,o,p;p=0;p=AM(m,n,o);return p;};S=function(m,n,o,p){var $ptr,m,n,o,p,q;q=0;q=AN(m,n,o,p);return q;};T=function(m,n,o){var $ptr,m,n,o,p;p=0;p=AO(m,n,o);return p;};U=function(m,n,o,p){var $ptr,m,n,o,p,q;q=0;q=AP(m,n,o,p);return q;};V=function(m){var $ptr,m,n;n=0;n=AC(m);return n;};Y=function(m,n,o){var $ptr,m,n,o,p,q,r;p=0;q=0;r=n+o>>>0;q=m+r>>>0;if(q<m||r<n){p=1;}return[p,q];};Z=function(m,n,o){var $ptr,m,n,o,p,q,r;p=0;q=0;r=n+o>>>0;q=m-r>>>0;if(q>m||r<n){p=1;}return[p,q];};AA=function(m,n){var $ptr,m,n,o,p,q,r,s,t,u,v,w,x;o=0;p=0;q=(m&65535)>>>0;r=m>>>16>>>0;s=(n&65535)>>>0;t=n>>>16>>>0;u=$imul(q,s)>>>0;v=($imul(r,s)>>>0)+(u>>>16>>>0)>>>0;w=(v&65535)>>>0;x=v>>>16>>>0;w=w+(($imul(q,t)>>>0))>>>0;o=(($imul(r,t)>>>0)+x>>>0)+(w>>>16>>>0)>>>0;p=$imul(m,n)>>>0;return[o,p];};AB=function(m,n,o){var $ptr,m,n,o,p,q,r,s;p=0;q=0;r=AA(m,n);p=r[0];s=r[1];q=s+o>>>0;if(q<s){p=p+(1)>>>0;}return[p,q];};AC=function(m){var $ptr,m,n,o,p,q,r;n=0;while(true){if(!(m>=32768)){break;}n=n+(16)>>0;m=(o=(16),o<32?(m>>>o):0)>>>0;}if(m>=128){m=(p=(8),p<32?(m>>>p):0)>>>0;n=n+(8)>>0;}if(m>=8){m=(q=(4),q<32?(m>>>q):0)>>>0;n=n+(4)>>0;}if(m>=2){m=(r=(2),r<32?(m>>>r):0)>>>0;n=n+(2)>>0;}if(m>=1){n=n+(1)>>0;}return n;};AE=function(m){var $ptr,m;return((32-V(m)>>0)>>>0);};AG=function(m,n,o){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,m,n,o,p,q,r,s,t,u,v,w,x,y,z;p=0;q=0;if(m>=o){r=4294967295;s=4294967295;p=r;q=s;return[p,q];}t=AE(o);o=(u=(t),u<32?(o<<u):0)>>>0;v=o>>>16>>>0;w=(o&65535)>>>0;z=(((x=t,x<32?(m<<x):0)>>>0)|((y=((32-t>>>0)),y<32?(n>>>y):0)>>>0))>>>0;ab=(aa=t,aa<32?(n<<aa):0)>>>0;ac=ab>>>16>>>0;ad=(ab&65535)>>>0;af=(ae=z/v,(ae===ae&&ae!==1/0&&ae!==-1/0)?ae>>>0:$throwRuntimeError("integer divide by zero"));ag=z-($imul(af,v)>>>0)>>>0;while(true){if(!(af>=65536||($imul(af,w)>>>0)>(($imul(65536,ag)>>>0)+ac>>>0))){break;}af=af-(1)>>>0;ag=ag+(v)>>>0;if(ag>=65536){break;}}ah=(($imul(z,65536)>>>0)+ac>>>0)-($imul(af,o)>>>0)>>>0;aj=(ai=ah/v,(ai===ai&&ai!==1/0&&ai!==-1/0)?ai>>>0:$throwRuntimeError("integer divide by zero"));ag=ah-($imul(aj,v)>>>0)>>>0;while(true){if(!(aj>=65536||($imul(aj,w)>>>0)>(($imul(65536,ag)>>>0)+ad>>>0))){break;}aj=aj-(1)>>>0;ag=ag+(v)>>>0;if(ag>=65536){break;}}ak=($imul(af,65536)>>>0)+aj>>>0;al=(am=t,am<32?((((($imul(ah,65536)>>>0)+ad>>>0)-($imul(aj,o)>>>0)>>>0))>>>am):0)>>>0;p=ak;q=al;return[p,q];};AH=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,u,v,w,x,y,z;p=0;if(false){q=m;r=0;while(true){if(!(r<q.$length)){break;}s=r;t=Y(((s<0||s>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+s]),((s<0||s>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+s]),p);p=t[0];((s<0||s>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+s]=t[1]);r++;}return p;}u=$subslice(n,0,m.$length);v=0;while(true){if(!(v<u.$length)){break;}w=v;x=((v<0||v>=u.$length)?($throwRuntimeError("index out of range"),undefined):u.$array[u.$offset+v]);y=((w<0||w>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+w]);z=(x+y>>>0)+p>>>0;((w<0||w>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+w]=z);p=(((((x&y)>>>0)|(((((x|y)>>>0))&~z)>>>0))>>>0))>>>31>>>0;v++;}return p;};AI=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,u,v,w,x,y,z;p=0;if(false){q=m;r=0;while(true){if(!(r<q.$length)){break;}s=r;t=Z(((s<0||s>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+s]),((s<0||s>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+s]),p);p=t[0];((s<0||s>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+s]=t[1]);r++;}return p;}u=$subslice(n,0,m.$length);v=0;while(true){if(!(v<u.$length)){break;}w=v;x=((v<0||v>=u.$length)?($throwRuntimeError("index out of range"),undefined):u.$array[u.$offset+v]);y=((w<0||w>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+w]);z=(x-y>>>0)-p>>>0;((w<0||w>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+w]=z);p=(((((y&~x)>>>0)|(((((y|(~x>>>0))>>>0))&z)>>>0))>>>0))>>>31>>>0;v++;}return p;};AJ=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,u,v,w,x,y;p=0;if(false){p=o;q=m;r=0;while(true){if(!(r<q.$length)){break;}s=r;t=Y(((s<0||s>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+s]),p,0);p=t[0];((s<0||s>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+s]=t[1]);r++;}return p;}p=o;u=$subslice(n,0,m.$length);v=0;while(true){if(!(v<u.$length)){break;}w=v;x=((v<0||v>=u.$length)?($throwRuntimeError("index out of range"),undefined):u.$array[u.$offset+v]);y=x+p>>>0;((w<0||w>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+w]=y);p=((x&~y)>>>0)>>>31>>>0;v++;}return p;};AK=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,u,v,w,x,y;p=0;if(false){p=o;q=m;r=0;while(true){if(!(r<q.$length)){break;}s=r;t=Z(((s<0||s>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+s]),p,0);p=t[0];((s<0||s>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+s]=t[1]);r++;}return p;}p=o;u=$subslice(n,0,m.$length);v=0;while(true){if(!(v<u.$length)){break;}w=v;x=((v<0||v>=u.$length)?($throwRuntimeError("index out of range"),undefined):u.$array[u.$offset+v]);y=x-p>>>0;((w<0||w>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+w]=y);p=(((y&~x)>>>0))>>>31>>>0;v++;}return p;};AL=function(m,n,o){var $ptr,aa,m,n,o,p,q,r,s,t,u,v,w,x,y,z;p=0;q=m.$length;if(q>0){r=32-o>>>0;t=(s=q-1>>0,((s<0||s>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+s]));p=(u=r,u<32?(t>>>u):0)>>>0;v=q-1>>0;while(true){if(!(v>0)){break;}w=t;t=(x=v-1>>0,((x<0||x>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+x]));((v<0||v>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+v]=((((y=o,y<32?(w<<y):0)>>>0)|((z=r,z<32?(t>>>z):0)>>>0))>>>0));v=v-(1)>>0;}(0>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+0]=((aa=o,aa<32?(t<<aa):0)>>>0));}return p;};AM=function(m,n,o){var $ptr,aa,m,n,o,p,q,r,s,t,u,v,w,x,y,z;p=0;q=m.$length;if(q>0){r=32-o>>>0;s=(0>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+0]);p=(t=r,t<32?(s<<t):0)>>>0;u=0;while(true){if(!(u<(q-1>>0))){break;}v=s;s=(w=u+1>>0,((w<0||w>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+w]));((u<0||u>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+u]=((((x=o,x<32?(v>>>x):0)>>>0)|((y=r,y<32?(s<<y):0)>>>0))>>>0));u=u+(1)>>0;}(aa=q-1>>0,((aa<0||aa>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+aa]=((z=o,z<32?(s>>>z):0)>>>0)));}return p;};AN=function(m,n,o,p){var $ptr,m,n,o,p,q,r,s,t,u;q=0;q=p;r=m;s=0;while(true){if(!(s<r.$length)){break;}t=s;u=AB(((t<0||t>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+t]),o,q);q=u[0];((t<0||t>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+t]=u[1]);s++;}return q;};AO=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,u,v,w;p=0;q=m;r=0;while(true){if(!(r<q.$length)){break;}s=r;t=AB(((s<0||s>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+s]),o,((s<0||s>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+s]));u=t[0];v=t[1];w=Y(v,p,0);p=w[0];((s<0||s>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+s]=w[1]);p=p+(u)>>>0;r++;}return p;};AP=function(m,n,o,p){var $ptr,m,n,o,p,q,r,s;q=0;q=n;r=m.$length-1>>0;while(true){if(!(r>=0)){break;}s=AG(q,((r<0||r>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+r]),p);((r<0||r>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+r]=s[0]);q=s[1];r=r-(1)>>0;}return q;};BO.ptr.prototype.Sign=function(){var $ptr,m;m=this;if(m.abs.$length===0){return 0;}if(m.neg){return-1;}return 1;};BO.prototype.Sign=function(){return this.$val.Sign();};BO.ptr.prototype.SetInt64=function(m){var $ptr,m,n,o;n=this;o=false;if((m.$high<0||(m.$high===0&&m.$low<0))){o=true;m=new $Int64(-m.$high,-m.$low);}n.abs=n.abs.setUint64(new $Uint64(m.$high,m.$low));n.neg=o;return n;};BO.prototype.SetInt64=function(m){return this.$val.SetInt64(m);};BO.ptr.prototype.SetUint64=function(m){var $ptr,m,n;n=this;n.abs=n.abs.setUint64(m);n.neg=false;return n;};BO.prototype.SetUint64=function(m){return this.$val.SetUint64(m);};BQ=function(m){var $ptr,m;return new BO.ptr(false,BX.nil).SetInt64(m);};$pkg.NewInt=BQ;BO.ptr.prototype.Set=function(m){var $ptr,m,n;n=this;if(!(n===m)){n.abs=n.abs.set(m.abs);n.neg=m.neg;}return n;};BO.prototype.Set=function(m){return this.$val.Set(m);};BO.ptr.prototype.Bits=function(){var $ptr,m,n;m=this;return(n=m.abs,$subslice(new DO(n.$array),n.$offset,n.$offset+n.$length));};BO.prototype.Bits=function(){return this.$val.Bits();};BO.ptr.prototype.SetBits=function(m){var $ptr,m,n;n=this;n.abs=$subslice(new BX(m.$array),m.$offset,m.$offset+m.$length).norm();n.neg=false;return n;};BO.prototype.SetBits=function(m){return this.$val.SetBits(m);};BO.ptr.prototype.Abs=function(m){var $ptr,m,n;n=this;n.Set(m);n.neg=false;return n;};BO.prototype.Abs=function(m){return this.$val.Abs(m);};BO.ptr.prototype.Neg=function(m){var $ptr,m,n;n=this;n.Set(m);n.neg=n.abs.$length>0&&!n.neg;return n;};BO.prototype.Neg=function(m){return this.$val.Neg(m);};BO.ptr.prototype.Add=function(m,n){var $ptr,m,n,o,p;o=this;p=m.neg;if(m.neg===n.neg){o.abs=o.abs.add(m.abs,n.abs);}else{if(m.abs.cmp(n.abs)>=0){o.abs=o.abs.sub(m.abs,n.abs);}else{p=!p;o.abs=o.abs.sub(n.abs,m.abs);}}o.neg=o.abs.$length>0&&p;return o;};BO.prototype.Add=function(m,n){return this.$val.Add(m,n);};BO.ptr.prototype.Sub=function(m,n){var $ptr,m,n,o,p;o=this;p=m.neg;if(!(m.neg===n.neg)){o.abs=o.abs.add(m.abs,n.abs);}else{if(m.abs.cmp(n.abs)>=0){o.abs=o.abs.sub(m.abs,n.abs);}else{p=!p;o.abs=o.abs.sub(n.abs,m.abs);}}o.neg=o.abs.$length>0&&p;return o;};BO.prototype.Sub=function(m,n){return this.$val.Sub(m,n);};BO.ptr.prototype.Mul=function(m,n){var $ptr,m,n,o;o=this;o.abs=o.abs.mul(m.abs,n.abs);o.neg=o.abs.$length>0&&!(m.neg===n.neg);return o;};BO.prototype.Mul=function(m,n){return this.$val.Mul(m,n);};BO.ptr.prototype.MulRange=function(m,n){var $ptr,m,n,o,p,q,r,s,t;o=this;if((m.$high>n.$high||(m.$high===n.$high&&m.$low>n.$low))){return o.SetInt64(new $Int64(0,1));}else if((m.$high<0||(m.$high===0&&m.$low<=0))&&(n.$high>0||(n.$high===0&&n.$low>=0))){return o.SetInt64(new $Int64(0,0));}p=false;if((m.$high<0||(m.$high===0&&m.$low<0))){p=(q=(r=new $Int64(n.$high-m.$high,n.$low-m.$low),new $Int64(r.$high&0,(r.$low&1)>>>0)),(q.$high===0&&q.$low===0));s=new $Int64(-n.$high,-n.$low);t=new $Int64(-m.$high,-m.$low);m=s;n=t;}o.abs=o.abs.mulRange(new $Uint64(m.$high,m.$low),new $Uint64(n.$high,n.$low));o.neg=p;return o;};BO.prototype.MulRange=function(m,n){return this.$val.MulRange(m,n);};BO.ptr.prototype.Binomial=function(m,n){var $ptr,m,n,o,p,q,r,s,t,u,v,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=[o];p=[p];q=this;if((r=$div64(m,new $Int64(0,2),false),(r.$high<n.$high||(r.$high===n.$high&&r.$low<n.$low)))&&(n.$high<m.$high||(n.$high===m.$high&&n.$low<=m.$low))){n=new $Int64(m.$high-n.$high,m.$low-n.$low);}s=new BO.ptr(false,BX.nil);t=new BO.ptr(false,BX.nil);o[0]=$clone(s,BO);p[0]=$clone(t,BO);o[0].MulRange((u=new $Int64(m.$high-n.$high,m.$low-n.$low),new $Int64(u.$high+0,u.$low+1)),m);p[0].MulRange(new $Int64(0,1),n);v=q.Quo(o[0],p[0]);$s=1;case 1:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}$s=-1;return v;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Binomial};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Binomial=function(m,n){return this.$val.Binomial(m,n);};BO.ptr.prototype.Quo=function(m,n){var $ptr,m,n,o,p,q,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;q=o.abs.div(BX.nil,m.abs,n.abs);$s=1;case 1:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;o.abs=p[0];o.neg=o.abs.$length>0&&!(m.neg===n.neg);$s=-1;return o;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Quo};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Quo=function(m,n){return this.$val.Quo(m,n);};BO.ptr.prototype.Rem=function(m,n){var $ptr,m,n,o,p,q,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;q=BX.nil.div(o.abs,m.abs,n.abs);$s=1;case 1:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;o.abs=p[1];o.neg=o.abs.$length>0&&m.neg;$s=-1;return o;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Rem};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Rem=function(m,n){return this.$val.Rem(m,n);};BO.ptr.prototype.QuoRem=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;r=p.abs.div(o.abs,m.abs,n.abs);$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=r;p.abs=q[0];o.abs=q[1];s=p.abs.$length>0&&!(m.neg===n.neg);t=o.abs.$length>0&&m.neg;p.neg=s;o.neg=t;$s=-1;return[p,o];}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.QuoRem};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.QuoRem=function(m,n,o){return this.$val.QuoRem(m,n,o);};BO.ptr.prototype.Div=function(m,n){var $ptr,m,n,o,p,q,r,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=[o];p=this;q=n.neg;o[0]=new BO.ptr(false,BX.nil);r=p.QuoRem(m,n,o[0]);$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}r;if(o[0].neg){if(q){p.Add(p,BP);}else{p.Sub(p,BP);}}$s=-1;return p;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Div};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Div=function(m,n){return this.$val.Div(m,n);};BO.ptr.prototype.Mod=function(m,n){var $ptr,m,n,o,p,q,r,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;p=n;if(o===n||CG(o.abs,n.abs)){p=new BO.ptr(false,BX.nil).Set(n);}q=new BO.ptr(false,BX.nil);r=q.QuoRem(m,n,o);$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}r;if(o.neg){if(p.neg){o.Sub(o,p);}else{o.Add(o,p);}}$s=-1;return o;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Mod};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Mod=function(m,n){return this.$val.Mod(m,n);};BO.ptr.prototype.DivMod=function(m,n,o){var $ptr,m,n,o,p,q,r,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;q=n;if(p===n||CG(p.abs,n.abs)){q=new BO.ptr(false,BX.nil).Set(n);}r=p.QuoRem(m,n,o);$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}r;if(o.neg){if(q.neg){p.Add(p,BP);o.Sub(o,q);}else{p.Sub(p,BP);o.Add(o,q);}}$s=-1;return[p,o];}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.DivMod};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.DivMod=function(m,n,o){return this.$val.DivMod(m,n,o);};BO.ptr.prototype.Cmp=function(m){var $ptr,m,n,o;n=0;o=this;if(o.neg===m.neg){n=o.abs.cmp(m.abs);if(o.neg){n=-n;}}else if(o.neg){n=-1;}else{n=1;}return n;};BO.prototype.Cmp=function(m){return this.$val.Cmp(m);};BS=function(m){var $ptr,m,n,o,p,q;if(m.$length===0){return new $Uint64(0,0);}o=(n=(0>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+0]),new $Uint64(0,n.constructor===Number?n:1));if(true&&m.$length>1){o=(p=$shiftLeft64((q=(1>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+1]),new $Uint64(0,q.constructor===Number?q:1)),32),new $Uint64(o.$high|p.$high,(o.$low|p.$low)>>>0));}return o;};BO.ptr.prototype.Int64=function(){var $ptr,m,n,o;m=this;o=(n=BS(m.abs),new $Int64(n.$high,n.$low));if(m.neg){o=new $Int64(-o.$high,-o.$low);}return o;};BO.prototype.Int64=function(){return this.$val.Int64();};BO.ptr.prototype.Uint64=function(){var $ptr,m;m=this;return BS(m.abs);};BO.prototype.Uint64=function(){return this.$val.Uint64();};BO.ptr.prototype.SetString=function(m,n){var $ptr,m,n,o,p,q,r,s,t,u,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;p=D.NewReader(m);r=o.scan(p,n);$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=r;s=q[2];if(!($interfaceIsEqual(s,$ifaceNil))){$s=-1;return[DP.nil,false];}t=p.ReadByte();u=t[1];if(!($interfaceIsEqual(u,C.EOF))){$s=-1;return[DP.nil,false];}$s=-1;return[o,true];}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.SetString};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.SetString=function(m,n){return this.$val.SetString(m,n);};BO.ptr.prototype.SetBytes=function(m){var $ptr,m,n;n=this;n.abs=n.abs.setBytes(m);n.neg=false;return n;};BO.prototype.SetBytes=function(m){return this.$val.SetBytes(m);};BO.ptr.prototype.Bytes=function(){var $ptr,m,n;m=this;n=$makeSlice(DM,($imul(m.abs.$length,4)));return $subslice(n,m.abs.bytes(n));};BO.prototype.Bytes=function(){return this.$val.Bytes();};BO.ptr.prototype.BitLen=function(){var $ptr,m;m=this;return m.abs.bitLen();};BO.prototype.BitLen=function(){return this.$val.BitLen();};BO.ptr.prototype.Exp=function(m,n,o){var $ptr,m,n,o,p,q,r,s,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;q=BX.nil;if(!n.neg){q=n.abs;}r=BX.nil;if(!(o===DP.nil)){r=o.abs;}s=p.abs.expNN(m.abs,q,r);$s=1;case 1:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}p.abs=s;p.neg=p.abs.$length>0&&m.neg&&q.$length>0&&((((0>=q.$length?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+0])&1)>>>0)===1);if(p.neg&&r.$length>0){p.abs=p.abs.sub(r,p.abs);p.neg=false;}$s=-1;return p;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Exp};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Exp=function(m,n,o){return this.$val.Exp(m,n,o);};BO.ptr.prototype.GCD=function(m,n,o,p){var $ptr,aa,ab,ac,ad,ae,af,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=this;if(o.Sign()<=0||p.Sign()<=0){q.SetInt64(new $Int64(0,0));if(!(m===DP.nil)){m.SetInt64(new $Int64(0,0));}if(!(n===DP.nil)){n.SetInt64(new $Int64(0,0));}$s=-1;return q;}if(m===DP.nil&&n===DP.nil){$s=1;continue;}$s=2;continue;case 1:r=q.binaryGCD(o,p);$s=3;case 3:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}$s=-1;return r;case 2:s=new BO.ptr(false,BX.nil).Set(o);t=new BO.ptr(false,BX.nil).Set(p);u=new BO.ptr(false,BX.nil);v=new BO.ptr(false,BX.nil).SetInt64(new $Int64(0,1));w=new BO.ptr(false,BX.nil).SetInt64(new $Int64(0,1));x=new BO.ptr(false,BX.nil);y=new BO.ptr(false,BX.nil);z=new BO.ptr(false,BX.nil);aa=new BO.ptr(false,BX.nil);case 4:if(!(t.abs.$length>0)){$s=5;continue;}ac=y.QuoRem(s,t,aa);$s=6;case 6:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ab=ac;y=ab[0];aa=ab[1];ad=t;ae=aa;af=s;s=ad;t=ae;aa=af;z.Set(u);u.Mul(u,y);u.neg=!u.neg;u.Add(u,w);w.Set(z);z.Set(v);v.Mul(v,y);v.neg=!v.neg;v.Add(v,x);x.Set(z);$s=4;continue;case 5:if(!(m===DP.nil)){BO.copy(m,w);}if(!(n===DP.nil)){BO.copy(n,x);}BO.copy(q,s);$s=-1;return q;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.GCD};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.GCD=function(m,n,o,p){return this.$val.GCD(m,n,o,p);};BO.ptr.prototype.binaryGCD=function(m,n){var $ptr,aa,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;p=o;q=new BO.ptr(false,BX.nil);if(m.abs.$length>n.abs.$length){$s=2;continue;}if(m.abs.$length<n.abs.$length){$s=3;continue;}$s=4;continue;case 2:r=q.Rem(m,n);$s=6;case 6:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}r;p.Set(n);$s=5;continue;case 3:s=q.Rem(n,m);$s=7;case 7:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}s;p.Set(m);$s=5;continue;case 4:q.Set(n);p.Set(m);case 5:case 1:if(q.abs.$length===0){$s=-1;return p;}t=p.abs.trailingZeroBits();u=q.abs.trailingZeroBits();if(u<t){t=u;}p.Rsh(p,t);q.Rsh(q,t);v=new BO.ptr(false,BX.nil);if(!(((((w=p.abs,(0>=w.$length?($throwRuntimeError("index out of range"),undefined):w.$array[w.$offset+0]))&1)>>>0)===0))){v.Neg(q);}else{v.Set(p);}while(true){if(!(v.abs.$length>0)){break;}v.Rsh(v,v.abs.trailingZeroBits());if(v.neg){x=v;y=q;q=x;v=y;q.neg=q.abs.$length>0&&!q.neg;}else{z=v;aa=p;p=z;v=aa;}v.Sub(p,q);}$s=-1;return o.Lsh(p,t);}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.binaryGCD};}$f.$ptr=$ptr;$f.aa=aa;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.binaryGCD=function(m,n){return this.$val.binaryGCD(m,n);};BO.ptr.prototype.Rand=function(m,n){var $ptr,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;o.neg=false;if(n.neg||(n.abs.$length===0)){o.abs=BX.nil;$s=-1;return o;}p=o.abs.random(m,n.abs,n.abs.bitLen());$s=1;case 1:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}o.abs=p;$s=-1;return o;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Rand};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Rand=function(m,n){return this.$val.Rand(m,n);};BO.ptr.prototype.ModInverse=function(m,n){var $ptr,m,n,o,p,q,r,s,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;if(m.neg){$s=1;continue;}$s=2;continue;case 1:p=new BO.ptr(false,BX.nil);q=p.Mod(m,n);$s=3;case 3:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}m=q;case 2:r=new BO.ptr(false,BX.nil);s=r.GCD(o,DP.nil,m,n);$s=4;case 4:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}s;if(o.neg){o.Add(o,n);}$s=-1;return o;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.ModInverse};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.ModInverse=function(m,n){return this.$val.ModInverse(m,n);};BT=function(m,n){var $ptr,aa,ab,ac,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=[o];p=[p];q=[q];if((n.abs.$length===0)||((((r=n.abs,(0>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+0]))&1)>>>0)===0)){$s=1;continue;}$s=2;continue;case 1:s=A.Sprintf("big: invalid 2nd argument to Int.Jacobi: need odd integer but got %s",new DI([n]));$s=3;case 3:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}$panic(new $String(s));case 2:t=new BO.ptr(false,BX.nil);u=new BO.ptr(false,BX.nil);v=new BO.ptr(false,BX.nil);o[0]=$clone(t,BO);p[0]=$clone(u,BO);q[0]=$clone(v,BO);o[0].Set(m);p[0].Set(n);w=1;if(p[0].neg){if(o[0].neg){w=-1;}p[0].neg=false;}case 4:if(p[0].Cmp(BP)===0){$s=-1;return w;}if(o[0].abs.$length===0){$s=-1;return 0;}x=o[0].Mod(o[0],p[0]);$s=6;case 6:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}x;if(o[0].abs.$length===0){$s=-1;return 0;}y=o[0].abs.trailingZeroBits();if(!((((y&1)>>>0)===0))){aa=((z=p[0].abs,(0>=z.$length?($throwRuntimeError("index out of range"),undefined):z.$array[z.$offset+0]))&7)>>>0;if((aa===3)||(aa===5)){w=-w;}}q[0].Rsh(o[0],y);if(((((ab=p[0].abs,(0>=ab.$length?($throwRuntimeError("index out of range"),undefined):ab.$array[ab.$offset+0]))&3)>>>0)===3)&&((((ac=q[0].abs,(0>=ac.$length?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+0]))&3)>>>0)===3)){w=-w;}o[0].Set(p[0]);p[0].Set(q[0]);$s=4;continue;case 5:$s=-1;return 0;}return;}if($f===undefined){$f={$blk:BT};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Jacobi=BT;BO.ptr.prototype.modSqrt3Mod4Prime=function(m,n){var $ptr,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;o.Set(n);o.Add(o,BP);o.Rsh(o,2);p=o.Exp(m,o,n);$s=1;case 1:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}p;$s=-1;return o;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.modSqrt3Mod4Prime};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.modSqrt3Mod4Prime=function(m,n){return this.$val.modSqrt3Mod4Prime(m,n);};BO.ptr.prototype.modSqrtTonelliShanks=function(m,n){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=[o];p=[p];q=[q];r=[r];s=[s];t=[t];u=this;r[0]=new BO.ptr(false,BX.nil);r[0].Sub(n,BP);v=r[0].abs.trailingZeroBits();r[0].Rsh(r[0],v);q[0]=new BO.ptr(false,BX.nil);q[0].SetInt64(new $Int64(0,2));case 1:w=BT(q[0],n);$s=3;case 3:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}if(!(!((w===-1)))){$s=2;continue;}q[0].Add(q[0],BP);$s=1;continue;case 2:x=new BO.ptr(false,BX.nil);y=new BO.ptr(false,BX.nil);z=new BO.ptr(false,BX.nil);aa=new BO.ptr(false,BX.nil);t[0]=$clone(x,BO);o[0]=$clone(y,BO);p[0]=$clone(z,BO);s[0]=$clone(aa,BO);t[0].Add(r[0],BP);t[0].Rsh(t[0],1);ab=t[0].Exp(m,t[0],n);$s=4;case 4:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}ab;ac=o[0].Exp(m,r[0],n);$s=5;case 5:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ac;ad=p[0].Exp(q[0],r[0],n);$s=6;case 6:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}ad;ae=v;case 7:af=0;s[0].Set(o[0]);case 9:if(!(!((s[0].Cmp(BP)===0)))){$s=10;continue;}ag=s[0].Mul(s[0],s[0]).Mod(s[0],n);$s=11;case 11:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}ag;af=af+(1)>>>0;$s=9;continue;case 10:if(af===0){$s=-1;return u.Set(t[0]);}ah=s[0].SetInt64(new $Int64(0,0)).SetBit(s[0],(((ae-af>>>0)-1>>>0)>>0),1).Exp(p[0],s[0],n);$s=12;case 12:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ah;ai=p[0].Mul(s[0],s[0]).Mod(p[0],n);$s=13;case 13:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ai;aj=t[0].Mul(t[0],s[0]).Mod(t[0],n);$s=14;case 14:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}aj;ak=o[0].Mul(o[0],p[0]).Mod(o[0],n);$s=15;case 15:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}ak;ae=af;$s=7;continue;case 8:$s=-1;return DP.nil;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.modSqrtTonelliShanks};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.modSqrtTonelliShanks=function(m,n){return this.$val.modSqrtTonelliShanks(m,n);};BO.ptr.prototype.ModSqrt=function(m,n){var $ptr,m,n,o,p,q,r,s,t,u,v,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;p=BT(m,n);$s=2;case 2:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}q=p;if(q===(-1)){$s=-1;return DP.nil;}else if(q===(0)){$s=-1;return o.SetInt64(new $Int64(0,0));}else if(q===(1)){$s=1;continue;}case 1:if(m.neg||m.Cmp(n)>=0){$s=3;continue;}$s=4;continue;case 3:r=new BO.ptr(false,BX.nil).Mod(m,n);$s=5;case 5:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}m=r;case 4:if(n.abs.$length>0&&((s=(t=n.abs,(0>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+0]))%4,s===s?s:$throwRuntimeError("integer divide by zero"))===3)){$s=6;continue;}$s=7;continue;case 6:u=o.modSqrt3Mod4Prime(m,n);$s=8;case 8:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}$s=-1;return u;case 7:v=o.modSqrtTonelliShanks(m,n);$s=9;case 9:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}$s=-1;return v;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.ModSqrt};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.ModSqrt=function(m,n){return this.$val.ModSqrt(m,n);};BO.ptr.prototype.Lsh=function(m,n){var $ptr,m,n,o;o=this;o.abs=o.abs.shl(m.abs,n);o.neg=m.neg;return o;};BO.prototype.Lsh=function(m,n){return this.$val.Lsh(m,n);};BO.ptr.prototype.Rsh=function(m,n){var $ptr,m,n,o,p;o=this;if(m.neg){p=o.abs.sub(m.abs,BY);p=p.shr(p,n);o.abs=p.add(p,BY);o.neg=true;return o;}o.abs=o.abs.shr(m.abs,n);o.neg=false;return o;};BO.prototype.Rsh=function(m,n){return this.$val.Rsh(m,n);};BO.ptr.prototype.Bit=function(m){var $ptr,m,n,o,p;n=this;if(m===0){if(n.abs.$length>0){return((((o=n.abs,(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0]))&1)>>>0)>>>0);}return 0;}if(m<0){$panic(new $String("negative bit index"));}if(n.neg){p=BX.nil.sub(n.abs,BY);return(p.bit((m>>>0))^1)>>>0;}return n.abs.bit((m>>>0));};BO.prototype.Bit=function(m){return this.$val.Bit(m);};BO.ptr.prototype.SetBit=function(m,n,o){var $ptr,m,n,o,p,q;p=this;if(n<0){$panic(new $String("negative bit index"));}if(m.neg){q=p.abs.sub(m.abs,BY);q=q.setBit(q,(n>>>0),(o^1)>>>0);p.abs=q.add(q,BY);p.neg=p.abs.$length>0;return p;}p.abs=p.abs.setBit(m.abs,(n>>>0),o);p.neg=false;return p;};BO.prototype.SetBit=function(m,n,o){return this.$val.SetBit(m,n,o);};BO.ptr.prototype.And=function(m,n){var $ptr,m,n,o,p,q,r,s,t;o=this;if(m.neg===n.neg){if(m.neg){p=BX.nil.sub(m.abs,BY);q=BX.nil.sub(n.abs,BY);o.abs=o.abs.add(o.abs.or(p,q),BY);o.neg=true;return o;}o.abs=o.abs.and(m.abs,n.abs);o.neg=false;return o;}if(m.neg){r=n;s=m;m=r;n=s;}t=BX.nil.sub(n.abs,BY);o.abs=o.abs.andNot(m.abs,t);o.neg=false;return o;};BO.prototype.And=function(m,n){return this.$val.And(m,n);};BO.ptr.prototype.AndNot=function(m,n){var $ptr,m,n,o,p,q,r,s;o=this;if(m.neg===n.neg){if(m.neg){p=BX.nil.sub(m.abs,BY);q=BX.nil.sub(n.abs,BY);o.abs=o.abs.andNot(q,p);o.neg=false;return o;}o.abs=o.abs.andNot(m.abs,n.abs);o.neg=false;return o;}if(m.neg){r=BX.nil.sub(m.abs,BY);o.abs=o.abs.add(o.abs.or(r,n.abs),BY);o.neg=true;return o;}s=BX.nil.sub(n.abs,BY);o.abs=o.abs.and(m.abs,s);o.neg=false;return o;};BO.prototype.AndNot=function(m,n){return this.$val.AndNot(m,n);};BO.ptr.prototype.Or=function(m,n){var $ptr,m,n,o,p,q,r,s,t;o=this;if(m.neg===n.neg){if(m.neg){p=BX.nil.sub(m.abs,BY);q=BX.nil.sub(n.abs,BY);o.abs=o.abs.add(o.abs.and(p,q),BY);o.neg=true;return o;}o.abs=o.abs.or(m.abs,n.abs);o.neg=false;return o;}if(m.neg){r=n;s=m;m=r;n=s;}t=BX.nil.sub(n.abs,BY);o.abs=o.abs.add(o.abs.andNot(t,m.abs),BY);o.neg=true;return o;};BO.prototype.Or=function(m,n){return this.$val.Or(m,n);};BO.ptr.prototype.Xor=function(m,n){var $ptr,m,n,o,p,q,r,s,t;o=this;if(m.neg===n.neg){if(m.neg){p=BX.nil.sub(m.abs,BY);q=BX.nil.sub(n.abs,BY);o.abs=o.abs.xor(p,q);o.neg=false;return o;}o.abs=o.abs.xor(m.abs,n.abs);o.neg=false;return o;}if(m.neg){r=n;s=m;m=r;n=s;}t=BX.nil.sub(n.abs,BY);o.abs=o.abs.add(o.abs.xor(m.abs,t),BY);o.neg=true;return o;};BO.prototype.Xor=function(m,n){return this.$val.Xor(m,n);};BO.ptr.prototype.Not=function(m){var $ptr,m,n;n=this;if(m.neg){n.abs=n.abs.sub(m.abs,BY);n.neg=false;return n;}n.abs=n.abs.add(m.abs,BY);n.neg=true;return n;};BO.prototype.Not=function(m){return this.$val.Not(m);};BO.ptr.prototype.Sqrt=function(m){var $ptr,m,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;if(m.neg){$panic(new $String("square root of negative number"));}n.neg=false;o=n.abs.sqrt(m.abs);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n.abs=o;$s=-1;return n;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Sqrt};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Sqrt=function(m){return this.$val.Sqrt(m);};BO.ptr.prototype.Text=function(m){var $ptr,m,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;if(n===DP.nil){$s=-1;return"<nil>";}o=n.abs.itoa(n.neg,m);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$s=-1;return $bytesToString(o);}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Text};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Text=function(m){return this.$val.Text(m);};BO.ptr.prototype.Append=function(m,n){var $ptr,m,n,o,p,q,r,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;if(o===DP.nil){$s=-1;return $appendSlice(m,"<nil>");}p=m;q=o.abs.itoa(o.neg,n);$s=1;case 1:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=q;$s=-1;return $appendSlice(p,r);}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Append};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Append=function(m,n){return this.$val.Append(m,n);};BO.ptr.prototype.String=function(){var $ptr,m,n,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;n=m.Text(10);$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$s=-1;return n;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.String};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.String=function(){return this.$val.String();};BU=function(m,n,o){var $ptr,m,n,o,p,q,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if(n.length>0){$s=1;continue;}$s=2;continue;case 1:p=new DM($stringToBytes(n));case 3:if(!(o>0)){$s=4;continue;}q=m.Write(p);$s=5;case 5:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}q;o=o-(1)>>0;$s=3;continue;case 4:case 2:$s=-1;return;}return;}if($f===undefined){$f={$blk:BU};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.$s=$s;$f.$r=$r;return $f;};BO.ptr.prototype.Format=function(m,n){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;p=0;q=n;if(q===(98)){$s=2;continue;}if(q===(111)){$s=3;continue;}if((q===(100))||(q===(115))||(q===(118))){$s=4;continue;}if((q===(120))||(q===(88))){$s=5;continue;}$s=6;continue;case 2:p=2;$s=7;continue;case 3:p=8;$s=7;continue;case 4:p=10;$s=7;continue;case 5:p=16;$s=7;continue;case 6:r=m;s=new $Int32(n);t=o.String();$s=8;case 8:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}u=new $String(t);v=A.Fprintf(r,"%%!%c(big.Int=%s)",new DI([s,u]));$s=9;case 9:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}v;$s=-1;return;case 7:case 1:if(o===DP.nil){$s=10;continue;}$s=11;continue;case 10:w=A.Fprint(m,new DI([new $String("<nil>")]));$s=12;case 12:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}w;$s=-1;return;case 11:x="";if(o.neg){$s=14;continue;}y=m.Flag(43);$s=18;case 18:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}if(y){$s=15;continue;}z=m.Flag(32);$s=19;case 19:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}if(z){$s=16;continue;}$s=17;continue;case 14:x="-";$s=17;continue;case 15:x="+";$s=17;continue;case 16:x=" ";case 17:case 13:aa="";ab=m.Flag(35);$s=22;case 22:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}if(ab){$s=20;continue;}$s=21;continue;case 20:ac=n;if(ac===(111)){aa="0";}else if(ac===(120)){aa="0x";}else if(ac===(88)){aa="0X";}case 21:ad=o.abs.utoa(p);$s=23;case 23:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}ae=ad;if(n===88){af=ae;ag=0;while(true){if(!(ag<af.$length)){break;}ah=ag;ai=((ag<0||ag>=af.$length)?($throwRuntimeError("index out of range"),undefined):af.$array[af.$offset+ag]);if(97<=ai&&ai<=122){((ah<0||ah>=ae.$length)?($throwRuntimeError("index out of range"),undefined):ae.$array[ae.$offset+ah]=(65+((ai-97<<24>>>24))<<24>>>24));}ag++;}}aj=0;ak=0;al=0;an=m.Precision();$s=24;case 24:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}am=an;ao=am[0];ap=am[1];if(ap){if(ae.$length<ao){ak=ao-ae.$length>>0;}else if((ae.$length===1)&&((0>=ae.$length?($throwRuntimeError("index out of range"),undefined):ae.$array[ae.$offset+0])===48)&&(ao===0)){$s=-1;return;}}aq=((x.length+aa.length>>0)+ak>>0)+ae.$length>>0;as=m.Width();$s=25;case 25:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}ar=as;at=ar[0];au=ar[1];if(au&&aq<at){$s=26;continue;}$s=27;continue;case 26:av=at-aq>>0;aw=m.Flag(45);$s=33;case 33:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}if(aw){$s=29;continue;}ax=m.Flag(48);$s=34;case 34:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}if(ax&&!ap){$s=30;continue;}$s=31;continue;case 29:al=av;$s=32;continue;case 30:ak=av;$s=32;continue;case 31:aj=av;case 32:case 28:case 27:$r=BU(m," ",aj);$s=35;case 35:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=BU(m,x,1);$s=36;case 36:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=BU(m,aa,1);$s=37;case 37:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=BU(m,"0",ak);$s=38;case 38:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}ay=m.Write(ae);$s=39;case 39:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}ay;$r=BU(m," ",al);$s=40;case 40:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Format};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Format=function(m,n){return this.$val.Format(m,n);};BO.ptr.prototype.scan=function(m,n){var $ptr,m,n,o,p,q,r,s,t,u,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;q=BV(m);$s=1;case 1:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;r=p[0];s=p[1];if(!($interfaceIsEqual(s,$ifaceNil))){$s=-1;return[DP.nil,0,s];}u=o.abs.scan(m,n,false);$s=2;case 2:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}t=u;o.abs=t[0];n=t[1];s=t[3];if(!($interfaceIsEqual(s,$ifaceNil))){$s=-1;return[DP.nil,n,s];}o.neg=o.abs.$length>0&&r;$s=-1;return[o,n,$ifaceNil];}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.scan};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.scan=function(m,n){return this.$val.scan(m,n);};BV=function(m){var $ptr,m,n,o,p,q,r,s,t,u,v,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=false;o=$ifaceNil;p=0;r=m.ReadByte();$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=r;p=q[0];o=q[1];if(!($interfaceIsEqual(o,$ifaceNil))){s=false;t=o;n=s;o=t;$s=-1;return[n,o];}u=p;if(u===(45)){$s=3;continue;}if(u===(43)){$s=4;continue;}$s=5;continue;case 3:n=true;$s=6;continue;case 4:$s=6;continue;case 5:v=m.UnreadByte();$s=7;case 7:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}v;case 6:case 2:$s=-1;return[n,o];}return;}if($f===undefined){$f={$blk:BV};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.$s=$s;$f.$r=$r;return $f;};BW.ptr.prototype.ReadByte=function(){var $ptr,m,n,o,p,q,r,s,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;o=m.ScanState.ReadRune();$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n[0];q=n[1];r=n[2];if(!((q===1))&&$interfaceIsEqual(r,$ifaceNil)){$s=2;continue;}$s=3;continue;case 2:s=A.Errorf("invalid rune %#U",new DI([new $Int32(p)]));$s=4;case 4:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;case 3:$s=-1;return[(p<<24>>>24),r];}return;}if($f===undefined){$f={$blk:BW.ptr.prototype.ReadByte};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.$s=$s;$f.$r=$r;return $f;};BW.prototype.ReadByte=function(){return this.$val.ReadByte();};BW.ptr.prototype.UnreadByte=function(){var $ptr,m,n,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;n=m.ScanState.UnreadRune();$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$s=-1;return n;}return;}if($f===undefined){$f={$blk:BW.ptr.prototype.UnreadByte};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.$s=$s;$f.$r=$r;return $f;};BW.prototype.UnreadByte=function(){return this.$val.UnreadByte();};BO.ptr.prototype.Scan=function(m,n){var $ptr,m,n,o,p,q,r,s,t,u,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;$r=m.SkipSpace();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}p=0;q=n;if(q===(98)){p=2;}else if(q===(111)){p=8;}else if(q===(100)){p=10;}else if((q===(120))||(q===(88))){p=16;}else if((q===(115))||(q===(118))){}else{$s=-1;return I.New("Int.Scan: invalid verb");}t=o.scan((s=new BW.ptr(m),new s.constructor.elem(s)),p);$s=2;case 2:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}r=t;u=r[2];$s=-1;return u;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.Scan};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.Scan=function(m,n){return this.$val.Scan(m,n);};BO.ptr.prototype.GobEncode=function(){var $ptr,m,n,o,p;m=this;if(m===DP.nil){return[DM.nil,$ifaceNil];}n=$makeSlice(DM,(1+($imul(m.abs.$length,4))>>0));o=m.abs.bytes(n)-1>>0;p=2;if(m.neg){p=(p|(1))>>>0;}((o<0||o>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+o]=p);return[$subslice(n,o),$ifaceNil];};BO.prototype.GobEncode=function(){return this.$val.GobEncode();};BO.ptr.prototype.GobDecode=function(m){var $ptr,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;if(m.$length===0){BO.copy(n,new BO.ptr(false,BX.nil));$s=-1;return $ifaceNil;}o=(0>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+0]);if(!(((o>>>1<<24>>>24)===1))){$s=1;continue;}$s=2;continue;case 1:p=A.Errorf("Int.GobDecode: encoding version %d not supported",new DI([new $Uint8((o>>>1<<24>>>24))]));$s=3;case 3:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}$s=-1;return p;case 2:n.neg=!((((o&1)>>>0)===0));n.abs=n.abs.setBytes($subslice(m,1));$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.GobDecode};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.GobDecode=function(m){return this.$val.GobDecode(m);};BO.ptr.prototype.MarshalText=function(){var $ptr,m,n,o,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=DM.nil;n=$ifaceNil;o=this;if(o===DP.nil){p=new DM($stringToBytes("<nil>"));q=$ifaceNil;m=p;n=q;$s=-1;return[m,n];}s=o.abs.itoa(o.neg,10);$s=1;case 1:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;t=$ifaceNil;m=r;n=t;$s=-1;return[m,n];}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.MarshalText};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.MarshalText=function(){return this.$val.MarshalText();};BO.ptr.prototype.UnmarshalText=function(m){var $ptr,m,n,o,p,q,r,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;p=n.SetString($bytesToString(m),0);$s=1;case 1:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}o=p;q=o[1];if(!q){$s=2;continue;}$s=3;continue;case 2:r=A.Errorf("math/big: cannot unmarshal %q into a *big.Int",new DI([m]));$s=4;case 4:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}$s=-1;return r;case 3:$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.UnmarshalText};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.UnmarshalText=function(m){return this.$val.UnmarshalText(m);};BO.ptr.prototype.MarshalJSON=function(){var $ptr,m,n,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;n=m.MarshalText();$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$s=-1;return n;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.MarshalJSON};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.MarshalJSON=function(){return this.$val.MarshalJSON();};BO.ptr.prototype.UnmarshalJSON=function(m){var $ptr,m,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;if($bytesToString(m)==="null"){$s=-1;return $ifaceNil;}o=n.UnmarshalText(m);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$s=-1;return o;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.UnmarshalJSON};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.UnmarshalJSON=function(m){return this.$val.UnmarshalJSON(m);};BX.prototype.clear=function(){var $ptr,m,n,o,p;m=this;n=m;o=0;while(true){if(!(o<n.$length)){break;}p=o;((p<0||p>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+p]=0);o++;}};$ptrType(BX).prototype.clear=function(){return this.$get().clear();};BX.prototype.norm=function(){var $ptr,m,n,o;m=this;n=m.$length;while(true){if(!(n>0&&((o=n-1>>0,((o<0||o>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+o]))===0))){break;}n=n-(1)>>0;}return $subslice(m,0,n);};$ptrType(BX).prototype.norm=function(){return this.$get().norm();};BX.prototype.make=function(m){var $ptr,m,n;n=this;if(m<=n.$capacity){return $subslice(n,0,m);}return $makeSlice(BX,m,(m+4>>0));};$ptrType(BX).prototype.make=function(m){return this.$get().make(m);};BX.prototype.setWord=function(m){var $ptr,m,n;n=this;if(m===0){return $subslice(n,0,0);}n=n.make(1);(0>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+0]=m);return n;};$ptrType(BX).prototype.setWord=function(m){return this.$get().setWord(m);};BX.prototype.setUint64=function(m){var $ptr,m,n,o,p,q,r,s,t,u;n=this;o=(m.$low>>>0);if((p=new $Uint64(0,o.constructor===Number?o:1),(p.$high===m.$high&&p.$low===m.$low))){return n.setWord(o);}q=0;r=m;while(true){if(!((r.$high>0||(r.$high===0&&r.$low>0)))){break;}q=q+(1)>>0;r=$shiftRightUint64(r,(32));}n=n.make(q);s=n;t=0;while(true){if(!(t<s.$length)){break;}u=t;((u<0||u>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+u]=(new $Uint64(m.$high&0,(m.$low&4294967295)>>>0).$low>>>0));m=$shiftRightUint64(m,(32));t++;}return n;};$ptrType(BX).prototype.setUint64=function(m){return this.$get().setUint64(m);};BX.prototype.set=function(m){var $ptr,m,n;n=this;n=n.make(m.$length);$copySlice(n,m);return n;};$ptrType(BX).prototype.set=function(m){return this.$get().set(m);};BX.prototype.add=function(m,n){var $ptr,m,n,o,p,q,r,s,t,u;o=this;p=m.$length;q=n.$length;if(p<q){return o.add(n,m);}else if((p===0)){return $subslice(o,0,0);}else if((q===0)){return o.set(m);}o=o.make(p+1>>0);s=M((r=$subslice(o,0,q),$subslice(new DO(r.$array),r.$offset,r.$offset+r.$length)),$subslice(new DO(m.$array),m.$offset,m.$offset+m.$length),$subslice(new DO(n.$array),n.$offset,n.$offset+n.$length));if(p>q){s=O((t=$subslice(o,q,p),$subslice(new DO(t.$array),t.$offset,t.$offset+t.$length)),(u=$subslice(m,q),$subslice(new DO(u.$array),u.$offset,u.$offset+u.$length)),s);}((p<0||p>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+p]=s);return o.norm();};$ptrType(BX).prototype.add=function(m,n){return this.$get().add(m,n);};BX.prototype.sub=function(m,n){var $ptr,m,n,o,p,q,r,s,t,u;o=this;p=m.$length;q=n.$length;if(p<q){$panic(new $String("underflow"));}else if((p===0)){return $subslice(o,0,0);}else if((q===0)){return o.set(m);}o=o.make(p);s=N((r=$subslice(o,0,q),$subslice(new DO(r.$array),r.$offset,r.$offset+r.$length)),$subslice(new DO(m.$array),m.$offset,m.$offset+m.$length),$subslice(new DO(n.$array),n.$offset,n.$offset+n.$length));if(p>q){s=P((t=$subslice(o,q),$subslice(new DO(t.$array),t.$offset,t.$offset+t.$length)),(u=$subslice(m,q),$subslice(new DO(u.$array),u.$offset,u.$offset+u.$length)),s);}if(!((s===0))){$panic(new $String("underflow"));}return o.norm();};$ptrType(BX).prototype.sub=function(m,n){return this.$get().sub(m,n);};BX.prototype.cmp=function(m){var $ptr,m,n,o,p,q,r;n=0;o=this;p=o.$length;q=m.$length;if(!((p===q))||(p===0)){if(p<q){n=-1;}else if(p>q){n=1;}return n;}r=p-1>>0;while(true){if(!(r>0&&(((r<0||r>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+r])===((r<0||r>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+r])))){break;}r=r-(1)>>0;}if(((r<0||r>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+r])<((r<0||r>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+r])){n=-1;}else if(((r<0||r>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+r])>((r<0||r>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+r])){n=1;}return n;};$ptrType(BX).prototype.cmp=function(m){return this.$get().cmp(m);};BX.prototype.mulAddWW=function(m,n,o){var $ptr,m,n,o,p,q,r;p=this;q=m.$length;if((q===0)||(n===0)){return p.setWord(o);}p=p.make(q+1>>0);((q<0||q>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+q]=S((r=$subslice(p,0,q),$subslice(new DO(r.$array),r.$offset,r.$offset+r.$length)),$subslice(new DO(m.$array),m.$offset,m.$offset+m.$length),n,o));return p.norm();};$ptrType(BX).prototype.mulAddWW=function(m,n,o){return this.$get().mulAddWW(m,n,o);};CB=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,u;$subslice(m,0,(n.$length+o.$length>>0)).clear();p=o;q=0;while(true){if(!(q<p.$length)){break;}r=q;s=((q<0||q>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+q]);if(!((s===0))){(u=n.$length+r>>0,((u<0||u>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+u]=T((t=$subslice(m,r,(r+n.$length>>0)),$subslice(new DO(t.$array),t.$offset,t.$offset+t.$length)),$subslice(new DO(n.$array),n.$offset,n.$offset+n.$length),s)));}q++;}};BX.prototype.montgomery=function(m,n,o,p,q){var $ptr,aa,m,n,o,p,q,r,s,t,u,v,w,x,y,z;r=this;if(!((m.$length===q))||!((n.$length===q))||!((o.$length===q))){$panic(new $String("math/big: mismatched montgomery number lengths"));}r=r.make(q);r.clear();s=0;t=0;while(true){if(!(t<q)){break;}u=((t<0||t>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+t]);v=T($subslice(new DO(r.$array),r.$offset,r.$offset+r.$length),$subslice(new DO(m.$array),m.$offset,m.$offset+m.$length),u);w=$imul((0>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+0]),p)>>>0;x=T($subslice(new DO(r.$array),r.$offset,r.$offset+r.$length),$subslice(new DO(o.$array),o.$offset,o.$offset+o.$length),w);$copySlice(r,$subslice(r,1));y=s+v>>>0;z=y+x>>>0;(aa=q-1>>0,((aa<0||aa>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+aa]=z));if(y<v||z<x){s=1;}else{s=0;}t=t+(1)>>0;}if(!((s===0))){N($subslice(new DO(r.$array),r.$offset,r.$offset+r.$length),$subslice(new DO(r.$array),r.$offset,r.$offset+r.$length),$subslice(new DO(o.$array),o.$offset,o.$offset+o.$length));}return r;};$ptrType(BX).prototype.montgomery=function(m,n,o,p,q){return this.$get().montgomery(m,n,o,p,q);};CC=function(m,n,o){var $ptr,m,n,o,p,q,r,s;q=M((p=$subslice(m,0,o),$subslice(new DO(p.$array),p.$offset,p.$offset+p.$length)),$subslice(new DO(m.$array),m.$offset,m.$offset+m.$length),$subslice(new DO(n.$array),n.$offset,n.$offset+n.$length));if(!((q===0))){O((r=$subslice(m,o,(o+(o>>1>>0)>>0)),$subslice(new DO(r.$array),r.$offset,r.$offset+r.$length)),(s=$subslice(m,o),$subslice(new DO(s.$array),s.$offset,s.$offset+s.$length)),q);}};CD=function(m,n,o){var $ptr,m,n,o,p,q,r,s;q=N((p=$subslice(m,0,o),$subslice(new DO(p.$array),p.$offset,p.$offset+p.$length)),$subslice(new DO(m.$array),m.$offset,m.$offset+m.$length),$subslice(new DO(n.$array),n.$offset,n.$offset+n.$length));if(!((q===0))){P((r=$subslice(m,o,(o+(o>>1>>0)>>0)),$subslice(new DO(r.$array),r.$offset,r.$offset+r.$length)),(s=$subslice(m,o),$subslice(new DO(s.$array),s.$offset,s.$offset+s.$length)),q);}};CF=function(m,n,o){var $ptr,aa,ab,ac,ad,m,n,o,p,q,r,s,t,u,v,w,x,y,z;p=o.$length;if(!(((p&1)===0))||p<CE||p<2){CB(m,n,o);return;}q=p>>1>>0;r=$subslice(n,q);s=$subslice(n,0,q);t=r;u=s;v=$subslice(o,q);w=$subslice(o,0,q);x=v;y=w;CF(m,u,y);CF($subslice(m,p),t,x);z=1;aa=$subslice(m,($imul(2,p)),(($imul(2,p))+q>>0));if(!((N($subslice(new DO(aa.$array),aa.$offset,aa.$offset+aa.$length),$subslice(new DO(t.$array),t.$offset,t.$offset+t.$length),$subslice(new DO(u.$array),u.$offset,u.$offset+u.$length))===0))){z=-z;N($subslice(new DO(aa.$array),aa.$offset,aa.$offset+aa.$length),$subslice(new DO(u.$array),u.$offset,u.$offset+u.$length),$subslice(new DO(t.$array),t.$offset,t.$offset+t.$length));}ab=$subslice(m,(($imul(2,p))+q>>0),($imul(3,p)));if(!((N($subslice(new DO(ab.$array),ab.$offset,ab.$offset+ab.$length),$subslice(new DO(y.$array),y.$offset,y.$offset+y.$length),$subslice(new DO(x.$array),x.$offset,x.$offset+x.$length))===0))){z=-z;N($subslice(new DO(ab.$array),ab.$offset,ab.$offset+ab.$length),$subslice(new DO(x.$array),x.$offset,x.$offset+x.$length),$subslice(new DO(y.$array),y.$offset,y.$offset+y.$length));}ac=$subslice(m,($imul(p,3)));CF(ac,aa,ab);ad=$subslice(m,($imul(p,4)));$copySlice(ad,$subslice(m,0,($imul(p,2))));CC($subslice(m,q),ad,p);CC($subslice(m,q),$subslice(ad,p),p);if(z>0){CC($subslice(m,q),ac,p);}else{CD($subslice(m,q),ac,p);}};CG=function(m,n){var $ptr,m,n,o,p;return m.$capacity>0&&n.$capacity>0&&(o=$subslice(m,0,m.$capacity),$indexPtr(o.$array,o.$offset+(m.$capacity-1>>0),DR))===(p=$subslice(n,0,n.$capacity),$indexPtr(p.$array,p.$offset+(n.$capacity-1>>0),DR));};CH=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,u,v;p=n.$length;if(p>0){s=M((q=$subslice(m,o,(o+p>>0)),$subslice(new DO(q.$array),q.$offset,q.$offset+q.$length)),(r=$subslice(m,o),$subslice(new DO(r.$array),r.$offset,r.$offset+r.$length)),$subslice(new DO(n.$array),n.$offset,n.$offset+n.$length));if(!((s===0))){t=o+p>>0;if(t<m.$length){O((u=$subslice(m,t),$subslice(new DO(u.$array),u.$offset,u.$offset+u.$length)),(v=$subslice(m,t),$subslice(new DO(v.$array),v.$offset,v.$offset+v.$length)),s);}}}};CI=function(m,n){var $ptr,m,n;if(m>n){return m;}return n;};CJ=function(m){var $ptr,m,n,o;n=0;while(true){if(!(m>CE)){break;}m=(m>>$min((1),31))>>0;n=n+(1)>>>0;}return(o=n,o<32?(m<<o):0)>>0;};BX.prototype.mul=function(m,n){var $ptr,m,n,o,p,q,r,s,t,u,v,w,x,y,z;o=this;p=m.$length;q=n.$length;if(p<q){return o.mul(n,m);}else if((p===0)||(q===0)){return $subslice(o,0,0);}else if((q===1)){return o.mulAddWW(m,(0>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+0]),0);}if(CG(o,m)||CG(o,n)){o=BX.nil;}if(q<CE){o=o.make(p+q>>0);CB(o,m,n);return o.norm();}r=CJ(q);s=$subslice(m,0,r);t=$subslice(n,0,r);o=o.make(CI($imul(6,r),p+q>>0));CF(o,s,t);o=$subslice(o,0,(p+q>>0));$subslice(o,($imul(2,r))).clear();if(r<q||!((p===q))){u=BX.nil;v=s.norm();w=$subslice(n,r);u=u.mul(v,w);CH(o,u,r);x=t.norm();y=r;while(true){if(!(y<m.$length)){break;}z=$subslice(m,y);if(z.$length>r){z=$subslice(z,0,r);}z=z.norm();u=u.mul(z,x);CH(o,u,y);u=u.mul(z,w);CH(o,u,y+r>>0);y=y+(r)>>0;}}return o.norm();};$ptrType(BX).prototype.mul=function(m,n){return this.$get().mul(m,n);};BX.prototype.mulRange=function(m,n){var $ptr,m,n,o,p,q;o=this;if((m.$high===0&&m.$low===0)){return o.setUint64(new $Uint64(0,0));}else if((m.$high>n.$high||(m.$high===n.$high&&m.$low>n.$low))){return o.setUint64(new $Uint64(0,1));}else if((m.$high===n.$high&&m.$low===n.$low)){return o.setUint64(m);}else if((p=new $Uint64(m.$high+0,m.$low+1),(p.$high===n.$high&&p.$low===n.$low))){return o.mul(BX.nil.setUint64(m),BX.nil.setUint64(n));}q=$div64((new $Uint64(m.$high+n.$high,m.$low+n.$low)),new $Uint64(0,2),false);return o.mul(BX.nil.mulRange(m,q),BX.nil.mulRange(new $Uint64(q.$high+0,q.$low+1),n));};$ptrType(BX).prototype.mulRange=function(m,n){return this.$get().mulRange(m,n);};BX.prototype.divW=function(m,n){var $ptr,m,n,o,p,q,r;o=BX.nil;p=0;q=this;r=m.$length;if((n===0)){$panic(new $String("division by zero"));}else if((n===1)){o=q.set(m);return[o,p];}else if((r===0)){o=$subslice(q,0,0);return[o,p];}q=q.make(r);p=U($subslice(new DO(q.$array),q.$offset,q.$offset+q.$length),0,$subslice(new DO(m.$array),m.$offset,m.$offset+m.$length),n);o=q.norm();return[o,p];};$ptrType(BX).prototype.divW=function(m,n){return this.$get().divW(m,n);};BX.prototype.div=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,u,v,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=BX.nil;q=BX.nil;r=this;if(o.$length===0){$panic(new $String("division by zero"));}if(n.cmp(o)<0){p=$subslice(r,0,0);q=m.set(n);$s=-1;return[p,q];}if(o.$length===1){s=0;t=r.divW(n,(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0]));p=t[0];s=t[1];q=m.setWord(s);$s=-1;return[p,q];}v=r.divLarge(m,n,o);$s=1;case 1:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}u=v;p=u[0];q=u[1];$s=-1;return[p,q];}return;}if($f===undefined){$f={$blk:BX.prototype.div};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.div=function(m,n,o){return this.$get().div(m,n,o);};CK=function(m){var $ptr,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=DS.nil;o=CM.Get();$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=o;if(!($interfaceIsEqual(p,$ifaceNil))){n=$assertType(p,DS);}if(n===DS.nil){n=$newDataPointer(BX.nil,DS);}n.$set(n.make(m));$s=-1;return n;}return;}if($f===undefined){$f={$blk:CK};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};CL=function(m){var $ptr,m;CM.Put(m);};BX.prototype.divLarge=function(m,n,o){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;bf=$f.bf;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=BX.nil;q=BX.nil;r=this;s=o.$length;t=n.$length-s>>0;if(CG(r,n)||CG(r,o)){r=BX.nil;}p=r.make(t+1>>0);u=CK(s+1>>0);$s=1;case 1:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}v=u;w=v.$get();if(CG(m,n)||CG(m,o)){m=BX.nil;}m=m.make(n.$length+1>>0);m.clear();x=DS.nil;z=AE((y=s-1>>0,((y<0||y>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+y])));if(z>0){$s=2;continue;}$s=3;continue;case 2:aa=CK(s);$s=4;case 4:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}x=aa;ab=x.$get();Q($subslice(new DO(ab.$array),ab.$offset,ab.$offset+ab.$length),$subslice(new DO(o.$array),o.$offset,o.$offset+o.$length),z);o=ab;case 3:(ad=n.$length,((ad<0||ad>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+ad]=Q((ac=$subslice(m,0,n.$length),$subslice(new DO(ac.$array),ac.$offset,ac.$offset+ac.$length)),$subslice(new DO(n.$array),n.$offset,n.$offset+n.$length),z)));af=(ae=s-1>>0,((ae<0||ae>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+ae]));ag=t;while(true){if(!(ag>=0)){break;}ah=4294967295;aj=(ai=ag+s>>0,((ai<0||ai>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+ai]));if(!((aj===af))){ak=0;al=L(aj,(am=(ag+s>>0)-1>>0,((am<0||am>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+am])),af);ah=al[0];ak=al[1];ao=(an=s-2>>0,((an<0||an>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+an]));ap=K(ah,ao);aq=ap[0];ar=ap[1];at=(as=(ag+s>>0)-2>>0,((as<0||as>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+as]));while(true){if(!(CQ(aq,ar,ak,at))){break;}ah=ah-(1)>>>0;au=ak;ak=ak+(af)>>>0;if(ak<au){break;}av=K(ah,ao);aq=av[0];ar=av[1];}}((s<0||s>=w.$length)?($throwRuntimeError("index out of range"),undefined):w.$array[w.$offset+s]=S((aw=$subslice(w,0,s),$subslice(new DO(aw.$array),aw.$offset,aw.$offset+aw.$length)),$subslice(new DO(o.$array),o.$offset,o.$offset+o.$length),ah,0));az=N((ax=$subslice(m,ag,(ag+w.$length>>0)),$subslice(new DO(ax.$array),ax.$offset,ax.$offset+ax.$length)),(ay=$subslice(m,ag),$subslice(new DO(ay.$array),ay.$offset,ay.$offset+ay.$length)),$subslice(new DO(w.$array),w.$offset,w.$offset+w.$length));if(!((az===0))){bc=M((ba=$subslice(m,ag,(ag+s>>0)),$subslice(new DO(ba.$array),ba.$offset,ba.$offset+ba.$length)),(bb=$subslice(m,ag),$subslice(new DO(bb.$array),bb.$offset,bb.$offset+bb.$length)),$subslice(new DO(o.$array),o.$offset,o.$offset+o.$length));bd=ag+s>>0;((bd<0||bd>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+bd]=(((bd<0||bd>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+bd])+(bc)>>>0));ah=ah-(1)>>>0;}((ag<0||ag>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+ag]=ah);ag=ag-(1)>>0;}if(!(x===DS.nil)){CL(x);}CL(v);p=p.norm();R($subslice(new DO(m.$array),m.$offset,m.$offset+m.$length),$subslice(new DO(m.$array),m.$offset,m.$offset+m.$length),z);q=m.norm();be=p;bf=q;p=be;q=bf;$s=-1;return[p,q];}return;}if($f===undefined){$f={$blk:BX.prototype.divLarge};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$f.bf=bf;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.divLarge=function(m,n,o){return this.$get().divLarge(m,n,o);};BX.prototype.bitLen=function(){var $ptr,m,n;m=this;n=m.$length-1>>0;if(n>=0){return($imul(n,32))+V(((n<0||n>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+n]))>>0;}return 0;};$ptrType(BX).prototype.bitLen=function(){return this.$get().bitLen();};CP=function(m){var $ptr,m,n,o,p;n=32;if(n===(32)){return((o=(($imul((((m&(-m>>>0))>>>0)),125613361)>>>0))>>>27>>>0,((o<0||o>=CN.length)?($throwRuntimeError("index out of range"),undefined):CN[o]))>>>0);}else if(n===(64)){return((p=0,((p<0||p>=CO.length)?($throwRuntimeError("index out of range"),undefined):CO[p]))>>>0);}else{$panic(new $String("unknown word size"));}};BX.prototype.trailingZeroBits=function(){var $ptr,m,n;m=this;if(m.$length===0){return 0;}n=0;while(true){if(!(((n<0||n>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+n])===0)){break;}n=n+(1)>>>0;}return(n*32>>>0)+CP(((n<0||n>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+n]))>>>0;};$ptrType(BX).prototype.trailingZeroBits=function(){return this.$get().trailingZeroBits();};BX.prototype.shl=function(m,n){var $ptr,m,n,o,p,q,r,s,t;o=this;p=m.$length;if(p===0){return $subslice(o,0,0);}r=p+((q=n/32,(q===q&&q!==1/0&&q!==-1/0)?q>>>0:$throwRuntimeError("integer divide by zero"))>>0)>>0;o=o.make(r+1>>0);((r<0||r>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+r]=Q((s=$subslice(o,(r-p>>0),r),$subslice(new DO(s.$array),s.$offset,s.$offset+s.$length)),$subslice(new DO(m.$array),m.$offset,m.$offset+m.$length),(t=n%32,t===t?t:$throwRuntimeError("integer divide by zero"))));$subslice(o,0,(r-p>>0)).clear();return o.norm();};$ptrType(BX).prototype.shl=function(m,n){return this.$get().shl(m,n);};BX.prototype.shr=function(m,n){var $ptr,m,n,o,p,q,r,s,t;o=this;p=m.$length;r=p-((q=n/32,(q===q&&q!==1/0&&q!==-1/0)?q>>>0:$throwRuntimeError("integer divide by zero"))>>0)>>0;if(r<=0){return $subslice(o,0,0);}o=o.make(r);R($subslice(new DO(o.$array),o.$offset,o.$offset+o.$length),(s=$subslice(m,(p-r>>0)),$subslice(new DO(s.$array),s.$offset,s.$offset+s.$length)),(t=n%32,t===t?t:$throwRuntimeError("integer divide by zero")));return o.norm();};$ptrType(BX).prototype.shr=function(m,n){return this.$get().shr(m,n);};BX.prototype.setBit=function(m,n,o){var $ptr,m,n,o,p,q,r,s,t,u,v,w;p=this;r=((q=n/32,(q===q&&q!==1/0&&q!==-1/0)?q>>>0:$throwRuntimeError("integer divide by zero"))>>0);u=(s=((t=n%32,t===t?t:$throwRuntimeError("integer divide by zero"))),s<32?(1<<s):0)>>>0;v=m.$length;w=o;if(w===(0)){p=p.make(v);$copySlice(p,m);if(r>=v){return p;}((r<0||r>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+r]=((((r<0||r>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+r])&~(u))>>>0));return p.norm();}else if(w===(1)){if(r>=v){p=p.make(r+1>>0);$subslice(p,v).clear();}else{p=p.make(v);}$copySlice(p,m);((r<0||r>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+r]=((((r<0||r>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+r])|(u))>>>0));return p;}$panic(new $String("set bit is not 0 or 1"));};$ptrType(BX).prototype.setBit=function(m,n,o){return this.$get().setBit(m,n,o);};BX.prototype.bit=function(m){var $ptr,m,n,o,p,q,r;n=this;p=(o=m/32,(o===o&&o!==1/0&&o!==-1/0)?o>>>0:$throwRuntimeError("integer divide by zero"));if(p>=(n.$length>>>0)){return 0;}return(((((q=((r=m%32,r===r?r:$throwRuntimeError("integer divide by zero"))),q<32?(((p<0||p>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+p])>>>q):0)>>>0)&1)>>>0)>>>0);};$ptrType(BX).prototype.bit=function(m){return this.$get().bit(m);};BX.prototype.and=function(m,n){var $ptr,m,n,o,p,q,r;o=this;p=m.$length;q=n.$length;if(p>q){p=q;}o=o.make(p);r=0;while(true){if(!(r<p)){break;}((r<0||r>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+r]=((((r<0||r>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+r])&((r<0||r>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+r]))>>>0));r=r+(1)>>0;}return o.norm();};$ptrType(BX).prototype.and=function(m,n){return this.$get().and(m,n);};BX.prototype.andNot=function(m,n){var $ptr,m,n,o,p,q,r;o=this;p=m.$length;q=n.$length;if(q>p){q=p;}o=o.make(p);r=0;while(true){if(!(r<q)){break;}((r<0||r>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+r]=((((r<0||r>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+r])&~((r<0||r>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+r]))>>>0));r=r+(1)>>0;}$copySlice($subslice(o,q,p),$subslice(m,q,p));return o.norm();};$ptrType(BX).prototype.andNot=function(m,n){return this.$get().andNot(m,n);};BX.prototype.or=function(m,n){var $ptr,m,n,o,p,q,r,s,t,u;o=this;p=m.$length;q=n.$length;r=m;if(p<q){s=p;t=q;q=s;p=t;r=n;}o=o.make(p);u=0;while(true){if(!(u<q)){break;}((u<0||u>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+u]=((((u<0||u>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+u])|((u<0||u>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+u]))>>>0));u=u+(1)>>0;}$copySlice($subslice(o,q,p),$subslice(r,q,p));return o.norm();};$ptrType(BX).prototype.or=function(m,n){return this.$get().or(m,n);};BX.prototype.xor=function(m,n){var $ptr,m,n,o,p,q,r,s,t,u;o=this;p=m.$length;q=n.$length;r=m;if(p<q){s=p;t=q;q=s;p=t;r=n;}o=o.make(p);u=0;while(true){if(!(u<q)){break;}((u<0||u>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+u]=((((u<0||u>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+u])^((u<0||u>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+u]))>>>0));u=u+(1)>>0;}$copySlice($subslice(o,q,p),$subslice(r,q,p));return o.norm();};$ptrType(BX).prototype.xor=function(m,n){return this.$get().xor(m,n);};CQ=function(m,n,o,p){var $ptr,m,n,o,p;return m>o||(m===o)&&n>p;};BX.prototype.modW=function(m){var $ptr,m,n,o,p;n=0;o=this;p=BX.nil;p=p.make(o.$length);n=U($subslice(new DO(p.$array),p.$offset,p.$offset+p.$length),0,$subslice(new DO(o.$array),o.$offset,o.$offset+o.$length),m);return n;};$ptrType(BX).prototype.modW=function(m){return this.$get().modW(m);};BX.prototype.random=function(m,n,o){var $ptr,aa,ab,ac,ad,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;if(CG(p,n)){p=BX.nil;}p=p.make(n.$length);r=((q=o%32,q===q?q:$throwRuntimeError("integer divide by zero"))>>>0);if(r===0){r=32;}t=((((s=r,s<32?(1<<s):0)>>>0))-1>>>0);case 1:u=32;if(u===(32)){$s=4;continue;}if(u===(64)){$s=5;continue;}$s=6;continue;case 4:v=p;w=0;case 8:if(!(w<v.$length)){$s=9;continue;}x=w;y=m.Uint32();$s=10;case 10:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}((x<0||x>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+x]=(y>>>0));w++;$s=8;continue;case 9:$s=7;continue;case 5:z=p;aa=0;case 11:if(!(aa<z.$length)){$s=12;continue;}ab=aa;ac=m.Uint32();$s=13;case 13:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}((ab<0||ab>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+ab]=(((ac>>>0)|0)>>>0));aa++;$s=11;continue;case 12:$s=7;continue;case 6:$panic(new $String("unknown word size"));case 7:case 3:ad=n.$length-1>>0;((ad<0||ad>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+ad]=((((ad<0||ad>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+ad])&(t))>>>0));if(p.cmp(n)<0){$s=2;continue;}$s=1;continue;case 2:$s=-1;return p.norm();}return;}if($f===undefined){$f={$blk:BX.prototype.random};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.random=function(m,n,o){return this.$get().random(m,n,o);};BX.prototype.expNN=function(m,n,o){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;if(CG(p,m)||CG(p,n)){p=BX.nil;}if((o.$length===1)&&((0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0])===1)){$s=-1;return p.setWord(0);}if(n.$length===0){$s=-1;return p.setWord(1);}if((n.$length===1)&&((0>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+0])===1)&&!((o.$length===0))){$s=1;continue;}$s=2;continue;case 1:r=p.div(p,m,o);$s=3;case 3:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=r;p=q[1];$s=-1;return p;case 2:if(!((o.$length===0))){p=p.make(o.$length);}p=p.set(m);if(m.cmp(BY)>0&&n.$length>1&&o.$length>0){$s=4;continue;}$s=5;continue;case 4:if((((0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0])&1)>>>0)===1){$s=6;continue;}$s=7;continue;case 6:s=p.expNNMontgomery(m,n,o);$s=8;case 8:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}$s=-1;return s;case 7:t=p.expNNWindowed(m,n,o);$s=9;case 9:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}$s=-1;return t;case 5:v=(u=n.$length-1>>0,((u<0||u>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+u]));w=AE(v)+1>>>0;v=(x=(w),x<32?(v<<x):0)>>>0;y=BX.nil;z=32-(w>>0)>>0;aa=BX.nil;ab=BX.nil;ac=aa;ad=ab;ae=0;case 10:if(!(ae<z)){$s=11;continue;}ac=ac.mul(p,p);af=p;ag=ac;ac=af;p=ag;if(!((((v&2147483648)>>>0)===0))){ac=ac.mul(p,m);ah=p;ai=ac;ac=ah;p=ai;}if(!((o.$length===0))){$s=12;continue;}$s=13;continue;case 12:ak=ac.div(ad,p,o);$s=14;case 14:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}aj=ak;ac=aj[0];ad=aj[1];al=y;am=p;an=ac;ao=ad;ac=al;ad=am;y=an;p=ao;case 13:v=(ap=(1),ap<32?(v<<ap):0)>>>0;ae=ae+(1)>>0;$s=10;continue;case 11:aq=n.$length-2>>0;case 15:if(!(aq>=0)){$s=16;continue;}v=((aq<0||aq>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+aq]);ar=0;case 17:if(!(ar<32)){$s=18;continue;}ac=ac.mul(p,p);as=p;at=ac;ac=as;p=at;if(!((((v&2147483648)>>>0)===0))){ac=ac.mul(p,m);au=p;av=ac;ac=au;p=av;}if(!((o.$length===0))){$s=19;continue;}$s=20;continue;case 19:ax=ac.div(ad,p,o);$s=21;case 21:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}aw=ax;ac=aw[0];ad=aw[1];ay=y;az=p;ba=ac;bb=ad;ac=ay;ad=az;y=ba;p=bb;case 20:v=(bc=(1),bc<32?(v<<bc):0)>>>0;ar=ar+(1)>>0;$s=17;continue;case 18:aq=aq-(1)>>0;$s=15;continue;case 16:$s=-1;return p.norm();}return;}if($f===undefined){$f={$blk:BX.prototype.expNN};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.expNN=function(m,n,o){return this.$get().expNN(m,n,o);};BX.prototype.expNNWindowed=function(m,n,o){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;bf=$f.bf;bg=$f.bg;bh=$f.bh;bi=$f.bi;bj=$f.bj;bk=$f.bk;bl=$f.bl;bm=$f.bm;bn=$f.bn;bo=$f.bo;bp=$f.bp;bq=$f.bq;br=$f.br;bs=$f.bs;bt=$f.bt;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;q=BX.nil;r=BX.nil;s=q;t=r;u=DT.zero();u[0]=BY;u[1]=m;v=2;case 1:if(!(v<16)){$s=2;continue;}w=$indexPtr(u,(x=v/2,(x===x&&x!==1/0&&x!==-1/0)?x>>0:$throwRuntimeError("integer divide by zero")),DS);y=$indexPtr(u,v,DS);z=$indexPtr(u,(v+1>>0),DS);aa=w;ab=y;ac=z;ab.$set(ab.mul(aa.$get(),aa.$get()));ae=s.div(t,ab.$get(),o);$s=3;case 3:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}ad=ae;s=ad[0];t=ad[1];af=t;ag=ab.$get();ab.$set(af);t=ag;ac.$set(ac.mul(ab.$get(),m));ai=s.div(t,ac.$get(),o);$s=4;case 4:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ah=ai;s=ah[0];t=ah[1];aj=t;ak=ac.$get();ac.$set(aj);t=ak;v=v+(2)>>0;$s=1;continue;case 2:p=p.setWord(1);al=n.$length-1>>0;case 5:if(!(al>=0)){$s=6;continue;}am=((al<0||al>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+al]);an=0;case 7:if(!(an<32)){$s=8;continue;}if(!((al===(n.$length-1>>0)))||!((an===0))){$s=9;continue;}$s=10;continue;case 9:s=s.mul(p,p);ao=p;ap=s;s=ao;p=ap;ar=s.div(t,p,o);$s=11;case 11:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}aq=ar;s=aq[0];t=aq[1];as=t;at=p;p=as;t=at;s=s.mul(p,p);au=p;av=s;s=au;p=av;ax=s.div(t,p,o);$s=12;case 12:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}aw=ax;s=aw[0];t=aw[1];ay=t;az=p;p=ay;t=az;s=s.mul(p,p);ba=p;bb=s;s=ba;p=bb;bd=s.div(t,p,o);$s=13;case 13:if($c){$c=false;bd=bd.$blk();}if(bd&&bd.$blk!==undefined){break s;}bc=bd;s=bc[0];t=bc[1];be=t;bf=p;p=be;t=bf;s=s.mul(p,p);bg=p;bh=s;s=bg;p=bh;bj=s.div(t,p,o);$s=14;case 14:if($c){$c=false;bj=bj.$blk();}if(bj&&bj.$blk!==undefined){break s;}bi=bj;s=bi[0];t=bi[1];bk=t;bl=p;p=bk;t=bl;case 10:s=s.mul(p,(bm=am>>>28>>>0,((bm<0||bm>=u.length)?($throwRuntimeError("index out of range"),undefined):u[bm])));bn=p;bo=s;s=bn;p=bo;bq=s.div(t,p,o);$s=15;case 15:if($c){$c=false;bq=bq.$blk();}if(bq&&bq.$blk!==undefined){break s;}bp=bq;s=bp[0];t=bp[1];br=t;bs=p;p=br;t=bs;am=(bt=(4),bt<32?(am<<bt):0)>>>0;an=an+(4)>>0;$s=7;continue;case 8:al=al-(1)>>0;$s=5;continue;case 6:$s=-1;return p.norm();}return;}if($f===undefined){$f={$blk:BX.prototype.expNNWindowed};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$f.bf=bf;$f.bg=bg;$f.bh=bh;$f.bi=bi;$f.bj=bj;$f.bk=bk;$f.bl=bl;$f.bm=bm;$f.bn=bn;$f.bo=bo;$f.bp=bp;$f.bq=bq;$f.br=br;$f.bs=bs;$f.bt=bt;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.expNNWindowed=function(m,n,o){return this.$get().expNNWindowed(m,n,o);};BX.prototype.expNNMontgomery=function(m,n,o){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;q=o.$length;if(m.$length>q){$s=1;continue;}$s=2;continue;case 1:s=BX.nil.div(BX.nil,m,o);$s=3;case 3:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;m=r[1];case 2:if(m.$length<q){t=$makeSlice(BX,q);$copySlice(t,m);m=t;}u=2-(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0])>>>0;v=(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0])-1>>>0;w=1;while(true){if(!(w<32)){break;}v=$imul(v,(v))>>>0;u=$imul(u,(((v+1>>>0))))>>>0;w=(x=(1),x<32?(w<<x):0)>>0;}u=-u>>>0;y=BX.nil.setWord(1);z=BX.nil.shl(y,(($imul(($imul(2,q)),32))>>>0));ab=y.div(y,z,o);$s=4;case 4:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}aa=ab;y=aa[1];if(y.$length<q){z=z.make(q);$copySlice(z,y);y=z;}ac=$makeSlice(BX,q);(0>=ac.$length?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+0]=1);ad=DT.zero();ad[0]=ad[0].montgomery(ac,y,o,u,q);ad[1]=ad[1].montgomery(m,y,o,u,q);ae=2;while(true){if(!(ae<16)){break;}((ae<0||ae>=ad.length)?($throwRuntimeError("index out of range"),undefined):ad[ae]=((ae<0||ae>=ad.length)?($throwRuntimeError("index out of range"),undefined):ad[ae]).montgomery((af=ae-1>>0,((af<0||af>=ad.length)?($throwRuntimeError("index out of range"),undefined):ad[af])),ad[1],o,u,q));ae=ae+(1)>>0;}p=p.make(q);$copySlice(p,ad[0]);z=z.make(q);ag=n.$length-1>>0;while(true){if(!(ag>=0)){break;}ah=((ag<0||ag>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+ag]);ai=0;while(true){if(!(ai<32)){break;}if(!((ag===(n.$length-1>>0)))||!((ai===0))){z=z.montgomery(p,p,o,u,q);p=p.montgomery(z,z,o,u,q);z=z.montgomery(p,p,o,u,q);p=p.montgomery(z,z,o,u,q);}z=z.montgomery(p,(aj=ah>>>28>>>0,((aj<0||aj>=ad.length)?($throwRuntimeError("index out of range"),undefined):ad[aj])),o,u,q);ak=z;al=p;p=ak;z=al;ah=(am=(4),am<32?(ah<<am):0)>>>0;ai=ai+(4)>>0;}ag=ag-(1)>>0;}z=z.montgomery(p,ac,o,u,q);if(z.cmp(o)>=0){$s=5;continue;}$s=6;continue;case 5:z=z.sub(z,o);if(z.cmp(o)>=0){$s=7;continue;}$s=8;continue;case 7:ao=BX.nil.div(BX.nil,z,o);$s=9;case 9:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}an=ao;z=an[1];case 8:case 6:$s=-1;return z.norm();}return;}if($f===undefined){$f={$blk:BX.prototype.expNNMontgomery};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.expNNMontgomery=function(m,n,o){return this.$get().expNNMontgomery(m,n,o);};BX.prototype.bytes=function(m){var $ptr,m,n,o,p,q,r,s,t;n=0;o=this;n=m.$length;p=o;q=0;while(true){if(!(q<p.$length)){break;}r=((q<0||q>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+q]);s=0;while(true){if(!(s<4)){break;}n=n-(1)>>0;((n<0||n>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+n]=(r<<24>>>24));r=(t=(8),t<32?(r>>>t):0)>>>0;s=s+(1)>>0;}q++;}while(true){if(!(n<m.$length&&(((n<0||n>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+n])===0))){break;}n=n+(1)>>0;}return n;};$ptrType(BX).prototype.bytes=function(m){return this.$get().bytes(m);};BX.prototype.setBytes=function(m){var $ptr,m,n,o,p,q,r,s,t,u;n=this;n=n.make((o=(((m.$length+4>>0)-1>>0))/4,(o===o&&o!==1/0&&o!==-1/0)?o>>0:$throwRuntimeError("integer divide by zero")));p=0;q=0;r=0;s=m.$length;while(true){if(!(s>0)){break;}r=(r|(((t=q,t<32?(((u=s-1>>0,((u<0||u>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+u]))>>>0)<<t):0)>>>0)))>>>0;q=q+(8)>>>0;if(q===32){((p<0||p>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+p]=r);p=p+(1)>>0;q=0;r=0;}s=s-(1)>>0;}if(p<n.$length){((p<0||p>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+p]=r);}return n.norm();};$ptrType(BX).prototype.setBytes=function(m){return this.$get().setBytes(m);};BX.prototype.sqrt=function(m){var $ptr,m,n,o,p,q,r,s,t,u,v,w,x,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;if(m.cmp(BY)<=0){$s=-1;return n.set(m);}if(CG(n,m)){n=BX.nil;}o=BX.nil;p=BX.nil;q=o;r=p;q=n;q=q.setUint64(new $Uint64(0,1));q=q.shl(q,(((s=m.bitLen()/2,(s===s&&s!==1/0&&s!==-1/0)?s>>0:$throwRuntimeError("integer divide by zero"))+1>>0)>>>0));t=0;case 1:v=r.div(BX.nil,m,q);$s=3;case 3:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}u=v;r=u[0];r=r.add(r,q);r=r.shr(r,1);if(r.cmp(q)>=0){if((t&1)===0){$s=-1;return q;}$s=-1;return n.set(q);}w=r;x=q;q=w;r=x;t=t+(1)>>0;$s=1;continue;case 2:$s=-1;return BX.nil;}return;}if($f===undefined){$f={$blk:BX.prototype.sqrt};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.sqrt=function(m){return this.$get().sqrt(m);};CR=function(m){var $ptr,m,n,o,p,q,r,s;n=0;o=0;p=m;q=1;n=p;o=q;s=(r=4294967295/m,(r===r&&r!==1/0&&r!==-1/0)?r>>>0:$throwRuntimeError("integer divide by zero"));while(true){if(!(n<=s)){break;}n=$imul(n,(m))>>>0;o=o+(1)>>0;}return[n,o];};CS=function(m,n){var $ptr,m,n,o;o=0;o=1;while(true){if(!(n>0)){break;}if(!(((n&1)===0))){o=$imul(o,(m))>>>0;}m=$imul(m,(m))>>>0;n=(n>>$min((1),31))>>0;}return o;};BX.prototype.scan=function(m,n,o){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=BX.nil;q=0;r=0;s=$ifaceNil;t=this;u=(n===0)||!o&&2<=n&&n<=36||o&&((n===2)||(n===10)||(n===16));if(!u){$s=1;continue;}$s=2;continue;case 1:v=A.Sprintf("illegal number base %d",new DI([new $Int(n)]));$s=3;case 3:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}$panic(new $String(v));case 2:x=m.ReadByte();$s=4;case 4:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}w=x;y=w[0];s=w[1];if(!($interfaceIsEqual(s,$ifaceNil))){$s=-1;return[p,q,r,s];}q=n;if(n===0){$s=5;continue;}$s=6;continue;case 5:q=10;if(y===48){$s=7;continue;}$s=8;continue;case 7:r=1;aa=m.ReadByte();$s=10;case 10:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}z=aa;y=z[0];s=z[1];ab=s;if($interfaceIsEqual(ab,$ifaceNil)){$s=11;continue;}if($interfaceIsEqual(ab,(C.EOF))){$s=12;continue;}$s=13;continue;case 11:if(!o){q=8;}ac=y;if((ac===(120))||(ac===(88))){q=16;}else if((ac===(98))||(ac===(66))){q=2;}ad=q;if((ad===(16))||(ad===(2))){$s=16;continue;}if(ad===(8)){$s=17;continue;}$s=18;continue;case 16:r=0;af=m.ReadByte();$s=19;case 19:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}ae=af;y=ae[0];s=ae[1];if(!($interfaceIsEqual(s,$ifaceNil))){$s=-1;return[p,q,r,s];}$s=18;continue;case 17:r=0;case 18:case 15:$s=14;continue;case 12:p=$subslice(t,0,0);s=$ifaceNil;$s=-1;return[p,q,r,s];case 13:$s=-1;return[p,q,r,s];case 14:case 9:case 8:case 6:t=$subslice(t,0,0);ag=(q>>>0);ah=CR(ag);ai=ah[0];aj=ah[1];ak=0;al=0;am=-1;case 20:if(o&&(y===46)){$s=22;continue;}$s=23;continue;case 22:o=false;am=r;ao=m.ReadByte();$s=24;case 24:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}an=ao;y=an[0];s=an[1];if(!($interfaceIsEqual(s,$ifaceNil))){if($interfaceIsEqual(s,C.EOF)){s=$ifaceNil;$s=21;continue;}$s=-1;return[p,q,r,s];}case 23:ap=0;if(48<=y&&y<=57){ap=((y-48<<24>>>24)>>>0);}else if(97<=y&&y<=122){ap=(((y-97<<24>>>24)+10<<24>>>24)>>>0);}else if(65<=y&&y<=90){ap=(((y-65<<24>>>24)+10<<24>>>24)>>>0);}else{ap=37;}if(ap>=ag){$s=25;continue;}$s=26;continue;case 25:aq=m.UnreadByte();$s=27;case 27:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}aq;$s=21;continue;case 26:r=r+(1)>>0;ak=($imul(ak,ag)>>>0)+ap>>>0;al=al+(1)>>0;if(al===aj){t=t.mulAddWW(t,ai,ak);ak=0;al=0;}as=m.ReadByte();$s=28;case 28:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}ar=as;y=ar[0];s=ar[1];if(!($interfaceIsEqual(s,$ifaceNil))){if($interfaceIsEqual(s,C.EOF)){s=$ifaceNil;$s=21;continue;}$s=-1;return[p,q,r,s];}$s=20;continue;case 21:if(r===0){if((n===0)&&(q===8)){r=1;q=10;}else if(!((n===0))||!((q===8))){s=I.New("syntax error scanning number");}$s=-1;return[p,q,r,s];}if(al>0){t=t.mulAddWW(t,CS(ag,al),ak);}p=t.norm();if(am>=0){r=am-r>>0;}$s=-1;return[p,q,r,s];}return;}if($f===undefined){$f={$blk:BX.prototype.scan};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.scan=function(m,n,o){return this.$get().scan(m,n,o);};BX.prototype.utoa=function(m){var $ptr,m,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;o=n.itoa(false,m);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$s=-1;return o;}return;}if($f===undefined){$f={$blk:BX.prototype.utoa};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.utoa=function(m){return this.$get().utoa(m);};BX.prototype.itoa=function(m,n){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;if(n<2||n>36){$panic(new $String("invalid base"));}if(o.$length===0){$s=-1;return new DM($stringToBytes("0"));}p=(o.bitLen()/B.Log2(n)>>0)+1>>0;if(m){p=p+(1)>>0;}q=$makeSlice(DM,p);r=(n>>>0);if(r===((r&(-r>>>0))>>>0)){$s=1;continue;}$s=2;continue;case 1:s=CP(r);u=(((t=s,t<32?(1<<t):0)>>>0)-1>>>0);v=(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0]);w=32;x=1;while(true){if(!(x<o.$length)){break;}while(true){if(!(w>=s)){break;}p=p-(1)>>0;((p<0||p>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+p]="0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt(((v&u)>>>0)));v=(y=(s),y<32?(v>>>y):0)>>>0;w=w-(s)>>>0;}if(w===0){v=((x<0||x>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+x]);w=32;}else{v=(v|(((z=w,z<32?(((x<0||x>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+x])<<z):0)>>>0)))>>>0;p=p-(1)>>0;((p<0||p>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+p]="0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt(((v&u)>>>0)));v=(aa=((s-w>>>0)),aa<32?(((x<0||x>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+x])>>>aa):0)>>>0;w=32-((s-w>>>0))>>>0;}x=x+(1)>>0;}while(true){if(!(!((v===0)))){break;}p=p-(1)>>0;((p<0||p>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+p]="0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt(((v&u)>>>0)));v=(ab=(s),ab<32?(v>>>ab):0)>>>0;}$s=3;continue;case 2:ac=CR(r);ad=ac[0];ae=ac[1];af=CW(o.$length,r,ae,ad);$s=4;case 4:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}ag=af;ah=BX.nil.set(o);$r=ah.convertWords(q,r,ae,ad,ag);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}p=0;while(true){if(!(((p<0||p>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+p])===48)){break;}p=p+(1)>>0;}case 3:if(m){p=p-(1)>>0;((p<0||p>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+p]=45);}$s=-1;return $subslice(q,p);}return;}if($f===undefined){$f={$blk:BX.prototype.itoa};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.itoa=function(m,n){return this.$get().itoa(m,n);};BX.prototype.convertWords=function(m,n,o,p,q){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:r=this;if(!(q===DU.nil)){$s=1;continue;}$s=2;continue;case 1:s=BX.nil;t=q.$length-1>>0;case 3:if(!(r.$length>CT)){$s=4;continue;}u=r.bitLen();v=u>>1>>0;while(true){if(!(t>0&&(w=t-1>>0,((w<0||w>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+w])).nbits>v)){break;}t=t-(1)>>0;}if(((t<0||t>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+t]).nbits>=u&&((t<0||t>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+t]).bbb.cmp(r)>=0){t=t-(1)>>0;if(t<0){$panic(new $String("internal inconsistency"));}}y=r.div(s,r,((t<0||t>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+t]).bbb);$s=5;case 5:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}x=y;r=x[0];s=x[1];z=m.$length-((t<0||t>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+t]).ndigits>>0;$r=s.convertWords($subslice(m,z),n,o,p,$subslice(q,0,t));$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}m=$subslice(m,0,z);$s=3;continue;case 4:case 2:aa=m.$length;ab=0;if(n===10){while(true){if(!(r.$length>0)){break;}ac=r.divW(r,p);r=ac[0];ab=ac[1];ad=0;while(true){if(!(ad<o&&aa>0)){break;}aa=aa-(1)>>0;af=(ae=ab/10,(ae===ae&&ae!==1/0&&ae!==-1/0)?ae>>>0:$throwRuntimeError("integer divide by zero"));((aa<0||aa>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+aa]=(48+((ab-($imul(af,10)>>>0)>>>0)<<24>>>24)<<24>>>24));ab=af;ad=ad+(1)>>0;}}}else{while(true){if(!(r.$length>0)){break;}ag=r.divW(r,p);r=ag[0];ab=ag[1];ah=0;while(true){if(!(ah<o&&aa>0)){break;}aa=aa-(1)>>0;((aa<0||aa>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+aa]="0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt((ai=ab%n,ai===ai?ai:$throwRuntimeError("integer divide by zero"))));ab=(aj=ab/(n),(aj===aj&&aj!==1/0&&aj!==-1/0)?aj>>>0:$throwRuntimeError("integer divide by zero"));ah=ah+(1)>>0;}}}while(true){if(!(aa>0)){break;}aa=aa-(1)>>0;((aa<0||aa>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+aa]=48);}$s=-1;return;}return;}if($f===undefined){$f={$blk:BX.prototype.convertWords};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.convertWords=function(m,n,o,p,q){return this.$get().convertWords(m,n,o,p,q);};BX.prototype.expWW=function(m,n){var $ptr,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;p=o.expNN(BX.nil.setWord(m),BX.nil.setWord(n),BX.nil);$s=1;case 1:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}$s=-1;return p;}return;}if($f===undefined){$f={$blk:BX.prototype.expWW};}$f.$ptr=$ptr;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.expWW=function(m,n){return this.$get().expWW(m,n);};CW=function(m,n,o,p){var $ptr,aa,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if((CT===0)||m<=CT){$s=-1;return DU.nil;}q=1;r=CT;while(true){if(!(r<(m>>1>>0)&&q<64)){break;}q=q+(1)>>0;r=(s=(1),s<32?(r<<s):0)>>0;}t=DU.nil;if(n===10){CV.Mutex.Lock();t=$subslice(new DU(CV.table),0,q);}else{t=$makeSlice(DU,q);}if((u=q-1>>0,((u<0||u>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+u])).ndigits===0){$s=1;continue;}$s=2;continue;case 1:v=BX.nil;w=0;case 3:if(!(w<q)){$s=4;continue;}if(((w<0||w>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+w]).ndigits===0){$s=5;continue;}$s=6;continue;case 5:if(w===0){$s=7;continue;}$s=8;continue;case 7:x=BX.nil.expWW(p,(CT>>>0));$s=10;case 10:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}(0>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+0]).bbb=x;(0>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+0]).ndigits=$imul(o,CT);$s=9;continue;case 8:((w<0||w>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+w]).bbb=BX.nil.mul((y=w-1>>0,((y<0||y>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+y])).bbb,(z=w-1>>0,((z<0||z>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+z])).bbb);((w<0||w>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+w]).ndigits=$imul(2,(aa=w-1>>0,((aa<0||aa>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+aa])).ndigits);case 9:v=BX.nil.set(((w<0||w>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+w]).bbb);while(true){if(!(S($subslice(new DO(v.$array),v.$offset,v.$offset+v.$length),$subslice(new DO(v.$array),v.$offset,v.$offset+v.$length),n,0)===0)){break;}((w<0||w>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+w]).bbb=((w<0||w>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+w]).bbb.set(v);((w<0||w>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+w]).ndigits=((w<0||w>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+w]).ndigits+(1)>>0;}((w<0||w>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+w]).nbits=((w<0||w>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+w]).bbb.bitLen();case 6:w=w+(1)>>0;$s=3;continue;case 4:case 2:if(n===10){CV.Mutex.Unlock();}$s=-1;return t;}return;}if($f===undefined){$f={$blk:CW};}$f.$ptr=$ptr;$f.aa=aa;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BO.ptr.prototype.ProbablyPrime=function(m){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:n=this;if(m<0){$panic(new $String("negative n for ProbablyPrime"));}if(n.neg||(n.abs.$length===0)){$s=-1;return false;}p=(o=n.abs,(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0]));if((n.abs.$length===1)&&p<64){$s=-1;return!((q=(r=$shiftLeft64(new $Uint64(0,1),p),new $Uint64(673221152&r.$high,(2693408940&r.$low)>>>0)),(q.$high===0&&q.$low===0)));}if(((p&1)>>>0)===0){$s=-1;return false;}s=0;t=0;u=s;v=t;w=32;if(w===(32)){u=(n.abs.modW(4127218095)>>>0);v=(n.abs.modW(3948078067)>>>0);}else if(w===(64)){x=n.abs.modW(820596253);u=((y=x%4127218095,y===y?y:$throwRuntimeError("integer divide by zero"))>>>0);v=((z=x%3948078067,z===z?z:$throwRuntimeError("integer divide by zero"))>>>0);}else{$panic(new $String("math/big: invalid word size"));}if(((aa=u%3,aa===aa?aa:$throwRuntimeError("integer divide by zero"))===0)||((ab=u%5,ab===ab?ab:$throwRuntimeError("integer divide by zero"))===0)||((ac=u%7,ac===ac?ac:$throwRuntimeError("integer divide by zero"))===0)||((ad=u%11,ad===ad?ad:$throwRuntimeError("integer divide by zero"))===0)||((ae=u%13,ae===ae?ae:$throwRuntimeError("integer divide by zero"))===0)||((af=u%17,af===af?af:$throwRuntimeError("integer divide by zero"))===0)||((ag=u%19,ag===ag?ag:$throwRuntimeError("integer divide by zero"))===0)||((ah=u%23,ah===ah?ah:$throwRuntimeError("integer divide by zero"))===0)||((ai=u%37,ai===ai?ai:$throwRuntimeError("integer divide by zero"))===0)||((aj=v%29,aj===aj?aj:$throwRuntimeError("integer divide by zero"))===0)||((ak=v%31,ak===ak?ak:$throwRuntimeError("integer divide by zero"))===0)||((al=v%41,al===al?al:$throwRuntimeError("integer divide by zero"))===0)||((am=v%43,am===am?am:$throwRuntimeError("integer divide by zero"))===0)||((an=v%47,an===an?an:$throwRuntimeError("integer divide by zero"))===0)||((ao=v%53,ao===ao?ao:$throwRuntimeError("integer divide by zero"))===0)){$s=-1;return false;}aq=n.abs.probablyPrimeMillerRabin(m+1>>0,true);$s=2;case 2:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}if(!(aq)){ap=false;$s=1;continue s;}ar=n.abs.probablyPrimeLucas();$s=3;case 3:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}ap=ar;case 1:$s=-1;return ap;}return;}if($f===undefined){$f={$blk:BO.ptr.prototype.ProbablyPrime};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BO.prototype.ProbablyPrime=function(m){return this.$val.ProbablyPrime(m);};BX.prototype.probablyPrimeMillerRabin=function(m,n){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:o=this;p=BX.nil.sub(o,BY);q=p.trailingZeroBits();r=BX.nil.shr(p,q);s=BX.nil.sub(p,BZ);u=H.New(H.NewSource((t=(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0]),new $Int64(0,t.constructor===Number?t:1))));v=BX.nil;w=BX.nil;x=BX.nil;y=v;z=w;aa=x;ab=s.bitLen();ac=0;case 1:if(!(ac<m)){$s=2;continue;}if((ac===(m-1>>0))&&n){$s=3;continue;}$s=4;continue;case 3:y=y.set(BZ);$s=5;continue;case 4:ad=y.random(u,s,ab);$s=6;case 6:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}y=ad;y=y.add(y,BZ);case 5:ae=z.expNN(y,r,o);$s=7;case 7:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}z=ae;if((z.cmp(BY)===0)||(z.cmp(p)===0)){$s=8;continue;}$s=9;continue;case 8:ac=ac+(1)>>0;$s=1;continue;case 9:af=1;case 10:if(!(af<q)){$s=11;continue;}z=z.mul(z,z);ah=aa.div(z,z,o);$s=12;case 12:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ag=ah;aa=ag[0];z=ag[1];if(z.cmp(p)===0){ac=ac+(1)>>0;$s=1;continue s;}if(z.cmp(BY)===0){$s=-1;return false;}af=af+(1)>>>0;$s=10;continue;case 11:$s=-1;return false;$s=1;continue;case 2:$s=-1;return true;}return;}if($f===undefined){$f={$blk:BX.prototype.probablyPrimeMillerRabin};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.probablyPrimeMillerRabin=function(m,n){return this.$get().probablyPrimeMillerRabin(m,n);};BX.prototype.probablyPrimeLucas=function(){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:m=this;if((m.$length===0)||(m.cmp(BY)===0)){$s=-1;return false;}if((((0>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+0])&1)>>>0)===0){$s=-1;return m.cmp(BZ)===0;}n=3;o=new BX([1]);p=BX.nil;q=new BO.ptr(false,o);r=new BO.ptr(false,m);case 1:if(n>10000){$s=3;continue;}$s=4;continue;case 3:s=r.String();$s=5;case 5:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}$panic(new $String("math/big: internal error: cannot find (D/n) = -1 for "+s));case 4:(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0]=(($imul(n,n)>>>0)-4>>>0));t=BT(q,r);$s=6;case 6:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}u=t;if(u===-1){$s=2;continue;}if(u===0){$s=-1;return(m.$length===1)&&((0>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+0])===(n+2>>>0));}if(n===40){$s=7;continue;}$s=8;continue;case 7:v=p.sqrt(m);$s=9;case 9:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}p=v;p=p.mul(p,p);if(p.cmp(m)===0){$s=-1;return false;}case 8:n=n+(1)>>>0;$s=1;continue;case 2:w=BX.nil.add(m,BY);x=(w.trailingZeroBits()>>0);w=w.shr(w,(x>>>0));y=BX.nil.sub(m,BZ);z=BX.nil.setWord(n);aa=BX.nil.setWord(2);ab=BX.nil.setWord(n);ac=BX.nil;ad=w.bitLen();case 10:if(!(ad>=0)){$s=11;continue;}if(!((w.bit((ad>>>0))===0))){$s=12;continue;}$s=13;continue;case 12:p=p.mul(aa,ab);p=p.add(p,m);p=p.sub(p,z);af=ac.div(aa,p,m);$s=15;case 15:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}ae=af;ac=ae[0];aa=ae[1];p=p.mul(ab,ab);p=p.add(p,y);ah=ac.div(ab,p,m);$s=16;case 16:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ag=ah;ac=ag[0];ab=ag[1];$s=14;continue;case 13:p=p.mul(aa,ab);p=p.add(p,m);p=p.sub(p,z);aj=ac.div(ab,p,m);$s=17;case 17:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ai=aj;ac=ai[0];ab=ai[1];p=p.mul(aa,aa);p=p.add(p,y);al=ac.div(aa,p,m);$s=18;case 18:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}ak=al;ac=ak[0];aa=ak[1];case 14:ad=ad-(1)>>0;$s=10;continue;case 11:if((aa.cmp(BZ)===0)||(aa.cmp(y)===0)){$s=19;continue;}$s=20;continue;case 19:am=p.mul(aa,z);an=ac.shl(ab,1);if(am.cmp(an)<0){ao=an;ap=am;am=ao;an=ap;}am=am.sub(am,an);aq=ab;ab=BX.nil;$unused(ab);as=an.div(aq,am,m);$s=21;case 21:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}ar=as;an=ar[0];aq=ar[1];if(aq.$length===0){$s=-1;return true;}case 20:at=0;case 22:if(!(at<(x-1>>0))){$s=23;continue;}if(aa.$length===0){$s=-1;return true;}if((aa.$length===1)&&((0>=aa.$length?($throwRuntimeError("index out of range"),undefined):aa.$array[aa.$offset+0])===2)){$s=-1;return false;}p=p.mul(aa,aa);p=p.sub(p,BZ);av=ac.div(aa,p,m);$s=24;case 24:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}au=av;ac=au[0];aa=au[1];at=at+(1)>>0;$s=22;continue;case 23:$s=-1;return false;}return;}if($f===undefined){$f={$blk:BX.prototype.probablyPrimeLucas};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(BX).prototype.probablyPrimeLucas=function(){return this.$get().probablyPrimeLucas();};DP.methods=[{prop:"Sign",name:"Sign",pkg:"",typ:$funcType([],[$Int],false)},{prop:"SetInt64",name:"SetInt64",pkg:"",typ:$funcType([$Int64],[DP],false)},{prop:"SetUint64",name:"SetUint64",pkg:"",typ:$funcType([$Uint64],[DP],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([DP],[DP],false)},{prop:"Bits",name:"Bits",pkg:"",typ:$funcType([],[DO],false)},{prop:"SetBits",name:"SetBits",pkg:"",typ:$funcType([DO],[DP],false)},{prop:"Abs",name:"Abs",pkg:"",typ:$funcType([DP],[DP],false)},{prop:"Neg",name:"Neg",pkg:"",typ:$funcType([DP],[DP],false)},{prop:"Add",name:"Add",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"Sub",name:"Sub",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"Mul",name:"Mul",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"MulRange",name:"MulRange",pkg:"",typ:$funcType([$Int64,$Int64],[DP],false)},{prop:"Binomial",name:"Binomial",pkg:"",typ:$funcType([$Int64,$Int64],[DP],false)},{prop:"Quo",name:"Quo",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"Rem",name:"Rem",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"QuoRem",name:"QuoRem",pkg:"",typ:$funcType([DP,DP,DP],[DP,DP],false)},{prop:"Div",name:"Div",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"Mod",name:"Mod",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"DivMod",name:"DivMod",pkg:"",typ:$funcType([DP,DP,DP],[DP,DP],false)},{prop:"Cmp",name:"Cmp",pkg:"",typ:$funcType([DP],[$Int],false)},{prop:"Int64",name:"Int64",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Uint64",name:"Uint64",pkg:"",typ:$funcType([],[$Uint64],false)},{prop:"SetString",name:"SetString",pkg:"",typ:$funcType([$String,$Int],[DP,$Bool],false)},{prop:"SetBytes",name:"SetBytes",pkg:"",typ:$funcType([DM],[DP],false)},{prop:"Bytes",name:"Bytes",pkg:"",typ:$funcType([],[DM],false)},{prop:"BitLen",name:"BitLen",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Exp",name:"Exp",pkg:"",typ:$funcType([DP,DP,DP],[DP],false)},{prop:"GCD",name:"GCD",pkg:"",typ:$funcType([DP,DP,DP,DP],[DP],false)},{prop:"binaryGCD",name:"binaryGCD",pkg:"math/big",typ:$funcType([DP,DP],[DP],false)},{prop:"Rand",name:"Rand",pkg:"",typ:$funcType([DW,DP],[DP],false)},{prop:"ModInverse",name:"ModInverse",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"modSqrt3Mod4Prime",name:"modSqrt3Mod4Prime",pkg:"math/big",typ:$funcType([DP,DP],[DP],false)},{prop:"modSqrtTonelliShanks",name:"modSqrtTonelliShanks",pkg:"math/big",typ:$funcType([DP,DP],[DP],false)},{prop:"ModSqrt",name:"ModSqrt",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"Lsh",name:"Lsh",pkg:"",typ:$funcType([DP,$Uint],[DP],false)},{prop:"Rsh",name:"Rsh",pkg:"",typ:$funcType([DP,$Uint],[DP],false)},{prop:"Bit",name:"Bit",pkg:"",typ:$funcType([$Int],[$Uint],false)},{prop:"SetBit",name:"SetBit",pkg:"",typ:$funcType([DP,$Int,$Uint],[DP],false)},{prop:"And",name:"And",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"AndNot",name:"AndNot",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"Or",name:"Or",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"Xor",name:"Xor",pkg:"",typ:$funcType([DP,DP],[DP],false)},{prop:"Not",name:"Not",pkg:"",typ:$funcType([DP],[DP],false)},{prop:"Sqrt",name:"Sqrt",pkg:"",typ:$funcType([DP],[DP],false)},{prop:"Text",name:"Text",pkg:"",typ:$funcType([$Int],[$String],false)},{prop:"Append",name:"Append",pkg:"",typ:$funcType([DM,$Int],[DM],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Format",name:"Format",pkg:"",typ:$funcType([A.State,$Int32],[],false)},{prop:"scan",name:"scan",pkg:"math/big",typ:$funcType([C.ByteScanner,$Int],[DP,$Int,$error],false)},{prop:"Scan",name:"Scan",pkg:"",typ:$funcType([A.ScanState,$Int32],[$error],false)},{prop:"GobEncode",name:"GobEncode",pkg:"",typ:$funcType([],[DM,$error],false)},{prop:"GobDecode",name:"GobDecode",pkg:"",typ:$funcType([DM],[$error],false)},{prop:"MarshalText",name:"MarshalText",pkg:"",typ:$funcType([],[DM,$error],false)},{prop:"UnmarshalText",name:"UnmarshalText",pkg:"",typ:$funcType([DM],[$error],false)},{prop:"MarshalJSON",name:"MarshalJSON",pkg:"",typ:$funcType([],[DM,$error],false)},{prop:"UnmarshalJSON",name:"UnmarshalJSON",pkg:"",typ:$funcType([DM],[$error],false)},{prop:"ProbablyPrime",name:"ProbablyPrime",pkg:"",typ:$funcType([$Int],[$Bool],false)}];BW.methods=[{prop:"ReadByte",name:"ReadByte",pkg:"",typ:$funcType([],[$Uint8,$error],false)},{prop:"UnreadByte",name:"UnreadByte",pkg:"",typ:$funcType([],[$error],false)}];BX.methods=[{prop:"clear",name:"clear",pkg:"math/big",typ:$funcType([],[],false)},{prop:"norm",name:"norm",pkg:"math/big",typ:$funcType([],[BX],false)},{prop:"make",name:"make",pkg:"math/big",typ:$funcType([$Int],[BX],false)},{prop:"setWord",name:"setWord",pkg:"math/big",typ:$funcType([X],[BX],false)},{prop:"setUint64",name:"setUint64",pkg:"math/big",typ:$funcType([$Uint64],[BX],false)},{prop:"set",name:"set",pkg:"math/big",typ:$funcType([BX],[BX],false)},{prop:"add",name:"add",pkg:"math/big",typ:$funcType([BX,BX],[BX],false)},{prop:"sub",name:"sub",pkg:"math/big",typ:$funcType([BX,BX],[BX],false)},{prop:"cmp",name:"cmp",pkg:"math/big",typ:$funcType([BX],[$Int],false)},{prop:"mulAddWW",name:"mulAddWW",pkg:"math/big",typ:$funcType([BX,X,X],[BX],false)},{prop:"montgomery",name:"montgomery",pkg:"math/big",typ:$funcType([BX,BX,BX,X,$Int],[BX],false)},{prop:"mul",name:"mul",pkg:"math/big",typ:$funcType([BX,BX],[BX],false)},{prop:"mulRange",name:"mulRange",pkg:"math/big",typ:$funcType([$Uint64,$Uint64],[BX],false)},{prop:"divW",name:"divW",pkg:"math/big",typ:$funcType([BX,X],[BX,X],false)},{prop:"div",name:"div",pkg:"math/big",typ:$funcType([BX,BX,BX],[BX,BX],false)},{prop:"divLarge",name:"divLarge",pkg:"math/big",typ:$funcType([BX,BX,BX],[BX,BX],false)},{prop:"bitLen",name:"bitLen",pkg:"math/big",typ:$funcType([],[$Int],false)},{prop:"trailingZeroBits",name:"trailingZeroBits",pkg:"math/big",typ:$funcType([],[$Uint],false)},{prop:"shl",name:"shl",pkg:"math/big",typ:$funcType([BX,$Uint],[BX],false)},{prop:"shr",name:"shr",pkg:"math/big",typ:$funcType([BX,$Uint],[BX],false)},{prop:"setBit",name:"setBit",pkg:"math/big",typ:$funcType([BX,$Uint,$Uint],[BX],false)},{prop:"bit",name:"bit",pkg:"math/big",typ:$funcType([$Uint],[$Uint],false)},{prop:"sticky",name:"sticky",pkg:"math/big",typ:$funcType([$Uint],[$Uint],false)},{prop:"and",name:"and",pkg:"math/big",typ:$funcType([BX,BX],[BX],false)},{prop:"andNot",name:"andNot",pkg:"math/big",typ:$funcType([BX,BX],[BX],false)},{prop:"or",name:"or",pkg:"math/big",typ:$funcType([BX,BX],[BX],false)},{prop:"xor",name:"xor",pkg:"math/big",typ:$funcType([BX,BX],[BX],false)},{prop:"modW",name:"modW",pkg:"math/big",typ:$funcType([X],[X],false)},{prop:"random",name:"random",pkg:"math/big",typ:$funcType([DW,BX,$Int],[BX],false)},{prop:"expNN",name:"expNN",pkg:"math/big",typ:$funcType([BX,BX,BX],[BX],false)},{prop:"expNNWindowed",name:"expNNWindowed",pkg:"math/big",typ:$funcType([BX,BX,BX],[BX],false)},{prop:"expNNMontgomery",name:"expNNMontgomery",pkg:"math/big",typ:$funcType([BX,BX,BX],[BX],false)},{prop:"bytes",name:"bytes",pkg:"math/big",typ:$funcType([DM],[$Int],false)},{prop:"setBytes",name:"setBytes",pkg:"math/big",typ:$funcType([DM],[BX],false)},{prop:"sqrt",name:"sqrt",pkg:"math/big",typ:$funcType([BX],[BX],false)},{prop:"scan",name:"scan",pkg:"math/big",typ:$funcType([C.ByteScanner,$Int,$Bool],[BX,$Int,$Int,$error],false)},{prop:"utoa",name:"utoa",pkg:"math/big",typ:$funcType([$Int],[DM],false)},{prop:"itoa",name:"itoa",pkg:"math/big",typ:$funcType([$Bool,$Int],[DM],false)},{prop:"convertWords",name:"convertWords",pkg:"math/big",typ:$funcType([DM,X,$Int,X,DU],[],false)},{prop:"expWW",name:"expWW",pkg:"math/big",typ:$funcType([X,X],[BX],false)},{prop:"probablyPrimeMillerRabin",name:"probablyPrimeMillerRabin",pkg:"math/big",typ:$funcType([$Int,$Bool],[$Bool],false)},{prop:"probablyPrimeLucas",name:"probablyPrimeLucas",pkg:"math/big",typ:$funcType([],[$Bool],false)}];BO.init("math/big",[{prop:"neg",name:"neg",exported:false,typ:$Bool,tag:""},{prop:"abs",name:"abs",exported:false,typ:BX,tag:""}]);BW.init("",[{prop:"ScanState",name:"",exported:true,typ:A.ScanState,tag:""}]);BX.init(X);CU.init("math/big",[{prop:"bbb",name:"bbb",exported:false,typ:BX,tag:""},{prop:"nbits",name:"nbits",exported:false,typ:$Int,tag:""},{prop:"ndigits",name:"ndigits",exported:false,typ:$Int,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=F.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}CM=new J.Pool.ptr(DI.nil,$throwNilPointerError);CV=new DK.ptr(new J.Mutex.ptr(false),DJ.zero());BY=new BX([1]);BP=new BO.ptr(false,BY);BZ=new BX([2]);CE=40;CN=$toNativeArray($kindUint8,[0,1,28,2,29,14,24,3,30,22,20,15,25,17,4,8,31,27,13,23,21,19,16,7,26,12,18,6,11,5,10,9]);CO=$toNativeArray($kindUint8,[0,1,56,2,57,49,28,3,61,58,42,50,38,29,17,4,62,47,59,36,45,43,51,22,53,39,33,30,24,18,12,5,63,55,48,27,60,41,37,16,46,35,44,21,52,32,23,11,54,26,40,15,34,20,31,10,25,14,19,9,13,8,7,6]);CT=8;}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["crypto/rand"]=(function(){var $pkg={},$init,A,B,C,D,F,L,N,I,E,G;A=$packages["errors"];B=$packages["github.com/gopherjs/gopherjs/js"];C=$packages["io"];D=$packages["math/big"];F=$pkg.rngReader=$newType(0,$kindStruct,"rand.rngReader",true,"crypto/rand",false,function(){this.$val=this;if(arguments.length===0){return;}});L=$sliceType($Uint8);N=$ptrType(F);E=function(){var $ptr;$pkg.Reader=new F.ptr();};F.ptr.prototype.Read=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;b=0;c=$ifaceNil;d=this;e=a.$array;f=$parseInt(a.$offset)>>0;g=$global.crypto;if(g===undefined){g=$global.msCrypto;}if(!(g===undefined)){if(!(g.getRandomValues===undefined)){b=a.$length;if(b>65536){b=65536;}g.getRandomValues(e.subarray(f,f+b>>0));h=b;i=$ifaceNil;b=h;c=i;return[b,c];}}j=$global.require;if(!(j===undefined)){k=j($externalize("crypto",$String)).randomBytes;if(!(k===undefined)){e.set(k(a.$length),f);l=a.$length;m=$ifaceNil;b=l;c=m;return[b,c];}}n=0;o=A.New("crypto/rand not available in this environment");b=n;c=o;return[b,c];};F.prototype.Read=function(a){return this.$val.Read(a);};G=function(a){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=0;c=$ifaceNil;e=C.ReadFull($pkg.Reader,a);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;b=d[0];c=d[1];$s=-1;return[b,c];}return;}if($f===undefined){$f={$blk:G};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Read=G;N.methods=[{prop:"Read",name:"Read",pkg:"",typ:$funcType([L],[$Int,$error],false)}];F.init("",[]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$pkg.Reader=$ifaceNil;I=new D.Int.ptr(false,D.nat.nil).SetUint64(new $Uint64(3793877372,820596253));E();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["gopkg.in/dedis/crypto.v0/random"]=(function(){var $pkg={},$init,A,B,C,D,O,P,Q,R,E,L,M,N;A=$packages["crypto/cipher"];B=$packages["crypto/rand"];C=$packages["encoding/binary"];D=$packages["math/big"];O=$pkg.randstream=$newType(0,$kindStruct,"random.randstream",true,"gopkg.in/dedis/crypto.v0/random",false,function(){this.$val=this;if(arguments.length===0){return;}});P=$sliceType($Uint8);Q=$ptrType(D.Int);R=$ptrType(O);E=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=$makeSlice(P,(d=((a+7>>>0))/8,(d===d&&d!==1/0&&d!==-1/0)?d>>>0:$throwRuntimeError("integer divide by zero")));$r=c.XORKeyStream(e,e);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=(a&7)>>>0;if(!((f===0))){(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]=(((0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0])&((~(((g=f,g<32?(255<<g):0)<<24>>>24))<<24>>>24)))>>>0));}if(b){if(!((f===0))){(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]=(((0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0])|(((h=((f-1>>>0)),h<32?(1<<h):0)<<24>>>24)))>>>0));}else{(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]=(((0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0])|(128))>>>0));}}$s=-1;return e;}return;}if($f===undefined){$f={$blk:E};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Bits=E;L=function(a,b){var $ptr,a,b,c,d,e,f,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=(a.BitLen()>>>0);d=new D.Int.ptr(false,D.nat.nil);case 1:e=E(c,false,b);$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=d.SetBytes(e);$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;if(d.Sign()>0&&d.Cmp(a)<0){$s=-1;return d;}$s=1;continue;case 2:$s=-1;return Q.nil;}return;}if($f===undefined){$f={$blk:L};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Int=L;M=function(a,b){var $ptr,a,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=$makeSlice(P,a);$r=b.XORKeyStream(c,c);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return c;}return;}if($f===undefined){$f={$blk:M};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Bytes=M;N=function(a,b){var $ptr,a,b,c,d,e,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=P.nil;case 1:d=M(a,b);$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;e=c;f=0;while(true){if(!(f<e.$length)){break;}g=((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]);if(!((g===0))){$s=-1;return c;}f++;}$s=1;continue;case 2:$s=-1;return c;}return;}if($f===undefined){$f={$blk:N};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};$pkg.NonZeroBytes=N;O.ptr.prototype.XORKeyStream=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;d=a.$length;if(!((b.$length===d))){$panic(new $String("XORKeyStream: mismatched buffer lengths"));}e=$makeSlice(P,d);g=B.Read(e);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;h=f[0];i=f[1];if(!($interfaceIsEqual(i,$ifaceNil))){$panic(i);}if(h<e.$length){$panic(new $String("short read on infinite random stream!?"));}j=0;while(true){if(!(j<d)){break;}((j<0||j>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+j]=((((j<0||j>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+j])^((j<0||j>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+j]))<<24>>>24));j=j+(1)>>0;}$s=-1;return;}return;}if($f===undefined){$f={$blk:O.ptr.prototype.XORKeyStream};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};O.prototype.XORKeyStream=function(a,b){return this.$val.XORKeyStream(a,b);};R.methods=[{prop:"XORKeyStream",name:"XORKeyStream",pkg:"",typ:$funcType([P,P],[],false)}];O.init("",[]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$pkg.Stream=new O.ptr();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["regexp/syntax"]=(function(){var $pkg={},$init,E,B,F,C,A,D,G,H,I,M,N,O,P,Z,AM,BK,BL,BN,BQ,BW,BX,CB,CC,CD,CE,CF,CG,CH,CI,CJ,CK,CL,CM,CN,CO,CP,CQ,CR,CS,K,L,AA,AR,AS,AT,AU,AV,AW,AX,AY,AZ,BA,BB,BC,BD,BE,BF,BG,BH,BI,BJ,BM,J,Q,R,S,T,U,V,W,X,Y,AB,AC,AD,AE,AF,AG,AH,AI,AJ,AK,AL,AN,AO,AP,AQ,BO,BP,BR,BS,BT,BU,BV,BY,BZ,CA;E=$packages["bytes"];B=$packages["sort"];F=$packages["strconv"];C=$packages["strings"];A=$packages["unicode"];D=$packages["unicode/utf8"];G=$pkg.patchList=$newType(4,$kindUint32,"syntax.patchList",true,"regexp/syntax",false,null);H=$pkg.frag=$newType(0,$kindStruct,"syntax.frag",true,"regexp/syntax",false,function(i_,out_){this.$val=this;if(arguments.length===0){this.i=0;this.out=0;return;}this.i=i_;this.out=out_;});I=$pkg.compiler=$newType(0,$kindStruct,"syntax.compiler",true,"regexp/syntax",false,function(p_){this.$val=this;if(arguments.length===0){this.p=CF.nil;return;}this.p=p_;});M=$pkg.Error=$newType(0,$kindStruct,"syntax.Error",true,"regexp/syntax",true,function(Code_,Expr_){this.$val=this;if(arguments.length===0){this.Code="";this.Expr="";return;}this.Code=Code_;this.Expr=Expr_;});N=$pkg.ErrorCode=$newType(8,$kindString,"syntax.ErrorCode",true,"regexp/syntax",true,null);O=$pkg.Flags=$newType(2,$kindUint16,"syntax.Flags",true,"regexp/syntax",true,null);P=$pkg.parser=$newType(0,$kindStruct,"syntax.parser",true,"regexp/syntax",false,function(flags_,stack_,free_,numCap_,wholeRegexp_,tmpClass_){this.$val=this;if(arguments.length===0){this.flags=0;this.stack=CI.nil;this.free=CH.nil;this.numCap=0;this.wholeRegexp="";this.tmpClass=CB.nil;return;}this.flags=flags_;this.stack=stack_;this.free=free_;this.numCap=numCap_;this.wholeRegexp=wholeRegexp_;this.tmpClass=tmpClass_;});Z=$pkg.charGroup=$newType(0,$kindStruct,"syntax.charGroup",true,"regexp/syntax",false,function(sign_,class$1_){this.$val=this;if(arguments.length===0){this.sign=0;this.class$1=CB.nil;return;}this.sign=sign_;this.class$1=class$1_;});AM=$pkg.ranges=$newType(0,$kindStruct,"syntax.ranges",true,"regexp/syntax",false,function(p_){this.$val=this;if(arguments.length===0){this.p=CL.nil;return;}this.p=p_;});BK=$pkg.Prog=$newType(0,$kindStruct,"syntax.Prog",true,"regexp/syntax",true,function(Inst_,Start_,NumCap_){this.$val=this;if(arguments.length===0){this.Inst=CG.nil;this.Start=0;this.NumCap=0;return;}this.Inst=Inst_;this.Start=Start_;this.NumCap=NumCap_;});BL=$pkg.InstOp=$newType(1,$kindUint8,"syntax.InstOp",true,"regexp/syntax",true,null);BN=$pkg.EmptyOp=$newType(1,$kindUint8,"syntax.EmptyOp",true,"regexp/syntax",true,null);BQ=$pkg.Inst=$newType(0,$kindStruct,"syntax.Inst",true,"regexp/syntax",true,function(Op_,Out_,Arg_,Rune_){this.$val=this;if(arguments.length===0){this.Op=0;this.Out=0;this.Arg=0;this.Rune=CB.nil;return;}this.Op=Op_;this.Out=Out_;this.Arg=Arg_;this.Rune=Rune_;});BW=$pkg.Regexp=$newType(0,$kindStruct,"syntax.Regexp",true,"regexp/syntax",true,function(Op_,Flags_,Sub_,Sub0_,Rune_,Rune0_,Min_,Max_,Cap_,Name_){this.$val=this;if(arguments.length===0){this.Op=0;this.Flags=0;this.Sub=CI.nil;this.Sub0=CJ.zero();this.Rune=CB.nil;this.Rune0=CK.zero();this.Min=0;this.Max=0;this.Cap=0;this.Name="";return;}this.Op=Op_;this.Flags=Flags_;this.Sub=Sub_;this.Sub0=Sub0_;this.Rune=Rune_;this.Rune0=Rune0_;this.Min=Min_;this.Max=Max_;this.Cap=Cap_;this.Name=Name_;});BX=$pkg.Op=$newType(1,$kindUint8,"syntax.Op",true,"regexp/syntax",true,null);CB=$sliceType($Int32);CC=$sliceType(A.Range16);CD=$sliceType(A.Range32);CE=$sliceType($String);CF=$ptrType(BK);CG=$sliceType(BQ);CH=$ptrType(BW);CI=$sliceType(CH);CJ=$arrayType(CH,1);CK=$arrayType($Int32,2);CL=$ptrType(CB);CM=$ptrType(A.RangeTable);CN=$sliceType($Uint8);CO=$arrayType($Uint8,64);CP=$ptrType(I);CQ=$ptrType(M);CR=$ptrType(P);CS=$ptrType(BQ);G.prototype.next=function(a){var $ptr,a,b,c,d,e;b=this.$val;e=(c=a.Inst,d=b>>>1>>>0,((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]));if(((b&1)>>>0)===0){return(e.Out>>>0);}return(e.Arg>>>0);};$ptrType(G).prototype.next=function(a){return new G(this.$get()).next(a);};G.prototype.patch=function(a,b){var $ptr,a,b,c,d,e,f;c=this.$val;while(true){if(!(!((c===0)))){break;}f=(d=a.Inst,e=c>>>1>>>0,((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]));if(((c&1)>>>0)===0){c=(f.Out>>>0);f.Out=b;}else{c=(f.Arg>>>0);f.Arg=b;}}};$ptrType(G).prototype.patch=function(a,b){return new G(this.$get()).patch(a,b);};G.prototype.append=function(a,b){var $ptr,a,b,c,d,e,f,g,h;c=this.$val;if(c===0){return b;}if(b===0){return c;}d=c;while(true){e=new G(d).next(a);if(e===0){break;}d=e;}h=(f=a.Inst,g=d>>>1>>>0,((g<0||g>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+g]));if(((d&1)>>>0)===0){h.Out=(b>>>0);}else{h.Arg=(b>>>0);}return c;};$ptrType(G).prototype.append=function(a,b){return new G(this.$get()).append(a,b);};J=function(a){var $ptr,a,b,c;b=new I.ptr(CF.nil);b.init();c=$clone(b.compile(a),H);new G(c.out).patch(b.p,b.inst(4).i);b.p.Start=(c.i>>0);return[b.p,$ifaceNil];};$pkg.Compile=J;I.ptr.prototype.init=function(){var $ptr,a;a=this;a.p=new BK.ptr(CG.nil,0,0);a.p.NumCap=2;a.inst(5);};I.prototype.init=function(){return this.$val.init();};I.ptr.prototype.compile=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x;b=this;c=a.Op;if(c===(1)){return b.fail();}else if(c===(2)){return b.nop();}else if(c===(3)){if(a.Rune.$length===0){return b.nop();}d=new H.ptr(0,0);e=a.Rune;f=0;while(true){if(!(f<e.$length)){break;}g=f;h=$clone(b.rune($subslice(a.Rune,g,(g+1>>0)),a.Flags),H);if(g===0){H.copy(d,h);}else{H.copy(d,b.cat($clone(d,H),$clone(h,H)));}f++;}return d;}else if(c===(4)){return b.rune(a.Rune,a.Flags);}else if(c===(5)){return b.rune(K,0);}else if(c===(6)){return b.rune(L,0);}else if(c===(7)){return b.empty(1);}else if(c===(8)){return b.empty(2);}else if(c===(9)){return b.empty(4);}else if(c===(10)){return b.empty(8);}else if(c===(11)){return b.empty(16);}else if(c===(12)){return b.empty(32);}else if(c===(13)){i=$clone(b.cap(((a.Cap<<1>>0)>>>0)),H);k=$clone(b.compile((j=a.Sub,(0>=j.$length?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+0]))),H);l=$clone(b.cap((((a.Cap<<1>>0)|1)>>>0)),H);return b.cat($clone(b.cat($clone(i,H),$clone(k,H)),H),$clone(l,H));}else if(c===(14)){return b.star($clone(b.compile((m=a.Sub,(0>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+0]))),H),!((((a.Flags&32)>>>0)===0)));}else if(c===(15)){return b.plus($clone(b.compile((n=a.Sub,(0>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+0]))),H),!((((a.Flags&32)>>>0)===0)));}else if(c===(16)){return b.quest($clone(b.compile((o=a.Sub,(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0]))),H),!((((a.Flags&32)>>>0)===0)));}else if(c===(18)){if(a.Sub.$length===0){return b.nop();}p=new H.ptr(0,0);q=a.Sub;r=0;while(true){if(!(r<q.$length)){break;}s=r;t=((r<0||r>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+r]);if(s===0){H.copy(p,b.compile(t));}else{H.copy(p,b.cat($clone(p,H),$clone(b.compile(t),H)));}r++;}return p;}else if(c===(19)){u=new H.ptr(0,0);v=a.Sub;w=0;while(true){if(!(w<v.$length)){break;}x=((w<0||w>=v.$length)?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+w]);H.copy(u,b.alt($clone(u,H),$clone(b.compile(x),H)));w++;}return u;}$panic(new $String("regexp: unhandled case in compile"));};I.prototype.compile=function(a){return this.$val.compile(a);};I.ptr.prototype.inst=function(a){var $ptr,a,b,c;b=this;c=new H.ptr((b.p.Inst.$length>>>0),0);b.p.Inst=$append(b.p.Inst,new BQ.ptr(a,0,0,CB.nil));return c;};I.prototype.inst=function(a){return this.$val.inst(a);};I.ptr.prototype.nop=function(){var $ptr,a,b;a=this;b=$clone(a.inst(6),H);b.out=((b.i<<1>>>0)>>>0);return b;};I.prototype.nop=function(){return this.$val.nop();};I.ptr.prototype.fail=function(){var $ptr,a;a=this;return new H.ptr(0,0);};I.prototype.fail=function(){return this.$val.fail();};I.ptr.prototype.cap=function(a){var $ptr,a,b,c,d,e;b=this;c=$clone(b.inst(2),H);c.out=((c.i<<1>>>0)>>>0);(d=b.p.Inst,e=c.i,((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e])).Arg=a;if(b.p.NumCap<((a>>0)+1>>0)){b.p.NumCap=(a>>0)+1>>0;}return c;};I.prototype.cap=function(a){return this.$val.cap(a);};I.ptr.prototype.cat=function(a,b){var $ptr,a,b,c;c=this;if((a.i===0)||(b.i===0)){return new H.ptr(0,0);}new G(a.out).patch(c.p,b.i);return new H.ptr(a.i,b.out);};I.prototype.cat=function(a,b){return this.$val.cat(a,b);};I.ptr.prototype.alt=function(a,b){var $ptr,a,b,c,d,e,f,g;c=this;if(a.i===0){return b;}if(b.i===0){return a;}d=$clone(c.inst(0),H);g=(e=c.p.Inst,f=d.i,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]));g.Out=a.i;g.Arg=b.i;d.out=new G(a.out).append(c.p,b.out);return d;};I.prototype.alt=function(a,b){return this.$val.alt(a,b);};I.ptr.prototype.quest=function(a,b){var $ptr,a,b,c,d,e,f,g;c=this;d=$clone(c.inst(0),H);g=(e=c.p.Inst,f=d.i,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]));if(b){g.Arg=a.i;d.out=((d.i<<1>>>0)>>>0);}else{g.Out=a.i;d.out=((((d.i<<1>>>0)|1)>>>0)>>>0);}d.out=new G(d.out).append(c.p,a.out);return d;};I.prototype.quest=function(a,b){return this.$val.quest(a,b);};I.ptr.prototype.star=function(a,b){var $ptr,a,b,c,d,e,f,g;c=this;d=$clone(c.inst(0),H);g=(e=c.p.Inst,f=d.i,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]));if(b){g.Arg=a.i;d.out=((d.i<<1>>>0)>>>0);}else{g.Out=a.i;d.out=((((d.i<<1>>>0)|1)>>>0)>>>0);}new G(a.out).patch(c.p,d.i);return d;};I.prototype.star=function(a,b){return this.$val.star(a,b);};I.ptr.prototype.plus=function(a,b){var $ptr,a,b,c;c=this;return new H.ptr(a.i,c.star($clone(a,H),b).out);};I.prototype.plus=function(a,b){return this.$val.plus(a,b);};I.ptr.prototype.empty=function(a){var $ptr,a,b,c,d,e;b=this;c=$clone(b.inst(3),H);(d=b.p.Inst,e=c.i,((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e])).Arg=(a>>>0);c.out=((c.i<<1>>>0)>>>0);return c;};I.prototype.empty=function(a){return this.$val.empty(a);};I.ptr.prototype.rune=function(a,b){var $ptr,a,b,c,d,e,f,g;c=this;d=$clone(c.inst(7),H);g=(e=c.p.Inst,f=d.i,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]));g.Rune=a;b=(b&(1))>>>0;if(!((a.$length===1))||(A.SimpleFold((0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]))===(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]))){b=(b&~(1))<<16>>>16;}g.Arg=(b>>>0);d.out=((d.i<<1>>>0)>>>0);if((((b&1)>>>0)===0)&&((a.$length===1)||(a.$length===2)&&((0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0])===(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1])))){g.Op=8;}else if((a.$length===2)&&((0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0])===0)&&((1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1])===1114111)){g.Op=9;}else if((a.$length===4)&&((0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0])===0)&&((1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1])===9)&&((2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2])===11)&&((3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3])===1114111)){g.Op=10;}return d;};I.prototype.rune=function(a,b){return this.$val.rune(a,b);};M.ptr.prototype.Error=function(){var $ptr,a;a=this;return"error parsing regexp: "+new N(a.Code).String()+": `"+a.Expr+"`";};M.prototype.Error=function(){return this.$val.Error();};N.prototype.String=function(){var $ptr,a;a=this.$val;return a;};$ptrType(N).prototype.String=function(){return new N(this.$get()).String();};P.ptr.prototype.newRegexp=function(a){var $ptr,a,b,c;b=this;c=b.free;if(!(c===CH.nil)){b.free=c.Sub0[0];BW.copy(c,new BW.ptr(0,0,CI.nil,CJ.zero(),CB.nil,CK.zero(),0,0,0,""));}else{c=new BW.ptr(0,0,CI.nil,CJ.zero(),CB.nil,CK.zero(),0,0,0,"");}c.Op=a;return c;};P.prototype.newRegexp=function(a){return this.$val.newRegexp(a);};P.ptr.prototype.reuse=function(a){var $ptr,a,b;b=this;a.Sub0[0]=b.free;b.free=a;};P.prototype.reuse=function(a){return this.$val.reuse(a);};P.ptr.prototype.push=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t;b=this;if((a.Op===4)&&(a.Rune.$length===2)&&((c=a.Rune,(0>=c.$length?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+0]))===(d=a.Rune,(1>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+1])))){if(b.maybeConcat((s=a.Rune,(0>=s.$length?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+0])),(b.flags&~1)<<16>>>16)){return CH.nil;}a.Op=3;a.Rune=$subslice(a.Rune,0,1);a.Flags=(b.flags&~1)<<16>>>16;}else if((a.Op===4)&&(a.Rune.$length===4)&&((e=a.Rune,(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]))===(f=a.Rune,(1>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+1])))&&((g=a.Rune,(2>=g.$length?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+2]))===(h=a.Rune,(3>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+3])))&&(A.SimpleFold((i=a.Rune,(0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0])))===(j=a.Rune,(2>=j.$length?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+2])))&&(A.SimpleFold((k=a.Rune,(2>=k.$length?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+2])))===(l=a.Rune,(0>=l.$length?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+0])))||(a.Op===4)&&(a.Rune.$length===2)&&(((m=a.Rune,(0>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+0]))+1>>0)===(n=a.Rune,(1>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+1])))&&(A.SimpleFold((o=a.Rune,(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0])))===(p=a.Rune,(1>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+1])))&&(A.SimpleFold((q=a.Rune,(1>=q.$length?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+1])))===(r=a.Rune,(0>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+0])))){if(b.maybeConcat((t=a.Rune,(0>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+0])),(b.flags|1)>>>0)){return CH.nil;}a.Op=3;a.Rune=$subslice(a.Rune,0,1);a.Flags=(b.flags|1)>>>0;}else{b.maybeConcat(-1,0);}b.stack=$append(b.stack,a);return a;};P.prototype.push=function(a){return this.$val.push(a);};P.ptr.prototype.maybeConcat=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k;c=this;d=c.stack.$length;if(d<2){return false;}g=(e=c.stack,f=d-1>>0,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]));j=(h=c.stack,i=d-2>>0,((i<0||i>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+i]));if(!((g.Op===3))||!((j.Op===3))||!((((g.Flags&1)>>>0)===((j.Flags&1)>>>0)))){return false;}j.Rune=$appendSlice(j.Rune,g.Rune);if(a>=0){g.Rune=$subslice(new CB(g.Rune0),0,1);(k=g.Rune,(0>=k.$length?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+0]=a));g.Flags=b;return true;}c.stack=$subslice(c.stack,0,(d-1>>0));c.reuse(g);return false;};P.prototype.maybeConcat=function(a,b){return this.$val.maybeConcat(a,b);};P.ptr.prototype.newLiteral=function(a,b){var $ptr,a,b,c,d;c=this;d=c.newRegexp(3);d.Flags=b;if(!((((b&1)>>>0)===0))){a=Q(a);}d.Rune0[0]=a;d.Rune=$subslice(new CB(d.Rune0),0,1);return d;};P.prototype.newLiteral=function(a,b){return this.$val.newLiteral(a,b);};Q=function(a){var $ptr,a,b,c;if(a<65||a>125251){return a;}b=a;c=a;a=A.SimpleFold(a);while(true){if(!(!((a===c)))){break;}if(b>a){b=a;}a=A.SimpleFold(a);}return b;};P.ptr.prototype.literal=function(a){var $ptr,a,b;b=this;b.push(b.newLiteral(a,b.flags));};P.prototype.literal=function(a){return this.$val.literal(a);};P.ptr.prototype.op=function(a){var $ptr,a,b,c;b=this;c=b.newRegexp(a);c.Flags=b.flags;return b.push(c);};P.prototype.op=function(a){return this.$val.op(a);};P.ptr.prototype.repeat=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p;g=this;h=g.flags;if(!((((g.flags&64)>>>0)===0))){if(e.length>0&&(e.charCodeAt(0)===63)){e=$substring(e,1);h=(h^(32))<<16>>>16;}if(!(f==="")){return["",new M.ptr("invalid nested repetition operator",$substring(f,0,(f.length-e.length>>0)))];}}i=g.stack.$length;if(i===0){return["",new M.ptr("missing argument to repetition operator",$substring(d,0,(d.length-e.length>>0)))];}l=(j=g.stack,k=i-1>>0,((k<0||k>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+k]));if(l.Op>=128){return["",new M.ptr("missing argument to repetition operator",$substring(d,0,(d.length-e.length>>0)))];}m=g.newRegexp(a);m.Min=b;m.Max=c;m.Flags=h;m.Sub=$subslice(new CI(m.Sub0),0,1);(n=m.Sub,(0>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+0]=l));(o=g.stack,p=i-1>>0,((p<0||p>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+p]=m));if((a===17)&&(b>=2||c>=2)&&!R(m,1000)){return["",new M.ptr("invalid repeat count",$substring(d,0,(d.length-e.length>>0)))];}return[e,$ifaceNil];};P.prototype.repeat=function(a,b,c,d,e,f){return this.$val.repeat(a,b,c,d,e,f);};R=function(a,b){var $ptr,a,b,c,d,e,f,g;if(a.Op===17){c=a.Max;if(c===0){return true;}if(c<0){c=a.Min;}if(c>b){return false;}if(c>0){b=(d=b/(c),(d===d&&d!==1/0&&d!==-1/0)?d>>0:$throwRuntimeError("integer divide by zero"));}}e=a.Sub;f=0;while(true){if(!(f<e.$length)){break;}g=((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]);if(!R(g,b)){return false;}f++;}return true;};P.ptr.prototype.concat=function(){var $ptr,a,b,c,d,e,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;a.maybeConcat(-1,0);b=a.stack.$length;while(true){if(!(b>0&&(c=a.stack,d=b-1>>0,((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d])).Op<128)){break;}b=b-(1)>>0;}e=$subslice(a.stack,b);a.stack=$subslice(a.stack,0,b);if(e.$length===0){$s=-1;return a.push(a.newRegexp(2));}f=a.collapse(e,18);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=a.push(f);$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$s=-1;return g;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.concat};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.concat=function(){return this.$val.concat();};P.ptr.prototype.alternate=function(){var $ptr,a,b,c,d,e,f,g,h,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.stack.$length;while(true){if(!(b>0&&(c=a.stack,d=b-1>>0,((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d])).Op<128)){break;}b=b-(1)>>0;}e=$subslice(a.stack,b);a.stack=$subslice(a.stack,0,b);if(e.$length>0){$s=1;continue;}$s=2;continue;case 1:$r=S((f=e.$length-1>>0,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f])));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:if(e.$length===0){$s=-1;return a.push(a.newRegexp(1));}g=a.collapse(e,19);$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=a.push(g);$s=5;case 5:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=-1;return h;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.alternate};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.alternate=function(){return this.$val.alternate();};S=function(a){var $ptr,a,b,c,d,e,f,g,h,i,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=a.Op;if(b===(4)){$s=2;continue;}$s=3;continue;case 2:c=AC((a.$ptr_Rune||(a.$ptr_Rune=new CL(function(){return this.$target.Rune;},function($v){this.$target.Rune=$v;},a))));$s=4;case 4:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}a.Rune=c;if((a.Rune.$length===2)&&((d=a.Rune,(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0]))===0)&&((e=a.Rune,(1>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+1]))===1114111)){a.Rune=CB.nil;a.Op=6;$s=-1;return;}if((a.Rune.$length===4)&&((f=a.Rune,(0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0]))===0)&&((g=a.Rune,(1>=g.$length?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+1]))===9)&&((h=a.Rune,(2>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+2]))===11)&&((i=a.Rune,(3>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+3]))===1114111)){a.Rune=CB.nil;a.Op=5;$s=-1;return;}if((a.Rune.$capacity-a.Rune.$length>>0)>100){a.Rune=$appendSlice($subslice(new CB(a.Rune0),0,0),a.Rune);}case 3:case 1:$s=-1;return;}return;}if($f===undefined){$f={$blk:S};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};P.ptr.prototype.collapse=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;if(a.$length===1){$s=-1;return(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]);}d=c.newRegexp(b);d.Sub=$subslice(new CI(d.Sub0),0,0);e=a;f=0;while(true){if(!(f<e.$length)){break;}g=((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]);if(g.Op===b){d.Sub=$appendSlice(d.Sub,g.Sub);c.reuse(g);}else{d.Sub=$append(d.Sub,g);}f++;}if(b===19){$s=1;continue;}$s=2;continue;case 1:h=c.factor(d.Sub,d.Flags);$s=3;case 3:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}d.Sub=h;if(d.Sub.$length===1){i=d;d=(j=d.Sub,(0>=j.$length?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+0]));c.reuse(i);}case 2:$s=-1;return d;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.collapse};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.collapse=function(a,b){return this.$val.collapse(a,b);};P.ptr.prototype.factor=function(a,b){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;if(a.$length<2){$s=-1;return a;}d=CB.nil;e=0;f=0;g=$subslice(a,0,0);h=0;case 1:if(!(h<=a.$length)){$s=2;continue;}i=CB.nil;j=0;if(h<a.$length){$s=3;continue;}$s=4;continue;case 3:k=c.leadingString(((h<0||h>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+h]));i=k[0];j=k[1];if(j===e){l=0;while(true){if(!(l<d.$length&&l<i.$length&&(((l<0||l>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+l])===((l<0||l>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+l])))){break;}l=l+(1)>>0;}if(l>0){d=$subslice(d,0,l);h=h+(1)>>0;$s=1;continue;}}case 4:if(h===f){$s=5;continue;}if(h===(f+1>>0)){$s=6;continue;}$s=7;continue;case 5:$s=8;continue;case 6:g=$append(g,((f<0||f>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+f]));$s=8;continue;case 7:m=c.newRegexp(3);m.Flags=e;m.Rune=$appendSlice($subslice(m.Rune,0,0),d);n=f;while(true){if(!(n<h)){break;}((n<0||n>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+n]=c.removeLeadingString(((n<0||n>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+n]),d.$length));n=n+(1)>>0;}o=c.collapse($subslice(a,f,h),19);$s=9;case 9:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=o;q=c.newRegexp(18);q.Sub=$append($subslice(q.Sub,0,0),m,p);g=$append(g,q);case 8:f=h;d=i;e=j;h=h+(1)>>0;$s=1;continue;case 2:a=g;f=0;g=$subslice(a,0,0);r=CH.nil;s=0;case 10:if(!(s<=a.$length)){$s=11;continue;}t=CH.nil;if(s<a.$length){$s=12;continue;}$s=13;continue;case 12:t=c.leadingRegexp(((s<0||s>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+s]));if(!(r===CH.nil)&&r.Equal(t)&&(W(r)||((r.Op===17)&&(r.Min===r.Max)&&W((u=r.Sub,(0>=u.$length?($throwRuntimeError("index out of range"),undefined):u.$array[u.$offset+0])))))){s=s+(1)>>0;$s=10;continue;}case 13:if(s===f){$s=14;continue;}if(s===(f+1>>0)){$s=15;continue;}$s=16;continue;case 14:$s=17;continue;case 15:g=$append(g,((f<0||f>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+f]));$s=17;continue;case 16:v=r;w=f;while(true){if(!(w<s)){break;}x=!((w===f));((w<0||w>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+w]=c.removeLeadingRegexp(((w<0||w>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+w]),x));w=w+(1)>>0;}y=c.collapse($subslice(a,f,s),19);$s=18;case 18:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}z=y;aa=c.newRegexp(18);aa.Sub=$append($subslice(aa.Sub,0,0),v,z);g=$append(g,aa);case 17:f=s;r=t;s=s+(1)>>0;$s=10;continue;case 11:a=g;f=0;g=$subslice(a,0,0);ab=0;case 19:if(!(ab<=a.$length)){$s=20;continue;}if(ab<a.$length&&W(((ab<0||ab>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ab]))){$s=21;continue;}$s=22;continue;case 21:ab=ab+(1)>>0;$s=19;continue;case 22:if(ab===f){$s=23;continue;}if(ab===(f+1>>0)){$s=24;continue;}$s=25;continue;case 23:$s=26;continue;case 24:g=$append(g,((f<0||f>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+f]));$s=26;continue;case 25:ac=f;ad=f+1>>0;while(true){if(!(ad<ab)){break;}if(((ac<0||ac>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ac]).Op<((ad<0||ad>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ad]).Op||(((ac<0||ac>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ac]).Op===((ad<0||ad>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ad]).Op)&&((ac<0||ac>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ac]).Rune.$length<((ad<0||ad>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ad]).Rune.$length){ac=ad;}ad=ad+(1)>>0;}ae=((ac<0||ac>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ac]);af=((f<0||f>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+f]);((f<0||f>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+f]=ae);((ac<0||ac>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ac]=af);ag=f+1>>0;while(true){if(!(ag<ab)){break;}Y(((f<0||f>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+f]),((ag<0||ag>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ag]));c.reuse(((ag<0||ag>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ag]));ag=ag+(1)>>0;}$r=S(((f<0||f>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+f]));$s=27;case 27:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}g=$append(g,((f<0||f>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+f]));case 26:if(ab<a.$length){g=$append(g,((ab<0||ab>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ab]));}f=ab+1>>0;ab=ab+(1)>>0;$s=19;continue;case 20:a=g;f=0;g=$subslice(a,0,0);ah=a;ai=0;while(true){if(!(ai<ah.$length)){break;}aj=ai;if((aj+1>>0)<a.$length&&(((aj<0||aj>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+aj]).Op===2)&&((ak=aj+1>>0,((ak<0||ak>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ak])).Op===2)){ai++;continue;}g=$append(g,((aj<0||aj>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+aj]));ai++;}a=g;$s=-1;return a;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.factor};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.factor=function(a,b){return this.$val.factor(a,b);};P.ptr.prototype.leadingString=function(a){var $ptr,a,b,c;b=this;if((a.Op===18)&&a.Sub.$length>0){a=(c=a.Sub,(0>=c.$length?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+0]));}if(!((a.Op===3))){return[CB.nil,0];}return[a.Rune,(a.Flags&1)>>>0];};P.prototype.leadingString=function(a){return this.$val.leadingString(a);};P.ptr.prototype.removeLeadingString=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i;c=this;if((a.Op===18)&&a.Sub.$length>0){e=(d=a.Sub,(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0]));e=c.removeLeadingString(e,b);(f=a.Sub,(0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0]=e));if(e.Op===2){c.reuse(e);g=a.Sub.$length;if((g===(0))||(g===(1))){a.Op=2;a.Sub=CI.nil;}else if(g===(2)){h=a;a=(i=a.Sub,(1>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+1]));c.reuse(h);}else{$copySlice(a.Sub,$subslice(a.Sub,1));a.Sub=$subslice(a.Sub,0,(a.Sub.$length-1>>0));}}return a;}if(a.Op===3){a.Rune=$subslice(a.Rune,0,$copySlice(a.Rune,$subslice(a.Rune,b)));if(a.Rune.$length===0){a.Op=2;}}return a;};P.prototype.removeLeadingString=function(a,b){return this.$val.removeLeadingString(a,b);};P.ptr.prototype.leadingRegexp=function(a){var $ptr,a,b,c,d;b=this;if(a.Op===2){return CH.nil;}if((a.Op===18)&&a.Sub.$length>0){d=(c=a.Sub,(0>=c.$length?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+0]));if(d.Op===2){return CH.nil;}return d;}return a;};P.prototype.leadingRegexp=function(a){return this.$val.leadingRegexp(a);};P.ptr.prototype.removeLeadingRegexp=function(a,b){var $ptr,a,b,c,d,e,f,g;c=this;if((a.Op===18)&&a.Sub.$length>0){if(b){c.reuse((d=a.Sub,(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0])));}a.Sub=$subslice(a.Sub,0,$copySlice(a.Sub,$subslice(a.Sub,1)));e=a.Sub.$length;if(e===(0)){a.Op=2;a.Sub=CI.nil;}else if(e===(1)){f=a;a=(g=a.Sub,(0>=g.$length?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+0]));c.reuse(f);}return a;}if(b){c.reuse(a);}return c.newRegexp(2);};P.prototype.removeLeadingRegexp=function(a,b){return this.$val.removeLeadingRegexp(a,b);};T=function(a,b){var $ptr,a,b,c,d,e,f,g;c=new BW.ptr(3,0,CI.nil,CJ.zero(),CB.nil,CK.zero(),0,0,0,"");c.Flags=b;c.Rune=$subslice(new CB(c.Rune0),0,0);d=a;e=0;while(true){if(!(e<d.length)){break;}f=$decodeRune(d,e);g=f[0];if(c.Rune.$length>=c.Rune.$capacity){c.Rune=new CB($stringToRunes(a));break;}c.Rune=$append(c.Rune,g);e+=f[1];}return c;};U=function(a,b){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if(!((((b&2)>>>0)===0))){c=AN(a);if(!($interfaceIsEqual(c,$ifaceNil))){$s=-1;return[CH.nil,c];}$s=-1;return[T(a,b),$ifaceNil];}d=new P.ptr(0,CI.nil,CH.nil,0,"",CB.nil);e=$ifaceNil;f=0;g=0;h="";d.flags=b;d.wholeRegexp=a;i=a;case 1:if(!(!(i===""))){$s=2;continue;}j="";k=i.charCodeAt(0);if(k===(40)){$s=4;continue;}if(k===(124)){$s=5;continue;}if(k===(41)){$s=6;continue;}if(k===(94)){$s=7;continue;}if(k===(36)){$s=8;continue;}if(k===(46)){$s=9;continue;}if(k===(91)){$s=10;continue;}if((k===(42))||(k===(43))||(k===(63))){$s=11;continue;}if(k===(123)){$s=12;continue;}if(k===(92)){$s=13;continue;}$s=14;continue;case 4:if(!((((d.flags&64)>>>0)===0))&&i.length>=2&&(i.charCodeAt(1)===63)){l=d.parsePerlFlags(i);i=l[0];e=l[1];if(!($interfaceIsEqual(e,$ifaceNil))){$s=-1;return[CH.nil,e];}$s=3;continue;}d.numCap=d.numCap+(1)>>0;d.op(128).Cap=d.numCap;i=$substring(i,1);$s=15;continue;case 5:m=d.parseVerticalBar();$s=16;case 16:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}e=m;if(!($interfaceIsEqual(e,$ifaceNil))){$s=-1;return[CH.nil,e];}i=$substring(i,1);$s=15;continue;case 6:n=d.parseRightParen();$s=17;case 17:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}e=n;if(!($interfaceIsEqual(e,$ifaceNil))){$s=-1;return[CH.nil,e];}i=$substring(i,1);$s=15;continue;case 7:if(!((((d.flags&16)>>>0)===0))){d.op(9);}else{d.op(7);}i=$substring(i,1);$s=15;continue;case 8:if(!((((d.flags&16)>>>0)===0))){o=d.op(10);o.Flags=(o.Flags|(256))>>>0;}else{d.op(8);}i=$substring(i,1);$s=15;continue;case 9:if(!((((d.flags&8)>>>0)===0))){d.op(6);}else{d.op(5);}i=$substring(i,1);$s=15;continue;case 10:q=d.parseClass(i);$s=18;case 18:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;i=p[0];e=p[1];if(!($interfaceIsEqual(e,$ifaceNil))){$s=-1;return[CH.nil,e];}$s=15;continue;case 11:r=i;s=i.charCodeAt(0);if(s===(42)){g=14;}else if(s===(43)){g=15;}else if(s===(63)){g=16;}t=$substring(i,1);u=d.repeat(g,0,0,r,t,h);t=u[0];e=u[1];if(!($interfaceIsEqual(e,$ifaceNil))){$s=-1;return[CH.nil,e];}j=r;i=t;$s=15;continue;case 12:g=17;v=i;w=d.parseRepeat(i);x=w[0];y=w[1];z=w[2];aa=w[3];if(!aa){d.literal(123);i=$substring(i,1);$s=3;continue;}if(x<0||x>1000||y>1000||y>=0&&x>y){$s=-1;return[CH.nil,new M.ptr("invalid repeat count",$substring(v,0,(v.length-z.length>>0)))];}ab=d.repeat(g,x,y,v,z,h);z=ab[0];e=ab[1];if(!($interfaceIsEqual(e,$ifaceNil))){$s=-1;return[CH.nil,e];}j=v;i=z;$s=15;continue;case 13:if(!((((d.flags&64)>>>0)===0))&&i.length>=2){ac=i.charCodeAt(1);if(ac===(65)){d.op(9);i=$substring(i,2);$s=3;continue s;}else if(ac===(98)){d.op(11);i=$substring(i,2);$s=3;continue s;}else if(ac===(66)){d.op(12);i=$substring(i,2);$s=3;continue s;}else if(ac===(67)){$s=-1;return[CH.nil,new M.ptr("invalid escape sequence",$substring(i,0,2))];}else if(ac===(81)){ad="";ae=C.Index(i,"\\E");if(ae<0){ad=$substring(i,2);i="";}else{ad=$substring(i,2,ae);i=$substring(i,(ae+2>>0));}while(true){if(!(!(ad===""))){break;}af=AO(ad);ag=af[0];ah=af[1];ai=af[2];if(!($interfaceIsEqual(ai,$ifaceNil))){$s=-1;return[CH.nil,ai];}d.literal(ag);ad=ah;}$s=3;continue s;}else if(ac===(122)){d.op(10);i=$substring(i,2);$s=3;continue s;}}aj=d.newRegexp(4);aj.Flags=d.flags;if(i.length>=2&&((i.charCodeAt(1)===112)||(i.charCodeAt(1)===80))){$s=19;continue;}$s=20;continue;case 19:al=d.parseUnicodeClass(i,$subslice(new CB(aj.Rune0),0,0));$s=21;case 21:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}ak=al;am=ak[0];an=ak[1];ao=ak[2];if(!($interfaceIsEqual(ao,$ifaceNil))){$s=-1;return[CH.nil,ao];}if(!(am===CB.nil)){aj.Rune=am;i=an;d.push(aj);$s=3;continue s;}case 20:aq=d.parsePerlClassEscape(i,$subslice(new CB(aj.Rune0),0,0));$s=22;case 22:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ap=aq;ar=ap[0];as=ap[1];if(!(ar===CB.nil)){aj.Rune=ar;i=as;d.push(aj);$s=3;continue s;}d.reuse(aj);at=d.parseEscape(i);f=at[0];i=at[1];e=at[2];if(!($interfaceIsEqual(e,$ifaceNil))){$s=-1;return[CH.nil,e];}d.literal(f);$s=15;continue;case 14:au=AO(i);f=au[0];i=au[1];e=au[2];if(!($interfaceIsEqual(e,$ifaceNil))){$s=-1;return[CH.nil,e];}d.literal(f);case 15:case 3:h=j;$s=1;continue;case 2:av=d.concat();$s=23;case 23:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}av;aw=d.swapVerticalBar();$s=26;case 26:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}if(aw){$s=24;continue;}$s=25;continue;case 24:d.stack=$subslice(d.stack,0,(d.stack.$length-1>>0));case 25:ax=d.alternate();$s=27;case 27:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}ax;ay=d.stack.$length;if(!((ay===1))){$s=-1;return[CH.nil,new M.ptr("missing closing )",a)];}$s=-1;return[(az=d.stack,(0>=az.$length?($throwRuntimeError("index out of range"),undefined):az.$array[az.$offset+0])),$ifaceNil];}return;}if($f===undefined){$f={$blk:U};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Parse=U;P.ptr.prototype.parseRepeat=function(a){var $ptr,a,b,c,d,e,f,g,h,i;b=0;c=0;d="";e=false;f=this;if(a===""||!((a.charCodeAt(0)===123))){return[b,c,d,e];}a=$substring(a,1);g=false;h=f.parseInt(a);b=h[0];a=h[1];g=h[2];if(!g){return[b,c,d,e];}if(a===""){return[b,c,d,e];}if(!((a.charCodeAt(0)===44))){c=b;}else{a=$substring(a,1);if(a===""){return[b,c,d,e];}if(a.charCodeAt(0)===125){c=-1;}else{i=f.parseInt(a);c=i[0];a=i[1];g=i[2];if(!g){return[b,c,d,e];}else if(c<0){b=-1;}}}if(a===""||!((a.charCodeAt(0)===125))){return[b,c,d,e];}d=$substring(a,1);e=true;return[b,c,d,e];};P.prototype.parseRepeat=function(a){return this.$val.parseRepeat(a);};P.ptr.prototype.parsePerlFlags=function(a){var $ptr,a,aa,ab,ac,ad,ae,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;b="";c=$ifaceNil;d=this;e=a;if(e.length>4&&(e.charCodeAt(2)===80)&&(e.charCodeAt(3)===60)){f=C.IndexRune(e,62);if(f<0){c=AN(e);if(!($interfaceIsEqual(c,$ifaceNil))){g="";h=c;b=g;c=h;return[b,c];}i="";j=new M.ptr("invalid named capture",a);b=i;c=j;return[b,c];}k=$substring(e,0,(f+1>>0));l=$substring(e,4,f);c=AN(l);if(!($interfaceIsEqual(c,$ifaceNil))){m="";n=c;b=m;c=n;return[b,c];}if(!V(l)){o="";p=new M.ptr("invalid named capture",k);b=o;c=p;return[b,c];}d.numCap=d.numCap+(1)>>0;q=d.op(128);q.Cap=d.numCap;q.Name=l;r=$substring(e,(f+1>>0));s=$ifaceNil;b=r;c=s;return[b,c];}t=0;e=$substring(e,2);u=d.flags;v=1;w=false;Loop:while(true){if(!(!(e===""))){break;}x=AO(e);t=x[0];e=x[1];c=x[2];if(!($interfaceIsEqual(c,$ifaceNil))){y="";z=c;b=y;c=z;return[b,c];}aa=t;if(aa===(105)){u=(u|(1))>>>0;w=true;}else if(aa===(109)){u=(u&~(16))<<16>>>16;w=true;}else if(aa===(115)){u=(u|(8))>>>0;w=true;}else if(aa===(85)){u=(u|(32))>>>0;w=true;}else if(aa===(45)){if(v<0){break Loop;}v=-1;u=~u<<16>>>16;w=false;}else if((aa===(58))||(aa===(41))){if(v<0){if(!w){break Loop;}u=~u<<16>>>16;}if(t===58){d.op(128);}d.flags=u;ab=e;ac=$ifaceNil;b=ab;c=ac;return[b,c];}else{break Loop;}}ad="";ae=new M.ptr("invalid or unsupported Perl syntax",$substring(a,0,(a.length-e.length>>0)));b=ad;c=ae;return[b,c];};P.prototype.parsePerlFlags=function(a){return this.$val.parsePerlFlags(a);};V=function(a){var $ptr,a,b,c,d,e;if(a===""){return false;}b=a;c=0;while(true){if(!(c<b.length)){break;}d=$decodeRune(b,c);e=d[0];if(!((e===95))&&!AP(e)){return false;}c+=d[1];}return true;};P.ptr.prototype.parseInt=function(a){var $ptr,a,b,c,d,e,f,g;b=0;c="";d=false;e=this;if(a===""||a.charCodeAt(0)<48||57<a.charCodeAt(0)){return[b,c,d];}if(a.length>=2&&(a.charCodeAt(0)===48)&&48<=a.charCodeAt(1)&&a.charCodeAt(1)<=57){return[b,c,d];}f=a;while(true){if(!(!(a==="")&&48<=a.charCodeAt(0)&&a.charCodeAt(0)<=57)){break;}a=$substring(a,1);}c=a;d=true;f=$substring(f,0,(f.length-a.length>>0));g=0;while(true){if(!(g<f.length)){break;}if(b>=100000000){b=-1;break;}b=(($imul(b,10))+(f.charCodeAt(g)>>0)>>0)-48>>0;g=g+(1)>>0;}return[b,c,d];};P.prototype.parseInt=function(a){return this.$val.parseInt(a);};W=function(a){var $ptr,a;return(a.Op===3)&&(a.Rune.$length===1)||(a.Op===4)||(a.Op===5)||(a.Op===6);};X=function(a,b){var $ptr,a,b,c,d,e,f,g,h;c=a.Op;if(c===(3)){return(a.Rune.$length===1)&&((d=a.Rune,(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0]))===b);}else if(c===(4)){e=0;while(true){if(!(e<a.Rune.$length)){break;}if((f=a.Rune,((e<0||e>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+e]))<=b&&b<=(g=a.Rune,h=e+1>>0,((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h]))){return true;}e=e+(2)>>0;}return false;}else if(c===(5)){return!((b===10));}else if(c===(6)){return true;}return false;};P.ptr.prototype.parseVerticalBar=function(){var $ptr,a,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.concat();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}b;c=a.swapVerticalBar();$s=4;case 4:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}if(!c){$s=2;continue;}$s=3;continue;case 2:a.op(129);case 3:$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.parseVerticalBar};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.parseVerticalBar=function(){return this.$val.parseVerticalBar();};Y=function(a,b){var $ptr,a,b,c,d,e,f,g,h;switch(0){default:c=a.Op;if(c===(6)){}else if(c===(5)){if(X(b,10)){a.Op=6;}}else if(c===(4)){if(b.Op===3){a.Rune=AD(a.Rune,(d=b.Rune,(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0])),b.Flags);}else{a.Rune=AG(a.Rune,b.Rune);}}else if(c===(3)){if(((e=b.Rune,(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]))===(f=a.Rune,(0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0])))&&(b.Flags===a.Flags)){break;}a.Op=4;a.Rune=AD($subslice(a.Rune,0,0),(g=a.Rune,(0>=g.$length?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+0])),a.Flags);a.Rune=AD(a.Rune,(h=b.Rune,(0>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+0])),b.Flags);}}};P.ptr.prototype.swapVerticalBar=function(){var $ptr,a,aa,ab,ac,ad,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.stack.$length;if(b>=3&&((c=a.stack,d=b-2>>0,((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d])).Op===129)&&W((e=a.stack,f=b-1>>0,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f])))&&W((g=a.stack,h=b-3>>0,((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h])))){k=(i=a.stack,j=b-1>>0,((j<0||j>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+j]));n=(l=a.stack,m=b-3>>0,((m<0||m>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+m]));if(k.Op>n.Op){o=n;p=k;k=o;n=p;(q=a.stack,r=b-3>>0,((r<0||r>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+r]=n));}Y(n,k);a.reuse(k);a.stack=$subslice(a.stack,0,(b-1>>0));$s=-1;return true;}if(b>=2){$s=1;continue;}$s=2;continue;case 1:u=(s=a.stack,t=b-1>>0,((t<0||t>=s.$length)?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+t]));x=(v=a.stack,w=b-2>>0,((w<0||w>=v.$length)?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+w]));if(x.Op===129){$s=3;continue;}$s=4;continue;case 3:if(b>=3){$s=5;continue;}$s=6;continue;case 5:$r=S((y=a.stack,z=b-3>>0,((z<0||z>=y.$length)?($throwRuntimeError("index out of range"),undefined):y.$array[y.$offset+z])));$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 6:(aa=a.stack,ab=b-2>>0,((ab<0||ab>=aa.$length)?($throwRuntimeError("index out of range"),undefined):aa.$array[aa.$offset+ab]=u));(ac=a.stack,ad=b-1>>0,((ad<0||ad>=ac.$length)?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+ad]=x));$s=-1;return true;case 4:case 2:$s=-1;return false;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.swapVerticalBar};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.swapVerticalBar=function(){return this.$val.swapVerticalBar();};P.ptr.prototype.parseRightParen=function(){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.concat();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}b;c=a.swapVerticalBar();$s=4;case 4:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}if(c){$s=2;continue;}$s=3;continue;case 2:a.stack=$subslice(a.stack,0,(a.stack.$length-1>>0));case 3:d=a.alternate();$s=5;case 5:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d;e=a.stack.$length;if(e<2){$s=-1;return new M.ptr("unexpected )",a.wholeRegexp);}h=(f=a.stack,g=e-1>>0,((g<0||g>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+g]));k=(i=a.stack,j=e-2>>0,((j<0||j>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+j]));a.stack=$subslice(a.stack,0,(e-2>>0));if(!((k.Op===128))){$s=-1;return new M.ptr("unexpected )",a.wholeRegexp);}a.flags=k.Flags;if(k.Cap===0){a.push(h);}else{k.Op=13;k.Sub=$subslice(new CI(k.Sub0),0,1);(l=k.Sub,(0>=l.$length?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+0]=h));a.push(k);}$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.parseRightParen};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.parseRightParen=function(){return this.$val.parseRightParen();};P.ptr.prototype.parseEscape=function(a){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;b=0;c="";d=$ifaceNil;e=this;f=$substring(a,1);if(f===""){g=0;h="";i=new M.ptr("trailing backslash at end of expression","");b=g;c=h;d=i;return[b,c,d];}j=AO(f);k=j[0];f=j[1];d=j[2];if(!($interfaceIsEqual(d,$ifaceNil))){l=0;m="";n=d;b=l;c=m;d=n;return[b,c,d];}Switch:switch(0){default:o=k;if((o===(49))||(o===(50))||(o===(51))||(o===(52))||(o===(53))||(o===(54))||(o===(55))){if(f===""||f.charCodeAt(0)<48||f.charCodeAt(0)>55){break;}b=k-48>>0;p=1;while(true){if(!(p<3)){break;}if(f===""||f.charCodeAt(0)<48||f.charCodeAt(0)>55){break;}b=(($imul(b,8))+(f.charCodeAt(0)>>0)>>0)-48>>0;f=$substring(f,1);p=p+(1)>>0;}q=b;r=f;s=$ifaceNil;b=q;c=r;d=s;return[b,c,d];}else if(o===(48)){b=k-48>>0;p=1;while(true){if(!(p<3)){break;}if(f===""||f.charCodeAt(0)<48||f.charCodeAt(0)>55){break;}b=(($imul(b,8))+(f.charCodeAt(0)>>0)>>0)-48>>0;f=$substring(f,1);p=p+(1)>>0;}t=b;u=f;v=$ifaceNil;b=t;c=u;d=v;return[b,c,d];}else if(o===(120)){if(f===""){break;}w=AO(f);k=w[0];f=w[1];d=w[2];if(!($interfaceIsEqual(d,$ifaceNil))){x=0;y="";z=d;b=x;c=y;d=z;return[b,c,d];}if(k===123){aa=0;b=0;while(true){if(f===""){break Switch;}ab=AO(f);k=ab[0];f=ab[1];d=ab[2];if(!($interfaceIsEqual(d,$ifaceNil))){ac=0;ad="";ae=d;b=ac;c=ad;d=ae;return[b,c,d];}if(k===125){break;}af=AQ(k);if(af<0){break Switch;}b=($imul(b,16))+af>>0;if(b>1114111){break Switch;}aa=aa+(1)>>0;}if(aa===0){break Switch;}ag=b;ah=f;ai=$ifaceNil;b=ag;c=ah;d=ai;return[b,c,d];}aj=AQ(k);ak=AO(f);k=ak[0];f=ak[1];d=ak[2];if(!($interfaceIsEqual(d,$ifaceNil))){al=0;am="";an=d;b=al;c=am;d=an;return[b,c,d];}ao=AQ(k);if(aj<0||ao<0){break;}ap=($imul(aj,16))+ao>>0;aq=f;ar=$ifaceNil;b=ap;c=aq;d=ar;return[b,c,d];}else if(o===(97)){as=7;at=f;au=d;b=as;c=at;d=au;return[b,c,d];}else if(o===(102)){av=12;aw=f;ax=d;b=av;c=aw;d=ax;return[b,c,d];}else if(o===(110)){ay=10;az=f;ba=d;b=ay;c=az;d=ba;return[b,c,d];}else if(o===(114)){bb=13;bc=f;bd=d;b=bb;c=bc;d=bd;return[b,c,d];}else if(o===(116)){be=9;bf=f;bg=d;b=be;c=bf;d=bg;return[b,c,d];}else if(o===(118)){bh=11;bi=f;bj=d;b=bh;c=bi;d=bj;return[b,c,d];}else if(k<128&&!AP(k)){bk=k;bl=f;bm=$ifaceNil;b=bk;c=bl;d=bm;return[b,c,d];}}bn=0;bo="";bp=new M.ptr("invalid escape sequence",$substring(a,0,(a.length-f.length>>0)));b=bn;c=bo;d=bp;return[b,c,d];};P.prototype.parseEscape=function(a){return this.$val.parseEscape(a);};P.ptr.prototype.parseClassChar=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k;c=0;d="";e=$ifaceNil;f=this;if(a===""){g=0;h="";i=new M.ptr("missing closing ]",b);c=g;d=h;e=i;return[c,d,e];}if(a.charCodeAt(0)===92){j=f.parseEscape(a);c=j[0];d=j[1];e=j[2];return[c,d,e];}k=AO(a);c=k[0];d=k[1];e=k[2];return[c,d,e];};P.prototype.parseClassChar=function(a,b){return this.$val.parseClassChar(a,b);};P.ptr.prototype.parsePerlClassEscape=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=CB.nil;d="";e=this;if((((e.flags&64)>>>0)===0)||a.length<2||!((a.charCodeAt(0)===92))){$s=-1;return[c,d];}g=$clone((f=AU[$String.keyFor($substring(a,0,2))],f!==undefined?f.v:new Z.ptr(0,CB.nil)),Z);if(g.sign===0){$s=-1;return[c,d];}i=e.appendGroup(b,$clone(g,Z));$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;j=$substring(a,2);c=h;d=j;$s=-1;return[c,d];}return;}if($f===undefined){$f={$blk:P.ptr.prototype.parsePerlClassEscape};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.parsePerlClassEscape=function(a,b){return this.$val.parsePerlClassEscape(a,b);};P.ptr.prototype.parseNamedClass=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=CB.nil;d="";e=$ifaceNil;f=this;if(a.length<2||!((a.charCodeAt(0)===91))||!((a.charCodeAt(1)===58))){$s=-1;return[c,d,e];}g=C.Index($substring(a,2),":]");if(g<0){$s=-1;return[c,d,e];}g=g+(2)>>0;h=$substring(a,0,(g+2>>0));i=$substring(a,(g+2>>0));j=h;a=i;l=$clone((k=BJ[$String.keyFor(j)],k!==undefined?k.v:new Z.ptr(0,CB.nil)),Z);if(l.sign===0){m=CB.nil;n="";o=new M.ptr("invalid character class range",j);c=m;d=n;e=o;$s=-1;return[c,d,e];}q=f.appendGroup(b,$clone(l,Z));$s=1;case 1:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;r=a;s=$ifaceNil;c=p;d=r;e=s;$s=-1;return[c,d,e];}return;}if($f===undefined){$f={$blk:P.ptr.prototype.parseNamedClass};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.parseNamedClass=function(a,b){return this.$val.parseNamedClass(a,b);};P.ptr.prototype.appendGroup=function(a,b){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;if(((c.flags&1)>>>0)===0){$s=1;continue;}$s=2;continue;case 1:if(b.sign<0){a=AI(a,b.class$1);}else{a=AG(a,b.class$1);}$s=3;continue;case 2:d=$subslice(c.tmpClass,0,0);d=AH(d,b.class$1);c.tmpClass=d;e=AC((c.$ptr_tmpClass||(c.$ptr_tmpClass=new CL(function(){return this.$target.tmpClass;},function($v){this.$target.tmpClass=$v;},c))));$s=4;case 4:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;if(b.sign<0){a=AI(a,d);}else{a=AG(a,d);}case 3:$s=-1;return a;}return;}if($f===undefined){$f={$blk:P.ptr.prototype.appendGroup};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.appendGroup=function(a,b){return this.$val.appendGroup(a,b);};AB=function(a){var $ptr,a,b,c,d,e,f,g;if(a==="Any"){return[AA,AA];}c=(b=A.Categories[$String.keyFor(a)],b!==undefined?b.v:CM.nil);if(!(c===CM.nil)){return[c,(d=A.FoldCategory[$String.keyFor(a)],d!==undefined?d.v:CM.nil)];}f=(e=A.Scripts[$String.keyFor(a)],e!==undefined?e.v:CM.nil);if(!(f===CM.nil)){return[f,(g=A.FoldScript[$String.keyFor(a)],g!==undefined?g.v:CM.nil)];}return[CM.nil,CM.nil];};P.ptr.prototype.parseUnicodeClass=function(a,b){var $ptr,a,aa,ab,ac,ad,ae,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=CB.nil;d="";e=$ifaceNil;f=this;if((((f.flags&128)>>>0)===0)||a.length<2||!((a.charCodeAt(0)===92))||!((a.charCodeAt(1)===112))&&!((a.charCodeAt(1)===80))){$s=-1;return[c,d,e];}g=1;if(a.charCodeAt(1)===80){g=-1;}h=$substring(a,2);i=AO(h);j=i[0];h=i[1];e=i[2];if(!($interfaceIsEqual(e,$ifaceNil))){$s=-1;return[c,d,e];}k="";l="";m=k;n=l;if(!((j===123))){m=$substring(a,0,(a.length-h.length>>0));n=$substring(m,2);}else{o=C.IndexRune(a,125);if(o<0){e=AN(a);if(!($interfaceIsEqual(e,$ifaceNil))){$s=-1;return[c,d,e];}p=CB.nil;q="";r=new M.ptr("invalid character class range",a);c=p;d=q;e=r;$s=-1;return[c,d,e];}s=$substring(a,0,(o+1>>0));t=$substring(a,(o+1>>0));m=s;h=t;n=$substring(a,3,o);e=AN(n);if(!($interfaceIsEqual(e,$ifaceNil))){$s=-1;return[c,d,e];}}if(!(n==="")&&(n.charCodeAt(0)===94)){g=-g;n=$substring(n,1);}u=AB(n);v=u[0];w=u[1];if(v===CM.nil){x=CB.nil;y="";z=new M.ptr("invalid character class range",m);c=x;d=y;e=z;$s=-1;return[c,d,e];}if((((f.flags&1)>>>0)===0)||w===CM.nil){$s=1;continue;}$s=2;continue;case 1:if(g>0){b=AJ(b,v);}else{b=AK(b,v);}$s=3;continue;case 2:aa=$subslice(f.tmpClass,0,0);aa=AJ(aa,v);aa=AJ(aa,w);f.tmpClass=aa;ab=AC((f.$ptr_tmpClass||(f.$ptr_tmpClass=new CL(function(){return this.$target.tmpClass;},function($v){this.$target.tmpClass=$v;},f))));$s=4;case 4:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}aa=ab;if(g>0){b=AG(b,aa);}else{b=AI(b,aa);}case 3:ac=b;ad=h;ae=$ifaceNil;c=ac;d=ad;e=ae;$s=-1;return[c,d,e];}return;}if($f===undefined){$f={$blk:P.ptr.prototype.parseUnicodeClass};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.parseUnicodeClass=function(a,b){return this.$val.parseUnicodeClass(a,b);};P.ptr.prototype.parseClass=function(a){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;b=$f.b;ba=$f.ba;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b="";c=$ifaceNil;d=this;e=$substring(a,1);f=d.newRegexp(4);f.Flags=d.flags;f.Rune=$subslice(new CB(f.Rune0),0,0);g=1;if(!(e==="")&&(e.charCodeAt(0)===94)){g=-1;e=$substring(e,1);if(((d.flags&4)>>>0)===0){f.Rune=$append(f.Rune,10,10);}}h=f.Rune;i=true;case 1:if(!(e===""||!((e.charCodeAt(0)===93))||i)){$s=2;continue;}if(!(e==="")&&(e.charCodeAt(0)===45)&&(((d.flags&64)>>>0)===0)&&!i&&((e.length===1)||!((e.charCodeAt(1)===93)))){j=D.DecodeRuneInString($substring(e,1));k=j[1];l="";m=new M.ptr("invalid character class range",$substring(e,0,(1+k>>0)));b=l;c=m;$s=-1;return[b,c];}i=false;if(e.length>2&&(e.charCodeAt(0)===91)&&(e.charCodeAt(1)===58)){$s=3;continue;}$s=4;continue;case 3:o=d.parseNamedClass(e,h);$s=5;case 5:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n[0];q=n[1];r=n[2];if(!($interfaceIsEqual(r,$ifaceNil))){s="";t=r;b=s;c=t;$s=-1;return[b,c];}if(!(p===CB.nil)){u=p;v=q;h=u;e=v;$s=1;continue;}case 4:x=d.parseUnicodeClass(e,h);$s=6;case 6:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}w=x;y=w[0];z=w[1];aa=w[2];if(!($interfaceIsEqual(aa,$ifaceNil))){ab="";ac=aa;b=ab;c=ac;$s=-1;return[b,c];}if(!(y===CB.nil)){$s=7;continue;}$s=8;continue;case 7:ad=y;ae=z;h=ad;e=ae;$s=1;continue;case 8:ag=d.parsePerlClassEscape(e,h);$s=9;case 9:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}af=ag;ah=af[0];ai=af[1];if(!(ah===CB.nil)){aj=ah;ak=ai;h=aj;e=ak;$s=1;continue;}al=e;am=0;an=0;ao=am;ap=an;aq=d.parseClassChar(e,a);ao=aq[0];e=aq[1];aa=aq[2];if(!($interfaceIsEqual(aa,$ifaceNil))){ar="";as=aa;b=ar;c=as;$s=-1;return[b,c];}ap=ao;if(e.length>=2&&(e.charCodeAt(0)===45)&&!((e.charCodeAt(1)===93))){e=$substring(e,1);at=d.parseClassChar(e,a);ap=at[0];e=at[1];aa=at[2];if(!($interfaceIsEqual(aa,$ifaceNil))){au="";av=aa;b=au;c=av;$s=-1;return[b,c];}if(ap<ao){al=$substring(al,0,(al.length-e.length>>0));aw="";ax=new M.ptr("invalid character class range",al);b=aw;c=ax;$s=-1;return[b,c];}}if(((d.flags&1)>>>0)===0){h=AE(h,ao,ap);}else{h=AF(h,ao,ap);}$s=1;continue;case 2:e=$substring(e,1);f.Rune=h;ay=AC((f.$ptr_Rune||(f.$ptr_Rune=new CL(function(){return this.$target.Rune;},function($v){this.$target.Rune=$v;},f))));$s=10;case 10:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}h=ay;if(g<0){h=AL(h);}f.Rune=h;d.push(f);az=e;ba=$ifaceNil;b=az;c=ba;$s=-1;return[b,c];}return;}if($f===undefined){$f={$blk:P.ptr.prototype.parseClass};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.b=b;$f.ba=ba;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};P.prototype.parseClass=function(a){return this.$val.parseClass(a);};AC=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=B.Sort((b=new AM.ptr(a),new b.constructor.elem(b)));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}c=a.$get();if(c.$length<2){$s=-1;return c;}d=2;e=2;while(true){if(!(e<c.$length)){break;}f=((e<0||e>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+e]);g=(h=e+1>>0,((h<0||h>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+h]));i=f;j=g;if(i<=((k=d-1>>0,((k<0||k>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+k]))+1>>0)){if(j>(l=d-1>>0,((l<0||l>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+l]))){(m=d-1>>0,((m<0||m>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+m]=j));}e=e+(2)>>0;continue;}((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]=i);(n=d+1>>0,((n<0||n>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+n]=j));d=d+(2)>>0;e=e+(2)>>0;}$s=-1;return $subslice(c,0,d);}return;}if($f===undefined){$f={$blk:AC};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.$s=$s;$f.$r=$r;return $f;};AD=function(a,b,c){var $ptr,a,b,c;if(!((((c&1)>>>0)===0))){return AF(a,b,b);}return AE(a,b,b);};AE=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m;d=a.$length;e=2;while(true){if(!(e<=4)){break;}if(d>=e){f=(g=d-e>>0,((g<0||g>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+g]));h=(i=(d-e>>0)+1>>0,((i<0||i>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+i]));j=f;k=h;if(b<=(k+1>>0)&&j<=(c+1>>0)){if(b<j){(l=d-e>>0,((l<0||l>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+l]=b));}if(c>k){(m=(d-e>>0)+1>>0,((m<0||m>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+m]=c));}return a;}}e=e+(2)>>0;}return $append(a,b,c);};AF=function(a,b,c){var $ptr,a,b,c,d,e;if(b<=65&&c>=125251){return AE(a,b,c);}if(c<65||b>125251){return AE(a,b,c);}if(b<65){a=AE(a,b,64);b=65;}if(c>125251){a=AE(a,125252,c);c=125251;}d=b;while(true){if(!(d<=c)){break;}a=AE(a,d,d);e=A.SimpleFold(d);while(true){if(!(!((e===d)))){break;}a=AE(a,e,e);e=A.SimpleFold(e);}d=d+(1)>>0;}return a;};AG=function(a,b){var $ptr,a,b,c,d;c=0;while(true){if(!(c<b.$length)){break;}a=AE(a,((c<0||c>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+c]),(d=c+1>>0,((d<0||d>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+d])));c=c+(2)>>0;}return a;};AH=function(a,b){var $ptr,a,b,c,d;c=0;while(true){if(!(c<b.$length)){break;}a=AF(a,((c<0||c>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+c]),(d=c+1>>0,((d<0||d>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+d])));c=c+(2)>>0;}return a;};AI=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i;c=0;d=0;while(true){if(!(d<b.$length)){break;}e=((d<0||d>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+d]);f=(g=d+1>>0,((g<0||g>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+g]));h=e;i=f;if(c<=(h-1>>0)){a=AE(a,c,h-1>>0);}c=i+1>>0;d=d+(2)>>0;}if(c<=1114111){a=AE(a,c,1114111);}return a;};AJ=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v;c=b.R16;d=0;while(true){if(!(d<c.$length)){break;}e=$clone(((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]),A.Range16);f=(e.Lo>>0);g=(e.Hi>>0);h=(e.Stride>>0);i=f;j=g;k=h;if(k===1){a=AE(a,i,j);d++;continue;}l=i;while(true){if(!(l<=j)){break;}a=AE(a,l,l);l=l+(k)>>0;}d++;}m=b.R32;n=0;while(true){if(!(n<m.$length)){break;}o=$clone(((n<0||n>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+n]),A.Range32);p=(o.Lo>>0);q=(o.Hi>>0);r=(o.Stride>>0);s=p;t=q;u=r;if(u===1){a=AE(a,s,t);n++;continue;}v=s;while(true){if(!(v<=t)){break;}a=AE(a,v,v);v=v+(u)>>0;}n++;}return a;};AK=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w;c=0;d=b.R16;e=0;while(true){if(!(e<d.$length)){break;}f=$clone(((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]),A.Range16);g=(f.Lo>>0);h=(f.Hi>>0);i=(f.Stride>>0);j=g;k=h;l=i;if(l===1){if(c<=(j-1>>0)){a=AE(a,c,j-1>>0);}c=k+1>>0;e++;continue;}m=j;while(true){if(!(m<=k)){break;}if(c<=(m-1>>0)){a=AE(a,c,m-1>>0);}c=m+1>>0;m=m+(l)>>0;}e++;}n=b.R32;o=0;while(true){if(!(o<n.$length)){break;}p=$clone(((o<0||o>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+o]),A.Range32);q=(p.Lo>>0);r=(p.Hi>>0);s=(p.Stride>>0);t=q;u=r;v=s;if(v===1){if(c<=(t-1>>0)){a=AE(a,c,t-1>>0);}c=u+1>>0;o++;continue;}w=t;while(true){if(!(w<=u)){break;}if(c<=(w-1>>0)){a=AE(a,c,w-1>>0);}c=w+1>>0;w=w+(v)>>0;}o++;}if(c<=1114111){a=AE(a,c,1114111);}return a;};AL=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j;b=0;c=0;d=0;while(true){if(!(d<a.$length)){break;}e=((d<0||d>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+d]);f=(g=d+1>>0,((g<0||g>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+g]));h=e;i=f;if(b<=(h-1>>0)){((c<0||c>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+c]=b);(j=c+1>>0,((j<0||j>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+j]=(h-1>>0)));c=c+(2)>>0;}b=i+1>>0;d=d+(2)>>0;}a=$subslice(a,0,c);if(b<=1114111){a=$append(a,b,1114111);}return a;};AM.ptr.prototype.Less=function(a,b){var $ptr,a,b,c,d,e,f;c=this;d=c.p.$get();a=$imul(a,(2));b=$imul(b,(2));return((a<0||a>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+a])<((b<0||b>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+b])||(((a<0||a>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+a])===((b<0||b>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+b]))&&(e=a+1>>0,((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]))>(f=b+1>>0,((f<0||f>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+f]));};AM.prototype.Less=function(a,b){return this.$val.Less(a,b);};AM.ptr.prototype.Len=function(){var $ptr,a,b;a=this;return(b=a.p.$get().$length/2,(b===b&&b!==1/0&&b!==-1/0)?b>>0:$throwRuntimeError("integer divide by zero"));};AM.prototype.Len=function(){return this.$val.Len();};AM.ptr.prototype.Swap=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l;c=this;d=c.p.$get();a=$imul(a,(2));b=$imul(b,(2));e=((b<0||b>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+b]);f=(g=b+1>>0,((g<0||g>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+g]));h=((a<0||a>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+a]);i=(j=a+1>>0,((j<0||j>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+j]));((a<0||a>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+a]=e);(k=a+1>>0,((k<0||k>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+k]=f));((b<0||b>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+b]=h);(l=b+1>>0,((l<0||l>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+l]=i));};AM.prototype.Swap=function(a,b){return this.$val.Swap(a,b);};AN=function(a){var $ptr,a,b,c,d;while(true){if(!(!(a===""))){break;}b=D.DecodeRuneInString(a);c=b[0];d=b[1];if((c===65533)&&(d===1)){return new M.ptr("invalid UTF-8",a);}a=$substring(a,d);}return $ifaceNil;};AO=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l;b=0;c="";d=$ifaceNil;e=D.DecodeRuneInString(a);b=e[0];f=e[1];if((b===65533)&&(f===1)){g=0;h="";i=new M.ptr("invalid UTF-8",a);b=g;c=h;d=i;return[b,c,d];}j=b;k=$substring(a,f);l=$ifaceNil;b=j;c=k;d=l;return[b,c,d];};AP=function(a){var $ptr,a;return 48<=a&&a<=57||65<=a&&a<=90||97<=a&&a<=122;};AQ=function(a){var $ptr,a;if(48<=a&&a<=57){return a-48>>0;}if(97<=a&&a<=102){return(a-97>>0)+10>>0;}if(65<=a&&a<=70){return(a-65>>0)+10>>0;}return-1;};BL.prototype.String=function(){var $ptr,a;a=this.$val;if((a>>>0)>=(BM.$length>>>0)){return"";}return((a<0||a>=BM.$length)?($throwRuntimeError("index out of range"),undefined):BM.$array[BM.$offset+a]);};$ptrType(BL).prototype.String=function(){return new BL(this.$get()).String();};BO=function(a,b){var $ptr,a,b,c,d;c=32;d=0;if(BP(a)){d=1;}else if((a===10)){c=(c|(1))>>>0;}else if(a<0){c=(c|(5))>>>0;}if(BP(b)){d=(d^(1))<<24>>>24;}else if((b===10)){c=(c|(2))>>>0;}else if(b<0){c=(c|(10))>>>0;}if(!((d===0))){c=(c^(48))<<24>>>24;}return c;};$pkg.EmptyOpContext=BO;BP=function(a){var $ptr,a;return 65<=a&&a<=90||97<=a&&a<=122||48<=a&&a<=57||(a===95);};$pkg.IsWordChar=BP;BK.ptr.prototype.String=function(){var $ptr,a,b;a=this;b=new E.Buffer.ptr(CN.nil,0,CO.zero(),0);BT(b,a);return b.String();};BK.prototype.String=function(){return this.$val.String();};BK.ptr.prototype.skipNop=function(a){var $ptr,a,b,c,d,e;b=this;d=(c=b.Inst,((a<0||a>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+a]));while(true){if(!((d.Op===6)||(d.Op===2))){break;}a=d.Out;d=(e=b.Inst,((a<0||a>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+a]));}return[d,a];};BK.prototype.skipNop=function(a){return this.$val.skipNop(a);};BQ.ptr.prototype.op=function(){var $ptr,a,b,c;a=this;b=a.Op;c=b;if((c===(8))||(c===(9))||(c===(10))){b=7;}return b;};BQ.prototype.op=function(){return this.$val.op();};BK.ptr.prototype.Prefix=function(){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l;a="";b=false;c=this;d=c.skipNop((c.Start>>>0));e=d[0];if(!((e.op()===7))||!((e.Rune.$length===1))){f="";g=e.Op===4;a=f;b=g;return[a,b];}h=new E.Buffer.ptr(CN.nil,0,CO.zero(),0);while(true){if(!((e.op()===7)&&(e.Rune.$length===1)&&((((e.Arg<<16>>>16)&1)>>>0)===0))){break;}h.WriteRune((i=e.Rune,(0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0])));j=c.skipNop(e.Out);e=j[0];}k=h.String();l=e.Op===4;a=k;b=l;return[a,b];};BK.prototype.Prefix=function(){return this.$val.Prefix();};BK.ptr.prototype.StartCond=function(){var $ptr,a,b,c,d,e,f,g;a=this;b=0;c=(a.Start>>>0);e=(d=a.Inst,((c<0||c>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+c]));Loop:while(true){f=e.Op;if(f===(3)){b=(b|((e.Arg<<24>>>24)))>>>0;}else if(f===(5)){return 255;}else if((f===(2))||(f===(6))){}else{break Loop;}c=e.Out;e=(g=a.Inst,((c<0||c>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+c]));}return b;};BK.prototype.StartCond=function(){return this.$val.StartCond();};BQ.ptr.prototype.MatchRune=function(a){var $ptr,a,b;b=this;return!((b.MatchRunePos(a)===-1));};BQ.prototype.MatchRune=function(a){return this.$val.MatchRune(a);};BQ.ptr.prototype.MatchRunePos=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p;b=this;c=b.Rune;if(c.$length===1){d=(0>=c.$length?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+0]);if(a===d){return 0;}if(!(((((b.Arg<<16>>>16)&1)>>>0)===0))){e=A.SimpleFold(d);while(true){if(!(!((e===d)))){break;}if(a===e){return 0;}e=A.SimpleFold(e);}}return-1;}f=0;while(true){if(!(f<c.$length&&f<=8)){break;}if(a<((f<0||f>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+f])){return-1;}if(a<=(g=f+1>>0,((g<0||g>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+g]))){return(h=f/2,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero"));}f=f+(2)>>0;}i=0;k=(j=c.$length/2,(j===j&&j!==1/0&&j!==-1/0)?j>>0:$throwRuntimeError("integer divide by zero"));while(true){if(!(i<k)){break;}m=i+(l=((k-i>>0))/2,(l===l&&l!==1/0&&l!==-1/0)?l>>0:$throwRuntimeError("integer divide by zero"))>>0;o=(n=$imul(2,m),((n<0||n>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+n]));if(o<=a){if(a<=(p=($imul(2,m))+1>>0,((p<0||p>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+p]))){return m;}i=m+1>>0;}else{k=m;}}return-1;};BQ.prototype.MatchRunePos=function(a){return this.$val.MatchRunePos(a);};BR=function(a){var $ptr,a;return(a===95)||(65<=a&&a<=90)||(97<=a&&a<=122)||(48<=a&&a<=57);};BQ.ptr.prototype.MatchEmptyWidth=function(a,b){var $ptr,a,b,c,d;c=this;d=(c.Arg<<24>>>24);if(d===(1)){return(a===10)||(a===-1);}else if(d===(2)){return(b===10)||(b===-1);}else if(d===(4)){return a===-1;}else if(d===(8)){return b===-1;}else if(d===(16)){return!(BR(a)===BR(b));}else if(d===(32)){return BR(a)===BR(b);}$panic(new $String("unknown empty width arg"));};BQ.prototype.MatchEmptyWidth=function(a,b){return this.$val.MatchEmptyWidth(a,b);};BQ.ptr.prototype.String=function(){var $ptr,a,b;a=this;b=new E.Buffer.ptr(CN.nil,0,CO.zero(),0);BV(b,a);return b.String();};BQ.prototype.String=function(){return this.$val.String();};BS=function(a,b){var $ptr,a,b,c,d,e;c=b;d=0;while(true){if(!(d<c.$length)){break;}e=((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]);a.WriteString(e);d++;}};BT=function(a,b){var $ptr,a,b,c,d,e,f,g,h;c=b.Inst;d=0;while(true){if(!(d<c.$length)){break;}e=d;g=(f=b.Inst,((e<0||e>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+e]));h=F.Itoa(e);if(h.length<3){a.WriteString($substring(" ",h.length));}if(e===b.Start){h=h+("*");}BS(a,new CE([h,"\t"]));BV(a,g);BS(a,new CE(["\n"]));d++;}};BU=function(a){var $ptr,a;return F.FormatUint(new $Uint64(0,a),10);};BV=function(a,b){var $ptr,a,b,c;c=b.Op;if(c===(0)){BS(a,new CE(["alt -> ",BU(b.Out),", ",BU(b.Arg)]));}else if(c===(1)){BS(a,new CE(["altmatch -> ",BU(b.Out),", ",BU(b.Arg)]));}else if(c===(2)){BS(a,new CE(["cap ",BU(b.Arg)," -> ",BU(b.Out)]));}else if(c===(3)){BS(a,new CE(["empty ",BU(b.Arg)," -> ",BU(b.Out)]));}else if(c===(4)){BS(a,new CE(["match"]));}else if(c===(5)){BS(a,new CE(["fail"]));}else if(c===(6)){BS(a,new CE(["nop -> ",BU(b.Out)]));}else if(c===(7)){if(b.Rune===CB.nil){BS(a,new CE(["rune <nil>"]));}BS(a,new CE(["rune ",F.QuoteToASCII($runesToString(b.Rune))]));if(!(((((b.Arg<<16>>>16)&1)>>>0)===0))){BS(a,new CE(["/i"]));}BS(a,new CE([" -> ",BU(b.Out)]));}else if(c===(8)){BS(a,new CE(["rune1 ",F.QuoteToASCII($runesToString(b.Rune))," -> ",BU(b.Out)]));}else if(c===(9)){BS(a,new CE(["any -> ",BU(b.Out)]));}else if(c===(10)){BS(a,new CE(["anynotnl -> ",BU(b.Out)]));}};BW.ptr.prototype.Equal=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s;b=this;if(b===CH.nil||a===CH.nil){return b===a;}if(!((b.Op===a.Op))){return false;}c=b.Op;if(c===(10)){if(!((((b.Flags&256)>>>0)===((a.Flags&256)>>>0)))){return false;}}else if((c===(3))||(c===(4))){if(!((b.Rune.$length===a.Rune.$length))){return false;}d=b.Rune;e=0;while(true){if(!(e<d.$length)){break;}f=e;g=((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]);if(!((g===(h=a.Rune,((f<0||f>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+f]))))){return false;}e++;}}else if((c===(19))||(c===(18))){if(!((b.Sub.$length===a.Sub.$length))){return false;}i=b.Sub;j=0;while(true){if(!(j<i.$length)){break;}k=j;l=((j<0||j>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+j]);if(!l.Equal((m=a.Sub,((k<0||k>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+k])))){return false;}j++;}}else if((c===(14))||(c===(15))||(c===(16))){if(!((((b.Flags&32)>>>0)===((a.Flags&32)>>>0)))||!(n=b.Sub,(0>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+0])).Equal((o=a.Sub,(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0])))){return false;}}else if(c===(17)){if(!((((b.Flags&32)>>>0)===((a.Flags&32)>>>0)))||!((b.Min===a.Min))||!((b.Max===a.Max))||!(p=b.Sub,(0>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+0])).Equal((q=a.Sub,(0>=q.$length?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+0])))){return false;}}else if(c===(13)){if(!((b.Cap===a.Cap))||!(b.Name===a.Name)||!(r=b.Sub,(0>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+0])).Equal((s=a.Sub,(0>=s.$length?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+0])))){return false;}}return true;};BW.prototype.Equal=function(a){return this.$val.Equal(a);};BY=function(a,b){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;switch(0){default:c=b.Op;if(c===(1)){a.WriteString("[^\\x00-\\x{10FFFF}]");}else if(c===(2)){a.WriteString("(?:)");}else if(c===(3)){if(!((((b.Flags&1)>>>0)===0))){a.WriteString("(?i:");}d=b.Rune;e=0;while(true){if(!(e<d.$length)){break;}f=((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]);BZ(a,f,false);e++;}if(!((((b.Flags&1)>>>0)===0))){a.WriteString(")");}}else if(c===(4)){if(!(((g=b.Rune.$length%2,g===g?g:$throwRuntimeError("integer divide by zero"))===0))){a.WriteString("[invalid char class]");break;}a.WriteRune(91);if(b.Rune.$length===0){a.WriteString("^\\x00-\\x{10FFFF}");}else if(((h=b.Rune,(0>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+0]))===0)&&((i=b.Rune,j=b.Rune.$length-1>>0,((j<0||j>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+j]))===1114111)){a.WriteRune(94);k=1;while(true){if(!(k<(b.Rune.$length-1>>0))){break;}l=(m=b.Rune,((k<0||k>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+k]))+1>>0;n=(o=b.Rune,p=k+1>>0,((p<0||p>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+p]))-1>>0;q=l;r=n;BZ(a,q,q===45);if(!((q===r))){a.WriteRune(45);BZ(a,r,r===45);}k=k+(2)>>0;}}else{s=0;while(true){if(!(s<b.Rune.$length)){break;}t=(u=b.Rune,((s<0||s>=u.$length)?($throwRuntimeError("index out of range"),undefined):u.$array[u.$offset+s]));v=(w=b.Rune,x=s+1>>0,((x<0||x>=w.$length)?($throwRuntimeError("index out of range"),undefined):w.$array[w.$offset+x]));y=t;z=v;BZ(a,y,y===45);if(!((y===z))){a.WriteRune(45);BZ(a,z,z===45);}s=s+(2)>>0;}}a.WriteRune(93);}else if(c===(5)){a.WriteString("(?-s:.)");}else if(c===(6)){a.WriteString("(?s:.)");}else if(c===(7)){a.WriteString("(?m:^)");}else if(c===(8)){a.WriteString("(?m:$)");}else if(c===(9)){a.WriteString("\\A");}else if(c===(10)){if(!((((b.Flags&256)>>>0)===0))){a.WriteString("(?-m:$)");}else{a.WriteString("\\z");}}else if(c===(11)){a.WriteString("\\b");}else if(c===(12)){a.WriteString("\\B");}else if(c===(13)){if(!(b.Name==="")){a.WriteString("(?P<");a.WriteString(b.Name);a.WriteRune(62);}else{a.WriteRune(40);}if(!(((aa=b.Sub,(0>=aa.$length?($throwRuntimeError("index out of range"),undefined):aa.$array[aa.$offset+0])).Op===2))){BY(a,(ab=b.Sub,(0>=ab.$length?($throwRuntimeError("index out of range"),undefined):ab.$array[ab.$offset+0])));}a.WriteRune(41);}else if((c===(14))||(c===(15))||(c===(16))||(c===(17))){ad=(ac=b.Sub,(0>=ac.$length?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+0]));if(ad.Op>13||(ad.Op===3)&&ad.Rune.$length>1){a.WriteString("(?:");BY(a,ad);a.WriteString(")");}else{BY(a,ad);}ae=b.Op;if(ae===(14)){a.WriteRune(42);}else if(ae===(15)){a.WriteRune(43);}else if(ae===(16)){a.WriteRune(63);}else if(ae===(17)){a.WriteRune(123);a.WriteString(F.Itoa(b.Min));if(!((b.Max===b.Min))){a.WriteRune(44);if(b.Max>=0){a.WriteString(F.Itoa(b.Max));}}a.WriteRune(125);}if(!((((b.Flags&32)>>>0)===0))){a.WriteRune(63);}}else if(c===(18)){af=b.Sub;ag=0;while(true){if(!(ag<af.$length)){break;}ah=((ag<0||ag>=af.$length)?($throwRuntimeError("index out of range"),undefined):af.$array[af.$offset+ag]);if(ah.Op===19){a.WriteString("(?:");BY(a,ah);a.WriteString(")");}else{BY(a,ah);}ag++;}}else if(c===(19)){ai=b.Sub;aj=0;while(true){if(!(aj<ai.$length)){break;}ak=aj;al=((aj<0||aj>=ai.$length)?($throwRuntimeError("index out of range"),undefined):ai.$array[ai.$offset+aj]);if(ak>0){a.WriteRune(124);}BY(a,al);aj++;}}else{a.WriteString("<invalid op"+F.Itoa((b.Op>>0))+">");}}};BW.ptr.prototype.String=function(){var $ptr,a,b;a=this;b=new E.Buffer.ptr(CN.nil,0,CO.zero(),0);BY(b,a);return b.String();};BW.prototype.String=function(){return this.$val.String();};BZ=function(a,b,c){var $ptr,a,b,c,d,e;if(A.IsPrint(b)){if(C.ContainsRune("\\.+*?()|[]{}^$",b)||c){a.WriteRune(92);}a.WriteRune(b);return;}switch(0){default:d=b;if(d===(7)){a.WriteString("\\a");}else if(d===(12)){a.WriteString("\\f");}else if(d===(10)){a.WriteString("\\n");}else if(d===(13)){a.WriteString("\\r");}else if(d===(9)){a.WriteString("\\t");}else if(d===(11)){a.WriteString("\\v");}else{if(b<256){a.WriteString("\\x");e=F.FormatInt(new $Int64(0,b),16);if(e.length===1){a.WriteRune(48);}a.WriteString(e);break;}a.WriteString("\\x{");a.WriteString(F.FormatInt(new $Int64(0,b),16));a.WriteString("}");}}};BW.ptr.prototype.MaxCap=function(){var $ptr,a,b,c,d,e,f;a=this;b=0;if(a.Op===13){b=a.Cap;}c=a.Sub;d=0;while(true){if(!(d<c.$length)){break;}e=((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]);f=e.MaxCap();if(b<f){b=f;}d++;}return b;};BW.prototype.MaxCap=function(){return this.$val.MaxCap();};BW.ptr.prototype.CapNames=function(){var $ptr,a,b;a=this;b=$makeSlice(CE,(a.MaxCap()+1>>0));a.capNames(b);return b;};BW.prototype.CapNames=function(){return this.$val.CapNames();};BW.ptr.prototype.capNames=function(a){var $ptr,a,b,c,d,e,f;b=this;if(b.Op===13){(c=b.Cap,((c<0||c>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+c]=b.Name));}d=b.Sub;e=0;while(true){if(!(e<d.$length)){break;}f=((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]);f.capNames(a);e++;}};BW.prototype.capNames=function(a){return this.$val.capNames(a);};BW.ptr.prototype.Simplify=function(){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s;a=this;if(a===CH.nil){return CH.nil;}b=a.Op;if((b===(13))||(b===(18))||(b===(19))){c=a;d=a.Sub;e=0;while(true){if(!(e<d.$length)){break;}f=e;g=((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]);h=g.Simplify();if(c===a&&!(h===g)){c=new BW.ptr(0,0,CI.nil,CJ.zero(),CB.nil,CK.zero(),0,0,0,"");BW.copy(c,a);c.Rune=CB.nil;c.Sub=$appendSlice($subslice(new CI(c.Sub0),0,0),$subslice(a.Sub,0,f));}if(!(c===a)){c.Sub=$append(c.Sub,h);}e++;}return c;}else if((b===(14))||(b===(15))||(b===(16))){j=(i=a.Sub,(0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0])).Simplify();return CA(a.Op,a.Flags,j,a);}else if(b===(17)){if((a.Min===0)&&(a.Max===0)){return new BW.ptr(2,0,CI.nil,CJ.zero(),CB.nil,CK.zero(),0,0,0,"");}l=(k=a.Sub,(0>=k.$length?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+0])).Simplify();if(a.Max===-1){if(a.Min===0){return CA(14,a.Flags,l,CH.nil);}if(a.Min===1){return CA(15,a.Flags,l,CH.nil);}m=new BW.ptr(18,0,CI.nil,CJ.zero(),CB.nil,CK.zero(),0,0,0,"");m.Sub=$subslice(new CI(m.Sub0),0,0);n=0;while(true){if(!(n<(a.Min-1>>0))){break;}m.Sub=$append(m.Sub,l);n=n+(1)>>0;}m.Sub=$append(m.Sub,CA(15,a.Flags,l,CH.nil));return m;}if((a.Min===1)&&(a.Max===1)){return l;}o=CH.nil;if(a.Min>0){o=new BW.ptr(18,0,CI.nil,CJ.zero(),CB.nil,CK.zero(),0,0,0,"");o.Sub=$subslice(new CI(o.Sub0),0,0);p=0;while(true){if(!(p<a.Min)){break;}o.Sub=$append(o.Sub,l);p=p+(1)>>0;}}if(a.Max>a.Min){q=CA(16,a.Flags,l,CH.nil);r=a.Min+1>>0;while(true){if(!(r<a.Max)){break;}s=new BW.ptr(18,0,CI.nil,CJ.zero(),CB.nil,CK.zero(),0,0,0,"");s.Sub=$append($subslice(new CI(s.Sub0),0,0),l,q);q=CA(16,a.Flags,s,CH.nil);r=r+(1)>>0;}if(o===CH.nil){return q;}o.Sub=$append(o.Sub,q);}if(!(o===CH.nil)){return o;}return new BW.ptr(1,0,CI.nil,CJ.zero(),CB.nil,CK.zero(),0,0,0,"");}return a;};BW.prototype.Simplify=function(){return this.$val.Simplify();};CA=function(a,b,c,d){var $ptr,a,b,c,d,e;if(c.Op===2){return c;}if((a===c.Op)&&(((b&32)>>>0)===((c.Flags&32)>>>0))){return c;}if(!(d===CH.nil)&&(d.Op===a)&&(((d.Flags&32)>>>0)===((b&32)>>>0))&&c===(e=d.Sub,(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]))){return d;}d=new BW.ptr(a,b,CI.nil,CJ.zero(),CB.nil,CK.zero(),0,0,0,"");d.Sub=$append($subslice(new CI(d.Sub0),0,0),c);return d;};G.methods=[{prop:"next",name:"next",pkg:"regexp/syntax",typ:$funcType([CF],[G],false)},{prop:"patch",name:"patch",pkg:"regexp/syntax",typ:$funcType([CF,$Uint32],[],false)},{prop:"append",name:"append",pkg:"regexp/syntax",typ:$funcType([CF,G],[G],false)}];CP.methods=[{prop:"init",name:"init",pkg:"regexp/syntax",typ:$funcType([],[],false)},{prop:"compile",name:"compile",pkg:"regexp/syntax",typ:$funcType([CH],[H],false)},{prop:"inst",name:"inst",pkg:"regexp/syntax",typ:$funcType([BL],[H],false)},{prop:"nop",name:"nop",pkg:"regexp/syntax",typ:$funcType([],[H],false)},{prop:"fail",name:"fail",pkg:"regexp/syntax",typ:$funcType([],[H],false)},{prop:"cap",name:"cap",pkg:"regexp/syntax",typ:$funcType([$Uint32],[H],false)},{prop:"cat",name:"cat",pkg:"regexp/syntax",typ:$funcType([H,H],[H],false)},{prop:"alt",name:"alt",pkg:"regexp/syntax",typ:$funcType([H,H],[H],false)},{prop:"quest",name:"quest",pkg:"regexp/syntax",typ:$funcType([H,$Bool],[H],false)},{prop:"star",name:"star",pkg:"regexp/syntax",typ:$funcType([H,$Bool],[H],false)},{prop:"plus",name:"plus",pkg:"regexp/syntax",typ:$funcType([H,$Bool],[H],false)},{prop:"empty",name:"empty",pkg:"regexp/syntax",typ:$funcType([BN],[H],false)},{prop:"rune",name:"rune",pkg:"regexp/syntax",typ:$funcType([CB,O],[H],false)}];CQ.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];N.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];CR.methods=[{prop:"newRegexp",name:"newRegexp",pkg:"regexp/syntax",typ:$funcType([BX],[CH],false)},{prop:"reuse",name:"reuse",pkg:"regexp/syntax",typ:$funcType([CH],[],false)},{prop:"push",name:"push",pkg:"regexp/syntax",typ:$funcType([CH],[CH],false)},{prop:"maybeConcat",name:"maybeConcat",pkg:"regexp/syntax",typ:$funcType([$Int32,O],[$Bool],false)},{prop:"newLiteral",name:"newLiteral",pkg:"regexp/syntax",typ:$funcType([$Int32,O],[CH],false)},{prop:"literal",name:"literal",pkg:"regexp/syntax",typ:$funcType([$Int32],[],false)},{prop:"op",name:"op",pkg:"regexp/syntax",typ:$funcType([BX],[CH],false)},{prop:"repeat",name:"repeat",pkg:"regexp/syntax",typ:$funcType([BX,$Int,$Int,$String,$String,$String],[$String,$error],false)},{prop:"concat",name:"concat",pkg:"regexp/syntax",typ:$funcType([],[CH],false)},{prop:"alternate",name:"alternate",pkg:"regexp/syntax",typ:$funcType([],[CH],false)},{prop:"collapse",name:"collapse",pkg:"regexp/syntax",typ:$funcType([CI,BX],[CH],false)},{prop:"factor",name:"factor",pkg:"regexp/syntax",typ:$funcType([CI,O],[CI],false)},{prop:"leadingString",name:"leadingString",pkg:"regexp/syntax",typ:$funcType([CH],[CB,O],false)},{prop:"removeLeadingString",name:"removeLeadingString",pkg:"regexp/syntax",typ:$funcType([CH,$Int],[CH],false)},{prop:"leadingRegexp",name:"leadingRegexp",pkg:"regexp/syntax",typ:$funcType([CH],[CH],false)},{prop:"removeLeadingRegexp",name:"removeLeadingRegexp",pkg:"regexp/syntax",typ:$funcType([CH,$Bool],[CH],false)},{prop:"parseRepeat",name:"parseRepeat",pkg:"regexp/syntax",typ:$funcType([$String],[$Int,$Int,$String,$Bool],false)},{prop:"parsePerlFlags",name:"parsePerlFlags",pkg:"regexp/syntax",typ:$funcType([$String],[$String,$error],false)},{prop:"parseInt",name:"parseInt",pkg:"regexp/syntax",typ:$funcType([$String],[$Int,$String,$Bool],false)},{prop:"parseVerticalBar",name:"parseVerticalBar",pkg:"regexp/syntax",typ:$funcType([],[$error],false)},{prop:"swapVerticalBar",name:"swapVerticalBar",pkg:"regexp/syntax",typ:$funcType([],[$Bool],false)},{prop:"parseRightParen",name:"parseRightParen",pkg:"regexp/syntax",typ:$funcType([],[$error],false)},{prop:"parseEscape",name:"parseEscape",pkg:"regexp/syntax",typ:$funcType([$String],[$Int32,$String,$error],false)},{prop:"parseClassChar",name:"parseClassChar",pkg:"regexp/syntax",typ:$funcType([$String,$String],[$Int32,$String,$error],false)},{prop:"parsePerlClassEscape",name:"parsePerlClassEscape",pkg:"regexp/syntax",typ:$funcType([$String,CB],[CB,$String],false)},{prop:"parseNamedClass",name:"parseNamedClass",pkg:"regexp/syntax",typ:$funcType([$String,CB],[CB,$String,$error],false)},{prop:"appendGroup",name:"appendGroup",pkg:"regexp/syntax",typ:$funcType([CB,Z],[CB],false)},{prop:"parseUnicodeClass",name:"parseUnicodeClass",pkg:"regexp/syntax",typ:$funcType([$String,CB],[CB,$String,$error],false)},{prop:"parseClass",name:"parseClass",pkg:"regexp/syntax",typ:$funcType([$String],[$String,$error],false)}];AM.methods=[{prop:"Less",name:"Less",pkg:"",typ:$funcType([$Int,$Int],[$Bool],false)},{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Swap",name:"Swap",pkg:"",typ:$funcType([$Int,$Int],[],false)}];CF.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"skipNop",name:"skipNop",pkg:"regexp/syntax",typ:$funcType([$Uint32],[CS,$Uint32],false)},{prop:"Prefix",name:"Prefix",pkg:"",typ:$funcType([],[$String,$Bool],false)},{prop:"StartCond",name:"StartCond",pkg:"",typ:$funcType([],[BN],false)}];BL.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];CS.methods=[{prop:"op",name:"op",pkg:"regexp/syntax",typ:$funcType([],[BL],false)},{prop:"MatchRune",name:"MatchRune",pkg:"",typ:$funcType([$Int32],[$Bool],false)},{prop:"MatchRunePos",name:"MatchRunePos",pkg:"",typ:$funcType([$Int32],[$Int],false)},{prop:"MatchEmptyWidth",name:"MatchEmptyWidth",pkg:"",typ:$funcType([$Int32,$Int32],[$Bool],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];CH.methods=[{prop:"Equal",name:"Equal",pkg:"",typ:$funcType([CH],[$Bool],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"MaxCap",name:"MaxCap",pkg:"",typ:$funcType([],[$Int],false)},{prop:"CapNames",name:"CapNames",pkg:"",typ:$funcType([],[CE],false)},{prop:"capNames",name:"capNames",pkg:"regexp/syntax",typ:$funcType([CE],[],false)},{prop:"Simplify",name:"Simplify",pkg:"",typ:$funcType([],[CH],false)}];H.init("regexp/syntax",[{prop:"i",name:"i",exported:false,typ:$Uint32,tag:""},{prop:"out",name:"out",exported:false,typ:G,tag:""}]);I.init("regexp/syntax",[{prop:"p",name:"p",exported:false,typ:CF,tag:""}]);M.init("",[{prop:"Code",name:"Code",exported:true,typ:N,tag:""},{prop:"Expr",name:"Expr",exported:true,typ:$String,tag:""}]);P.init("regexp/syntax",[{prop:"flags",name:"flags",exported:false,typ:O,tag:""},{prop:"stack",name:"stack",exported:false,typ:CI,tag:""},{prop:"free",name:"free",exported:false,typ:CH,tag:""},{prop:"numCap",name:"numCap",exported:false,typ:$Int,tag:""},{prop:"wholeRegexp",name:"wholeRegexp",exported:false,typ:$String,tag:""},{prop:"tmpClass",name:"tmpClass",exported:false,typ:CB,tag:""}]);Z.init("regexp/syntax",[{prop:"sign",name:"sign",exported:false,typ:$Int,tag:""},{prop:"class$1",name:"class",exported:false,typ:CB,tag:""}]);AM.init("regexp/syntax",[{prop:"p",name:"p",exported:false,typ:CL,tag:""}]);BK.init("",[{prop:"Inst",name:"Inst",exported:true,typ:CG,tag:""},{prop:"Start",name:"Start",exported:true,typ:$Int,tag:""},{prop:"NumCap",name:"NumCap",exported:true,typ:$Int,tag:""}]);BQ.init("",[{prop:"Op",name:"Op",exported:true,typ:BL,tag:""},{prop:"Out",name:"Out",exported:true,typ:$Uint32,tag:""},{prop:"Arg",name:"Arg",exported:true,typ:$Uint32,tag:""},{prop:"Rune",name:"Rune",exported:true,typ:CB,tag:""}]);BW.init("",[{prop:"Op",name:"Op",exported:true,typ:BX,tag:""},{prop:"Flags",name:"Flags",exported:true,typ:O,tag:""},{prop:"Sub",name:"Sub",exported:true,typ:CI,tag:""},{prop:"Sub0",name:"Sub0",exported:true,typ:CJ,tag:""},{prop:"Rune",name:"Rune",exported:true,typ:CB,tag:""},{prop:"Rune0",name:"Rune0",exported:true,typ:CK,tag:""},{prop:"Min",name:"Min",exported:true,typ:$Int,tag:""},{prop:"Max",name:"Max",exported:true,typ:$Int,tag:""},{prop:"Cap",name:"Cap",exported:true,typ:$Int,tag:""},{prop:"Name",name:"Name",exported:true,typ:$String,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=E.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}K=new CB([0,9,11,1114111]);L=new CB([0,1114111]);AA=new A.RangeTable.ptr(new CC([new A.Range16.ptr(0,65535,1)]),new CD([new A.Range32.ptr(65536,1114111,1)]),0);AR=new CB([48,57]);AS=new CB([9,10,12,13,32,32]);AT=new CB([48,57,65,90,95,95,97,122]);AU=$makeMap($String.keyFor,[{k:"\\d",v:new Z.ptr(1,AR)},{k:"\\D",v:new Z.ptr(-1,AR)},{k:"\\s",v:new Z.ptr(1,AS)},{k:"\\S",v:new Z.ptr(-1,AS)},{k:"\\w",v:new Z.ptr(1,AT)},{k:"\\W",v:new Z.ptr(-1,AT)}]);AV=new CB([48,57,65,90,97,122]);AW=new CB([65,90,97,122]);AX=new CB([0,127]);AY=new CB([9,9,32,32]);AZ=new CB([0,31,127,127]);BA=new CB([48,57]);BB=new CB([33,126]);BC=new CB([97,122]);BD=new CB([32,126]);BE=new CB([33,47,58,64,91,96,123,126]);BF=new CB([9,13,32,32]);BG=new CB([65,90]);BH=new CB([48,57,65,90,95,95,97,122]);BI=new CB([48,57,65,70,97,102]);BJ=$makeMap($String.keyFor,[{k:"[:alnum:]",v:new Z.ptr(1,AV)},{k:"[:^alnum:]",v:new Z.ptr(-1,AV)},{k:"[:alpha:]",v:new Z.ptr(1,AW)},{k:"[:^alpha:]",v:new Z.ptr(-1,AW)},{k:"[:ascii:]",v:new Z.ptr(1,AX)},{k:"[:^ascii:]",v:new Z.ptr(-1,AX)},{k:"[:blank:]",v:new Z.ptr(1,AY)},{k:"[:^blank:]",v:new Z.ptr(-1,AY)},{k:"[:cntrl:]",v:new Z.ptr(1,AZ)},{k:"[:^cntrl:]",v:new Z.ptr(-1,AZ)},{k:"[:digit:]",v:new Z.ptr(1,BA)},{k:"[:^digit:]",v:new Z.ptr(-1,BA)},{k:"[:graph:]",v:new Z.ptr(1,BB)},{k:"[:^graph:]",v:new Z.ptr(-1,BB)},{k:"[:lower:]",v:new Z.ptr(1,BC)},{k:"[:^lower:]",v:new Z.ptr(-1,BC)},{k:"[:print:]",v:new Z.ptr(1,BD)},{k:"[:^print:]",v:new Z.ptr(-1,BD)},{k:"[:punct:]",v:new Z.ptr(1,BE)},{k:"[:^punct:]",v:new Z.ptr(-1,BE)},{k:"[:space:]",v:new Z.ptr(1,BF)},{k:"[:^space:]",v:new Z.ptr(-1,BF)},{k:"[:upper:]",v:new Z.ptr(1,BG)},{k:"[:^upper:]",v:new Z.ptr(-1,BG)},{k:"[:word:]",v:new Z.ptr(1,BH)},{k:"[:^word:]",v:new Z.ptr(-1,BH)},{k:"[:xdigit:]",v:new Z.ptr(1,BI)},{k:"[:^xdigit:]",v:new Z.ptr(-1,BI)}]);BM=new CE(["InstAlt","InstAltMatch","InstCapture","InstEmptyWidth","InstMatch","InstFail","InstNop","InstRune","InstRune1","InstRuneAny","InstRuneAnyNotNL"]);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["regexp"]=(function(){var $pkg={},$init,C,H,B,A,D,F,G,E,I,J,K,P,Q,R,S,V,W,AA,AH,AN,AO,AV,AW,AX,AY,BG,BH,BI,BJ,BK,BL,BM,BN,BO,BP,BQ,BR,BS,BT,BU,BV,BW,BX,BY,BZ,CA,CB,CC,CD,CE,CF,CG,CH,CI,CJ,CK,CL,CM,CN,CO,CP,CQ,CR,L,U,AC,AD,AI,AJ,AL,M,N,O,T,X,Y,Z,AB,AE,AF,AG,AK,AM,AP,AR,AS,AU,BA,BF;C=$packages["bytes"];H=$packages["github.com/gopherjs/gopherjs/nosync"];B=$packages["io"];A=$packages["regexp/syntax"];D=$packages["sort"];F=$packages["strconv"];G=$packages["strings"];E=$packages["unicode"];I=$packages["unicode/utf8"];J=$pkg.job=$newType(0,$kindStruct,"regexp.job",true,"regexp",false,function(pc_,arg_,pos_){this.$val=this;if(arguments.length===0){this.pc=0;this.arg=0;this.pos=0;return;}this.pc=pc_;this.arg=arg_;this.pos=pos_;});K=$pkg.bitState=$newType(0,$kindStruct,"regexp.bitState",true,"regexp",false,function(prog_,end_,cap_,jobs_,visited_){this.$val=this;if(arguments.length===0){this.prog=BM.nil;this.end=0;this.cap=BN.nil;this.jobs=BO.nil;this.visited=BJ.nil;return;}this.prog=prog_;this.end=end_;this.cap=cap_;this.jobs=jobs_;this.visited=visited_;});P=$pkg.queue=$newType(0,$kindStruct,"regexp.queue",true,"regexp",false,function(sparse_,dense_){this.$val=this;if(arguments.length===0){this.sparse=BJ.nil;this.dense=BQ.nil;return;}this.sparse=sparse_;this.dense=dense_;});Q=$pkg.entry=$newType(0,$kindStruct,"regexp.entry",true,"regexp",false,function(pc_,t_){this.$val=this;if(arguments.length===0){this.pc=0;this.t=BR.nil;return;}this.pc=pc_;this.t=t_;});R=$pkg.thread=$newType(0,$kindStruct,"regexp.thread",true,"regexp",false,function(inst_,cap_){this.$val=this;if(arguments.length===0){this.inst=BT.nil;this.cap=BN.nil;return;}this.inst=inst_;this.cap=cap_;});S=$pkg.machine=$newType(0,$kindStruct,"regexp.machine",true,"regexp",false,function(re_,p_,op_,maxBitStateLen_,b_,q0_,q1_,pool_,matched_,matchcap_,inputBytes_,inputString_,inputReader_){this.$val=this;if(arguments.length===0){this.re=BP.nil;this.p=BM.nil;this.op=BK.nil;this.maxBitStateLen=0;this.b=BH.nil;this.q0=new P.ptr(BJ.nil,BQ.nil);this.q1=new P.ptr(BJ.nil,BQ.nil);this.pool=BS.nil;this.matched=false;this.matchcap=BN.nil;this.inputBytes=new AX.ptr(BL.nil);this.inputString=new AW.ptr("");this.inputReader=new AY.ptr($ifaceNil,false,0);return;}this.re=re_;this.p=p_;this.op=op_;this.maxBitStateLen=maxBitStateLen_;this.b=b_;this.q0=q0_;this.q1=q1_;this.pool=pool_;this.matched=matched_;this.matchcap=matchcap_;this.inputBytes=inputBytes_;this.inputString=inputString_;this.inputReader=inputReader_;});V=$pkg.onePassProg=$newType(0,$kindStruct,"regexp.onePassProg",true,"regexp",false,function(Inst_,Start_,NumCap_){this.$val=this;if(arguments.length===0){this.Inst=BX.nil;this.Start=0;this.NumCap=0;return;}this.Inst=Inst_;this.Start=Start_;this.NumCap=NumCap_;});W=$pkg.onePassInst=$newType(0,$kindStruct,"regexp.onePassInst",true,"regexp",false,function(Inst_,Next_){this.$val=this;if(arguments.length===0){this.Inst=new A.Inst.ptr(0,0,0,BI.nil);this.Next=BJ.nil;return;}this.Inst=Inst_;this.Next=Next_;});AA=$pkg.queueOnePass=$newType(0,$kindStruct,"regexp.queueOnePass",true,"regexp",false,function(sparse_,dense_,size_,nextIndex_){this.$val=this;if(arguments.length===0){this.sparse=BJ.nil;this.dense=BJ.nil;this.size=0;this.nextIndex=0;return;}this.sparse=sparse_;this.dense=dense_;this.size=size_;this.nextIndex=nextIndex_;});AH=$pkg.runeSlice=$newType(12,$kindSlice,"regexp.runeSlice",true,"regexp",false,null);AN=$pkg.Regexp=$newType(0,$kindStruct,"regexp.Regexp",true,"regexp",true,function(regexpRO_,mu_,machine_){this.$val=this;if(arguments.length===0){this.regexpRO=new AO.ptr("",BM.nil,BK.nil,"",BL.nil,false,0,0,0,0,CB.nil,false);this.mu=new H.Mutex.ptr(false);this.machine=CD.nil;return;}this.regexpRO=regexpRO_;this.mu=mu_;this.machine=machine_;});AO=$pkg.regexpRO=$newType(0,$kindStruct,"regexp.regexpRO",true,"regexp",false,function(expr_,prog_,onepass_,prefix_,prefixBytes_,prefixComplete_,prefixRune_,prefixEnd_,cond_,numSubexp_,subexpNames_,longest_){this.$val=this;if(arguments.length===0){this.expr="";this.prog=BM.nil;this.onepass=BK.nil;this.prefix="";this.prefixBytes=BL.nil;this.prefixComplete=false;this.prefixRune=0;this.prefixEnd=0;this.cond=0;this.numSubexp=0;this.subexpNames=CB.nil;this.longest=false;return;}this.expr=expr_;this.prog=prog_;this.onepass=onepass_;this.prefix=prefix_;this.prefixBytes=prefixBytes_;this.prefixComplete=prefixComplete_;this.prefixRune=prefixRune_;this.prefixEnd=prefixEnd_;this.cond=cond_;this.numSubexp=numSubexp_;this.subexpNames=subexpNames_;this.longest=longest_;});AV=$pkg.input=$newType(8,$kindInterface,"regexp.input",true,"regexp",false,null);AW=$pkg.inputString=$newType(0,$kindStruct,"regexp.inputString",true,"regexp",false,function(str_){this.$val=this;if(arguments.length===0){this.str="";return;}this.str=str_;});AX=$pkg.inputBytes=$newType(0,$kindStruct,"regexp.inputBytes",true,"regexp",false,function(str_){this.$val=this;if(arguments.length===0){this.str=BL.nil;return;}this.str=str_;});AY=$pkg.inputReader=$newType(0,$kindStruct,"regexp.inputReader",true,"regexp",false,function(r_,atEOT_,pos_){this.$val=this;if(arguments.length===0){this.r=$ifaceNil;this.atEOT=false;this.pos=0;return;}this.r=r_;this.atEOT=atEOT_;this.pos=pos_;});BG=$arrayType($Int,0);BH=$ptrType(K);BI=$sliceType($Int32);BJ=$sliceType($Uint32);BK=$ptrType(V);BL=$sliceType($Uint8);BM=$ptrType(A.Prog);BN=$sliceType($Int);BO=$sliceType(J);BP=$ptrType(AN);BQ=$sliceType(Q);BR=$ptrType(R);BS=$sliceType(BR);BT=$ptrType(A.Inst);BU=$ptrType($Int);BV=$arrayType($Uint8,64);BW=$ptrType(AA);BX=$sliceType(W);BY=$ptrType($Uint32);BZ=$sliceType(BI);CA=$ptrType(BI);CB=$sliceType($String);CC=$ptrType(S);CD=$sliceType(CC);CE=$arrayType($Int,2);CF=$arrayType($Int,4);CG=$sliceType(BL);CH=$sliceType(BN);CI=$sliceType(CG);CJ=$sliceType(CB);CK=$ptrType(P);CL=$funcType([$String],[$String],false);CM=$funcType([BL,BN],[BL],false);CN=$funcType([BL],[BL],false);CO=$funcType([BN],[],false);CP=$ptrType(AW);CQ=$ptrType(AX);CR=$ptrType(AY);M=function(a){var $ptr,a,b;if(!O(a)){return 0;}return(b=262144/a.Inst.$length,(b===b&&b!==1/0&&b!==-1/0)?b>>0:$throwRuntimeError("integer divide by zero"));};N=function(a){var $ptr,a;if(!O(a)){return L;}return new K.ptr(a,0,BN.nil,BO.nil,BJ.nil);};O=function(a){var $ptr,a;return a.Inst.$length<=500;};K.ptr.prototype.reset=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m;c=this;c.end=a;if(c.jobs.$capacity===0){c.jobs=$makeSlice(BO,0,256);}else{c.jobs=$subslice(c.jobs,0,0);}e=(d=(((($imul(c.prog.Inst.$length,((a+1>>0))))+32>>0)-1>>0))/32,(d===d&&d!==1/0&&d!==-1/0)?d>>0:$throwRuntimeError("integer divide by zero"));if(c.visited.$capacity<e){c.visited=$makeSlice(BJ,e,8192);}else{c.visited=$subslice(c.visited,0,e);f=c.visited;g=0;while(true){if(!(g<f.$length)){break;}h=g;(i=c.visited,((h<0||h>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+h]=0));g++;}}if(c.cap.$capacity<b){c.cap=$makeSlice(BN,b);}else{c.cap=$subslice(c.cap,0,b);}j=c.cap;k=0;while(true){if(!(k<j.$length)){break;}l=k;(m=c.cap,((l<0||l>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+l]=-1));k++;}};K.prototype.reset=function(a,b){return this.$val.reset(a,b);};K.ptr.prototype.shouldVisit=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m;c=this;d=((($imul((a>>0),((c.end+1>>0))))+b>>0)>>>0);if(!(((((e=c.visited,f=(g=d/32,(g===g&&g!==1/0&&g!==-1/0)?g>>>0:$throwRuntimeError("integer divide by zero")),((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]))&(((h=(((d&31)>>>0)),h<32?(1<<h):0)>>>0)))>>>0)===0))){return false;}j=(i=d/32,(i===i&&i!==1/0&&i!==-1/0)?i>>>0:$throwRuntimeError("integer divide by zero"));(m=c.visited,((j<0||j>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+j]=(((k=c.visited,((j<0||j>=k.$length)?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+j]))|(((l=(((d&31)>>>0)),l<32?(1<<l):0)>>>0)))>>>0)));return true;};K.prototype.shouldVisit=function(a,b){return this.$val.shouldVisit(a,b);};K.ptr.prototype.push=function(a,b,c){var $ptr,a,b,c,d,e;d=this;if((e=d.prog.Inst,((a<0||a>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+a])).Op===5){return;}if((c===0)&&!d.shouldVisit(a,b)){return;}d.jobs=$append(d.jobs,new J.ptr(a,c,b));};K.prototype.push=function(a,b,c){return this.$val.push(a,b,c);};S.ptr.prototype.tryBacktrack=function(a,b,c,d){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=this;f=e.re.regexpRO.longest;e.matched=false;a.push(c,d,0);case 1:if(!(a.jobs.$length>0)){$s=2;continue;}g=a.jobs.$length-1>>0;i=(h=a.jobs,((g<0||g>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+g])).pc;k=(j=a.jobs,((g<0||g>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+g])).pos;m=(l=a.jobs,((g<0||g>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+g])).arg;a.jobs=$subslice(a.jobs,0,g);$s=3;continue;case 4:if(!a.shouldVisit(i,k)){$s=1;continue;}case 3:o=$clone((n=a.prog.Inst,((i<0||i>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+i])),A.Inst);p=o.Op;if(p===(5)){$s=6;continue;}if(p===(0)){$s=7;continue;}if(p===(1)){$s=8;continue;}if(p===(7)){$s=9;continue;}if(p===(8)){$s=10;continue;}if(p===(10)){$s=11;continue;}if(p===(9)){$s=12;continue;}if(p===(2)){$s=13;continue;}if(p===(3)){$s=14;continue;}if(p===(6)){$s=15;continue;}if(p===(4)){$s=16;continue;}$s=17;continue;case 6:$panic(new $String("unexpected InstFail"));$s=18;continue;case 7:q=m;if(q===(0)){$s=20;continue;}if(q===(1)){$s=21;continue;}$s=22;continue;case 20:a.push(i,k,1);i=o.Out;$s=4;continue;$s=22;continue;case 21:m=0;i=o.Arg;$s=4;continue;case 22:case 19:$panic(new $String("bad arg in InstAlt"));$s=18;continue;case 8:t=(r=a.prog.Inst,s=o.Out,((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s])).Op;if((t===(7))||(t===(8))||(t===(9))||(t===(10))){$s=24;continue;}$s=25;continue;case 24:a.push(o.Arg,k,0);i=o.Arg;k=a.end;$s=4;continue;case 25:case 23:a.push(o.Out,a.end,0);i=o.Out;$s=4;continue;$s=18;continue;case 9:v=b.step(k);$s=26;case 26:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}u=v;w=u[0];x=u[1];if(!o.MatchRune(w)){$s=27;continue;}$s=28;continue;case 27:$s=1;continue;case 28:k=k+(x)>>0;i=o.Out;$s=4;continue;$s=18;continue;case 10:z=b.step(k);$s=29;case 29:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}y=z;aa=y[0];ab=y[1];if(!((aa===(ac=o.Rune,(0>=ac.$length?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+0]))))){$s=30;continue;}$s=31;continue;case 30:$s=1;continue;case 31:k=k+(ab)>>0;i=o.Out;$s=4;continue;$s=18;continue;case 11:ae=b.step(k);$s=32;case 32:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}ad=ae;af=ad[0];ag=ad[1];if((af===10)||(af===-1)){$s=33;continue;}$s=34;continue;case 33:$s=1;continue;case 34:k=k+(ag)>>0;i=o.Out;$s=4;continue;$s=18;continue;case 12:ai=b.step(k);$s=35;case 35:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ah=ai;aj=ah[0];ak=ah[1];if(aj===-1){$s=36;continue;}$s=37;continue;case 36:$s=1;continue;case 37:k=k+(ak)>>0;i=o.Out;$s=4;continue;$s=18;continue;case 13:al=m;if(al===(0)){$s=39;continue;}if(al===(1)){$s=40;continue;}$s=41;continue;case 39:if(0<=o.Arg&&o.Arg<(a.cap.$length>>>0)){a.push(i,(am=a.cap,an=o.Arg,((an<0||an>=am.$length)?($throwRuntimeError("index out of range"),undefined):am.$array[am.$offset+an])),1);(ao=a.cap,ap=o.Arg,((ap<0||ap>=ao.$length)?($throwRuntimeError("index out of range"),undefined):ao.$array[ao.$offset+ap]=k));}i=o.Out;$s=4;continue;$s=41;continue;case 40:(aq=a.cap,ar=o.Arg,((ar<0||ar>=aq.$length)?($throwRuntimeError("index out of range"),undefined):aq.$array[aq.$offset+ar]=k));$s=1;continue;case 41:case 38:$panic(new $String("bad arg in InstCapture"));$s=18;continue;case 14:as=b.context(k);$s=44;case 44:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}if(!(((((o.Arg<<24>>>24)&~as)<<24>>>24)===0))){$s=42;continue;}$s=43;continue;case 42:$s=1;continue;case 43:i=o.Out;$s=4;continue;$s=18;continue;case 15:i=o.Out;$s=4;continue;$s=18;continue;case 16:if(a.cap.$length===0){e.matched=true;$s=-1;return e.matched;}if(a.cap.$length>1){(at=a.cap,(1>=at.$length?($throwRuntimeError("index out of range"),undefined):at.$array[at.$offset+1]=k));}if(!e.matched||(f&&k>0&&k>(au=e.matchcap,(1>=au.$length?($throwRuntimeError("index out of range"),undefined):au.$array[au.$offset+1])))){$copySlice(e.matchcap,a.cap);}e.matched=true;if(!f){$s=-1;return e.matched;}if(k===a.end){$s=-1;return e.matched;}$s=1;continue;$s=18;continue;case 17:$panic(new $String("bad inst"));case 18:case 5:$s=1;continue;case 2:$s=-1;return e.matched;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.tryBacktrack};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};S.prototype.tryBacktrack=function(a,b,c,d){return this.$val.tryBacktrack(a,b,c,d);};S.ptr.prototype.backtrack=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=this;f=a.canCheckPrefix();$s=3;case 3:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}if(!f){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("backtrack called for a RuneReader"));case 2:g=e.re.regexpRO.cond;if(g===255){$s=-1;return false;}if(!((((g&4)>>>0)===0))&&!((b===0))){$s=-1;return false;}h=e.b;h.reset(c,d);e.matchcap=$subslice(e.matchcap,0,d);i=e.matchcap;j=0;while(true){if(!(j<i.$length)){break;}k=j;(l=e.matchcap,((k<0||k>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+k]=-1));j++;}if(!((((g&4)>>>0)===0))){$s=4;continue;}$s=5;continue;case 4:if(h.cap.$length>0){(m=h.cap,(0>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+0]=b));}n=e.tryBacktrack(h,a,(e.p.Start>>>0),b);$s=6;case 6:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$s=-1;return n;case 5:o=-1;case 7:if(!(b<=c&&!((o===0)))){$s=8;continue;}if(e.re.regexpRO.prefix.length>0){$s=9;continue;}$s=10;continue;case 9:p=a.index(e.re,b);$s=11;case 11:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}q=p;if(q<0){$s=-1;return false;}b=b+(q)>>0;case 10:if(h.cap.$length>0){(r=h.cap,(0>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+0]=b));}s=e.tryBacktrack(h,a,(e.p.Start>>>0),b);$s=14;case 14:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}if(s){$s=12;continue;}$s=13;continue;case 12:$s=-1;return true;case 13:u=a.step(b);$s=15;case 15:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}t=u;o=t[1];b=b+(o)>>0;$s=7;continue;case 8:$s=-1;return false;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.backtrack};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.$s=$s;$f.$r=$r;return $f;};S.prototype.backtrack=function(a,b,c,d){return this.$val.backtrack(a,b,c,d);};S.ptr.prototype.newInputBytes=function(a){var $ptr,a,b;b=this;b.inputBytes.str=a;return b.inputBytes;};S.prototype.newInputBytes=function(a){return this.$val.newInputBytes(a);};S.ptr.prototype.newInputString=function(a){var $ptr,a,b;b=this;b.inputString.str=a;return b.inputString;};S.prototype.newInputString=function(a){return this.$val.newInputString(a);};S.ptr.prototype.newInputReader=function(a){var $ptr,a,b;b=this;b.inputReader.r=a;b.inputReader.atEOT=false;b.inputReader.pos=0;return b.inputReader;};S.prototype.newInputReader=function(a){return this.$val.newInputReader(a);};T=function(a,b){var $ptr,a,b,c,d,e;c=new S.ptr(BP.nil,a,b,0,BH.nil,new P.ptr(BJ.nil,BQ.nil),new P.ptr(BJ.nil,BQ.nil),BS.nil,false,BN.nil,new AX.ptr(BL.nil),new AW.ptr(""),new AY.ptr($ifaceNil,false,0));d=c.p.Inst.$length;P.copy(c.q0,new P.ptr($makeSlice(BJ,d),$makeSlice(BQ,0,d)));P.copy(c.q1,new P.ptr($makeSlice(BJ,d),$makeSlice(BQ,0,d)));e=a.NumCap;if(e<2){e=2;}if(b===AL){c.maxBitStateLen=M(a);}c.matchcap=$makeSlice(BN,e);return c;};S.ptr.prototype.init=function(a){var $ptr,a,b,c,d,e;b=this;c=b.pool;d=0;while(true){if(!(d<c.$length)){break;}e=((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]);e.cap=$subslice(e.cap,0,a);d++;}b.matchcap=$subslice(b.matchcap,0,a);};S.prototype.init=function(a){return this.$val.init(a);};S.ptr.prototype.alloc=function(a){var $ptr,a,b,c,d,e,f;b=this;c=BR.nil;d=b.pool.$length;if(d>0){c=(e=b.pool,f=d-1>>0,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]));b.pool=$subslice(b.pool,0,(d-1>>0));}else{c=new R.ptr(BT.nil,BN.nil);c.cap=$makeSlice(BN,b.matchcap.$length,b.matchcap.$capacity);}c.inst=a;return c;};S.prototype.alloc=function(a){return this.$val.alloc(a);};S.ptr.prototype.match=function(a,b){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;d=c.re.regexpRO.cond;if(d===255){$s=-1;return false;}c.matched=false;e=c.matchcap;f=0;while(true){if(!(f<e.$length)){break;}g=f;(h=c.matchcap,((g<0||g>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+g]=-1));f++;}i=c.q0;j=c.q1;k=i;l=j;m=-1;n=-1;o=m;p=n;q=0;r=0;s=q;t=r;v=a.step(b);$s=1;case 1:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}u=v;o=u[0];s=u[1];if(!((o===-1))){$s=2;continue;}$s=3;continue;case 2:x=a.step(b+s>>0);$s=4;case 4:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}w=x;p=w[0];t=w[1];case 3:y=0;if(b===0){$s=5;continue;}$s=6;continue;case 5:y=A.EmptyOpContext(-1,o);$s=7;continue;case 6:z=a.context(b);$s=8;case 8:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}y=z;case 7:case 9:if(k.dense.$length===0){$s=11;continue;}$s=12;continue;case 11:if(!((((d&4)>>>0)===0))&&!((b===0))){$s=10;continue;}if(c.matched){$s=10;continue;}if(!(c.re.regexpRO.prefix.length>0&&!((p===c.re.regexpRO.prefixRune)))){aa=false;$s=15;continue s;}ab=a.canCheckPrefix();$s=16;case 16:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}aa=ab;case 15:if(aa){$s=13;continue;}$s=14;continue;case 13:ac=a.index(c.re,b);$s=17;case 17:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ad=ac;if(ad<0){$s=10;continue;}b=b+(ad)>>0;af=a.step(b);$s=18;case 18:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}ae=af;o=ae[0];s=ae[1];ah=a.step(b+s>>0);$s=19;case 19:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ag=ah;p=ag[0];t=ag[1];case 14:case 12:if(!c.matched){if(c.matchcap.$length>0){(ai=c.matchcap,(0>=ai.$length?($throwRuntimeError("index out of range"),undefined):ai.$array[ai.$offset+0]=b));}c.add(k,(c.p.Start>>>0),b,c.matchcap,y,BR.nil);}y=A.EmptyOpContext(o,p);c.step(k,l,b,b+s>>0,o,y);if(s===0){$s=10;continue;}if((c.matchcap.$length===0)&&c.matched){$s=10;continue;}b=b+(s)>>0;aj=p;ak=t;o=aj;s=ak;if(!((o===-1))){$s=20;continue;}$s=21;continue;case 20:am=a.step(b+s>>0);$s=22;case 22:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}al=am;p=al[0];t=al[1];case 21:an=l;ao=k;k=an;l=ao;$s=9;continue;case 10:c.clear(l);$s=-1;return c.matched;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.match};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};S.prototype.match=function(a,b){return this.$val.match(a,b);};S.ptr.prototype.clear=function(a){var $ptr,a,b,c,d,e;b=this;c=a.dense;d=0;while(true){if(!(d<c.$length)){break;}e=$clone(((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]),Q);if(!(e.t===BR.nil)){b.pool=$append(b.pool,e.t);}d++;}a.dense=$subslice(a.dense,0,0);};S.prototype.clear=function(a){return this.$val.clear(a);};S.ptr.prototype.step=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w;g=this;h=g.re.regexpRO.longest;i=0;while(true){if(!(i<a.dense.$length)){break;}k=(j=a.dense,((i<0||i>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+i]));l=k.t;if(l===BR.nil){i=i+(1)>>0;continue;}if(h&&g.matched&&l.cap.$length>0&&(m=g.matchcap,(0>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+0]))<(n=l.cap,(0>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+0]))){g.pool=$append(g.pool,l);i=i+(1)>>0;continue;}o=l.inst;p=false;q=o.Op;if(q===(4)){if(l.cap.$length>0&&(!h||!g.matched||(r=g.matchcap,(1>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+1]))<c)){(s=l.cap,(1>=s.$length?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+1]=c));$copySlice(g.matchcap,l.cap);}if(!h){t=$subslice(a.dense,(i+1>>0));u=0;while(true){if(!(u<t.$length)){break;}v=$clone(((u<0||u>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+u]),Q);if(!(v.t===BR.nil)){g.pool=$append(g.pool,v.t);}u++;}a.dense=$subslice(a.dense,0,0);}g.matched=true;}else if(q===(7)){p=o.MatchRune(e);}else if(q===(8)){p=e===(w=o.Rune,(0>=w.$length?($throwRuntimeError("index out of range"),undefined):w.$array[w.$offset+0]));}else if(q===(9)){p=true;}else if(q===(10)){p=!((e===10));}else{$panic(new $String("bad inst"));}if(p){l=g.add(b,o.Out,d,l.cap,f,l);}if(!(l===BR.nil)){g.pool=$append(g.pool,l);}i=i+(1)>>0;}a.dense=$subslice(a.dense,0,0);};S.prototype.step=function(a,b,c,d,e,f){return this.$val.step(a,b,c,d,e,f);};S.ptr.prototype.add=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v;g=this;if(b===0){return f;}i=(h=a.sparse,((b<0||b>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+b]));if(i<(a.dense.$length>>>0)&&((j=a.dense,((i<0||i>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+i])).pc===b)){return f;}k=a.dense.$length;a.dense=$subslice(a.dense,0,(k+1>>0));m=(l=a.dense,((k<0||k>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+k]));m.t=BR.nil;m.pc=b;(n=a.sparse,((b<0||b>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+b]=(k>>>0)));p=(o=g.p.Inst,((b<0||b>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+b]));q=p.Op;if(q===(5)){}else if((q===(0))||(q===(1))){f=g.add(a,p.Out,c,d,e,f);f=g.add(a,p.Arg,c,d,e,f);}else if(q===(3)){if((((p.Arg<<24>>>24)&~e)<<24>>>24)===0){f=g.add(a,p.Out,c,d,e,f);}}else if(q===(6)){f=g.add(a,p.Out,c,d,e,f);}else if(q===(2)){if((p.Arg>>0)<d.$length){s=(r=p.Arg,((r<0||r>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+r]));(t=p.Arg,((t<0||t>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+t]=c));g.add(a,p.Out,c,d,e,BR.nil);(u=p.Arg,((u<0||u>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+u]=s));}else{f=g.add(a,p.Out,c,d,e,f);}}else if((q===(4))||(q===(7))||(q===(8))||(q===(9))||(q===(10))){if(f===BR.nil){f=g.alloc(p);}else{f.inst=p;}if(d.$length>0&&!((v=f.cap,$indexPtr(v.$array,v.$offset+0,BU))===$indexPtr(d.$array,d.$offset+0,BU))){$copySlice(f.cap,d);}m.t=f;f=BR.nil;}else{$panic(new $String("unhandled"));}return f;};S.prototype.add=function(a,b,c,d,e,f){return this.$val.add(a,b,c,d,e,f);};S.ptr.prototype.onepass=function(a,b){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=[c];d=this;e=d.re.regexpRO.cond;if(e===255){$s=-1;return false;}d.matched=false;f=d.matchcap;g=0;while(true){if(!(g<f.$length)){break;}h=g;(i=d.matchcap,((h<0||h>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+h]=-1));g++;}j=-1;k=-1;l=j;m=k;n=0;o=0;p=n;q=o;s=a.step(b);$s=1;case 1:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;l=r[0];p=r[1];if(!((l===-1))){$s=2;continue;}$s=3;continue;case 2:u=a.step(b+p>>0);$s=4;case 4:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}t=u;m=t[0];q=t[1];case 3:v=0;if(b===0){$s=5;continue;}$s=6;continue;case 5:v=A.EmptyOpContext(-1,l);$s=7;continue;case 6:w=a.context(b);$s=8;case 8:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}v=w;case 7:x=d.op.Start;c[0]=$clone((y=d.op.Inst,((x<0||x>=y.$length)?($throwRuntimeError("index out of range"),undefined):y.$array[y.$offset+x])),W);if(!((b===0)&&((((c[0].Inst.Arg<<24>>>24)&~v)<<24>>>24)===0)&&d.re.regexpRO.prefix.length>0)){z=false;$s=11;continue s;}aa=a.canCheckPrefix();$s=12;case 12:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}z=aa;case 11:if(z){$s=9;continue;}$s=10;continue;case 9:ab=a.hasPrefix(d.re);$s=16;case 16:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}if(ab){$s=13;continue;}$s=14;continue;case 13:b=b+(d.re.regexpRO.prefix.length)>>0;ad=a.step(b);$s=17;case 17:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}ac=ad;l=ac[0];p=ac[1];af=a.step(b+p>>0);$s=18;case 18:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}ae=af;m=ae[0];q=ae[1];ag=a.context(b);$s=19;case 19:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}v=ag;x=(d.re.regexpRO.prefixEnd>>0);$s=15;continue;case 14:$s=-1;return d.matched;case 15:case 10:case 20:W.copy(c[0],(ah=d.op.Inst,((x<0||x>=ah.$length)?($throwRuntimeError("index out of range"),undefined):ah.$array[ah.$offset+x])));x=(c[0].Inst.Out>>0);ai=c[0].Inst.Op;if(ai===(4)){$s=23;continue;}if(ai===(7)){$s=24;continue;}if(ai===(8)){$s=25;continue;}if(ai===(9)){$s=26;continue;}if(ai===(10)){$s=27;continue;}if((ai===(0))||(ai===(1))){$s=28;continue;}if(ai===(5)){$s=29;continue;}if(ai===(6)){$s=30;continue;}if(ai===(3)){$s=31;continue;}if(ai===(2)){$s=32;continue;}$s=33;continue;case 23:d.matched=true;if(d.matchcap.$length>0){(aj=d.matchcap,(0>=aj.$length?($throwRuntimeError("index out of range"),undefined):aj.$array[aj.$offset+0]=0));(ak=d.matchcap,(1>=ak.$length?($throwRuntimeError("index out of range"),undefined):ak.$array[ak.$offset+1]=b));}$s=-1;return d.matched;case 24:if(!c[0].Inst.MatchRune(l)){$s=-1;return d.matched;}$s=34;continue;case 25:if(!((l===(al=c[0].Inst.Rune,(0>=al.$length?($throwRuntimeError("index out of range"),undefined):al.$array[al.$offset+0]))))){$s=-1;return d.matched;}$s=34;continue;case 26:$s=34;continue;case 27:if(l===10){$s=-1;return d.matched;}$s=34;continue;case 28:x=(Y(c[0],l)>>0);$s=20;continue;$s=34;continue;case 29:$s=-1;return d.matched;case 30:$s=20;continue;$s=34;continue;case 31:if(!(((((c[0].Inst.Arg<<24>>>24)&~v)<<24>>>24)===0))){$s=-1;return d.matched;}$s=20;continue;$s=34;continue;case 32:if((c[0].Inst.Arg>>0)<d.matchcap.$length){(am=d.matchcap,an=c[0].Inst.Arg,((an<0||an>=am.$length)?($throwRuntimeError("index out of range"),undefined):am.$array[am.$offset+an]=b));}$s=20;continue;$s=34;continue;case 33:$panic(new $String("bad inst"));case 34:case 22:if(p===0){$s=21;continue;}v=A.EmptyOpContext(l,m);b=b+(p)>>0;ao=m;ap=q;l=ao;p=ap;if(!((l===-1))){$s=35;continue;}$s=36;continue;case 35:ar=a.step(b+p>>0);$s=37;case 37:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}aq=ar;m=aq[0];q=aq[1];case 36:$s=20;continue;case 21:$s=-1;return d.matched;}return;}if($f===undefined){$f={$blk:S.ptr.prototype.onepass};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};S.prototype.onepass=function(a,b){return this.$val.onepass(a,b);};AN.ptr.prototype.doMatch=function(a,b,c){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:d=this;e=d.doExecute(a,b,c,0,0,BN.nil);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=-1;return!(e===BN.nil);}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.doMatch};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.doMatch=function(a,b,c){return this.$val.doMatch(a,b,c);};AN.ptr.prototype.doExecute=function(a,b,c,d,e,f){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=this;h=g.get();i=$ifaceNil;j=0;if(!($interfaceIsEqual(a,$ifaceNil))){i=h.newInputReader(a);}else if(!(b===BL.nil)){i=h.newInputBytes(b);j=b.$length;}else{i=h.newInputString(c);j=c.length;}if(!(h.op===AL)){$s=1;continue;}if(j<h.maxBitStateLen&&$interfaceIsEqual(a,$ifaceNil)){$s=2;continue;}$s=3;continue;case 1:k=h.onepass(i,d);$s=7;case 7:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}if(!k){$s=5;continue;}$s=6;continue;case 5:g.put(h);$s=-1;return BN.nil;case 6:$s=4;continue;case 2:if(h.b===BH.nil){h.b=N(h.p);}l=h.backtrack(i,d,j,e);$s=10;case 10:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}if(!l){$s=8;continue;}$s=9;continue;case 8:g.put(h);$s=-1;return BN.nil;case 9:$s=4;continue;case 3:h.init(e);m=h.match(i,d);$s=13;case 13:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}if(!m){$s=11;continue;}$s=12;continue;case 11:g.put(h);$s=-1;return BN.nil;case 12:case 4:f=$appendSlice(f,h.matchcap);if(f===BN.nil){f=$subslice(new BN(U),0,0);}g.put(h);$s=-1;return f;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.doExecute};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.doExecute=function(a,b,c,d,e,f){return this.$val.doExecute(a,b,c,d,e,f);};X=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;b="";c=false;d=0;g=(e=a.Inst,f=a.Start,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]));if(!((g.Op===3))||(((((g.Arg<<24>>>24))&4)>>>0)===0)){h="";i=g.Op===4;j=(a.Start>>>0);b=h;c=i;d=j;return[b,c,d];}d=g.Out;g=(k=a.Inst,((d<0||d>=k.$length)?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+d]));while(true){if(!(g.Op===6)){break;}d=g.Out;g=(l=a.Inst,((d<0||d>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+d]));}if(!((Z(g)===7))||!((g.Rune.$length===1))){m="";n=g.Op===4;o=(a.Start>>>0);b=m;c=n;d=o;return[b,c,d];}p=new C.Buffer.ptr(BL.nil,0,BV.zero(),0);while(true){if(!((Z(g)===7)&&(g.Rune.$length===1)&&((((g.Arg<<16>>>16)&1)>>>0)===0))){break;}p.WriteRune((q=g.Rune,(0>=q.$length?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+0])));r=g.Out;s=(t=a.Inst,u=g.Out,((u<0||u>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+u]));d=r;g=s;}if((g.Op===3)&&!(((((g.Arg<<24>>>24)&8)>>>0)===0))&&((v=a.Inst,w=g.Out,((w<0||w>=v.$length)?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+w])).Op===4)){c=true;}x=p.String();y=c;z=d;b=x;c=y;d=z;return[b,c,d];};Y=function(a,b){var $ptr,a,b,c,d;c=a.Inst.MatchRunePos(b);if(c>=0){return(d=a.Next,((c<0||c>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+c]));}if(a.Inst.Op===1){return a.Inst.Out;}return 0;};Z=function(a){var $ptr,a,b,c;b=a.Op;c=b;if((c===(8))||(c===(9))||(c===(10))){b=7;}return b;};AA.ptr.prototype.empty=function(){var $ptr,a;a=this;return a.nextIndex>=a.size;};AA.prototype.empty=function(){return this.$val.empty();};AA.ptr.prototype.next=function(){var $ptr,a,b,c,d;a=0;b=this;a=(c=b.dense,d=b.nextIndex,((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]));b.nextIndex=b.nextIndex+(1)>>>0;return a;};AA.prototype.next=function(){return this.$val.next();};AA.ptr.prototype.clear=function(){var $ptr,a;a=this;a.size=0;a.nextIndex=0;};AA.prototype.clear=function(){return this.$val.clear();};AA.ptr.prototype.contains=function(a){var $ptr,a,b,c,d,e,f;b=this;if(a>=(b.sparse.$length>>>0)){return false;}return(c=b.sparse,((a<0||a>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+a]))<b.size&&((d=b.dense,e=(f=b.sparse,((a<0||a>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+a])),((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]))===a);};AA.prototype.contains=function(a){return this.$val.contains(a);};AA.ptr.prototype.insert=function(a){var $ptr,a,b;b=this;if(!b.contains(a)){b.insertNew(a);}};AA.prototype.insert=function(a){return this.$val.insert(a);};AA.ptr.prototype.insertNew=function(a){var $ptr,a,b,c,d,e;b=this;if(a>=(b.sparse.$length>>>0)){return;}(c=b.sparse,((a<0||a>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+a]=b.size));(d=b.dense,e=b.size,((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]=a));b.size=b.size+(1)>>>0;};AA.prototype.insertNew=function(a){return this.$val.insertNew(a);};AB=function(a){var $ptr,a,b;b=BW.nil;b=new AA.ptr($makeSlice(BJ,a),$makeSlice(BJ,a),0,0);return b;};AE=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);e=[e];f=[f];g=[g];h=[h];i=[i];j=[j];k=a.$get().$length;l=b.$get().$length;if(!(((k&1)===0))||!(((l&1)===0))){$panic(new $String("mergeRuneSets odd length []rune"));}m=0;n=0;f[0]=m;j[0]=n;g[0]=$makeSlice(BI,0);h[0]=$makeSlice(BJ,0);i[0]=true;$deferred.push([(function(e,f,g,h,i,j){return function(){var $ptr;if(!i[0]){g[0]=BI.nil;h[0]=BJ.nil;}};})(e,f,g,h,i,j),[]]);e[0]=-1;o=(function(e,f,g,h,i,j){return function(o,p,q){var $ptr,o,p,q,r,s,t,u,v,w;if(e[0]>0&&(r=p.$get(),s=o.$get(),((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s]))<=((e[0]<0||e[0]>=g[0].$length)?($throwRuntimeError("index out of range"),undefined):g[0].$array[g[0].$offset+e[0]])){return false;}g[0]=$append(g[0],(t=p.$get(),u=o.$get(),((u<0||u>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+u])),(v=p.$get(),w=o.$get()+1>>0,((w<0||w>=v.$length)?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+w])));o.$set(o.$get()+(2)>>0);e[0]=e[0]+(2)>>0;h[0]=$append(h[0],q);return true;};})(e,f,g,h,i,j);case 1:if(!(f[0]<k||j[0]<l)){$s=2;continue;}if(j[0]>=l){$s=4;continue;}if(f[0]>=k){$s=5;continue;}if((p=b.$get(),((j[0]<0||j[0]>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+j[0]]))<(q=a.$get(),((f[0]<0||f[0]>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+f[0]]))){$s=6;continue;}$s=7;continue;case 4:r=o((f.$ptr||(f.$ptr=new BU(function(){return this.$target[0];},function($v){this.$target[0]=$v;},f))),a,c);$s=9;case 9:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}i[0]=r;$s=8;continue;case 5:s=o((j.$ptr||(j.$ptr=new BU(function(){return this.$target[0];},function($v){this.$target[0]=$v;},j))),b,d);$s=10;case 10:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}i[0]=s;$s=8;continue;case 6:t=o((j.$ptr||(j.$ptr=new BU(function(){return this.$target[0];},function($v){this.$target[0]=$v;},j))),b,d);$s=11;case 11:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}i[0]=t;$s=8;continue;case 7:u=o((f.$ptr||(f.$ptr=new BU(function(){return this.$target[0];},function($v){this.$target[0]=$v;},f))),a,c);$s=12;case 12:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}i[0]=u;case 8:case 3:if(!i[0]){$s=-1;return[AC,AD];}$s=1;continue;case 2:$s=-1;return[g[0],h[0]];}return;}}catch(err){$err=err;$s=-1;return[BI.nil,BJ.nil];}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:AE};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};AF=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j;c=b.Inst;d=0;while(true){if(!(d<c.$length)){break;}e=d;f=$clone(((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]),A.Inst);g=f.Op;if((g===(0))||(g===(1))||(g===(7))){}else if((g===(2))||(g===(3))||(g===(6))||(g===(4))||(g===(5))){(h=a.Inst,((e<0||e>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+e])).Next=BJ.nil;}else if((g===(8))||(g===(9))||(g===(10))){(i=a.Inst,((e<0||e>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+e])).Next=BJ.nil;W.copy((j=a.Inst,((e<0||e>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+e])),new W.ptr($clone(f,A.Inst),BJ.nil));}d++;}};AG=function(a){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;b=new V.ptr(BX.nil,a.Start,a.NumCap);c=a.Inst;d=0;while(true){if(!(d<c.$length)){break;}e=$clone(((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]),A.Inst);b.Inst=$append(b.Inst,new W.ptr($clone(e,A.Inst),BJ.nil));d++;}f=b.Inst;g=0;while(true){if(!(g<f.$length)){break;}h=g;j=(i=b.Inst,((h<0||h>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+h])).Inst.Op;if((j===(0))||(j===(1))){m=(k=(l=b.Inst,((h<0||h>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+h])),(k.$ptr_Out||(k.$ptr_Out=new BY(function(){return this.$target.Inst.Out;},function($v){this.$target.Inst.Out=$v;},k))));p=(n=(o=b.Inst,((h<0||h>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+h])),(n.$ptr_Arg||(n.$ptr_Arg=new BY(function(){return this.$target.Inst.Arg;},function($v){this.$target.Inst.Arg=$v;},n))));s=$clone((q=b.Inst,r=p.$get(),((r<0||r>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+r])),W);if(!((s.Inst.Op===0)||(s.Inst.Op===1))){t=m;u=p;p=t;m=u;W.copy(s,(v=b.Inst,w=p.$get(),((w<0||w>=v.$length)?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+w])));if(!((s.Inst.Op===0)||(s.Inst.Op===1))){g++;continue;}}z=$clone((x=b.Inst,y=m.$get(),((y<0||y>=x.$length)?($throwRuntimeError("index out of range"),undefined):x.$array[x.$offset+y])),W);if((z.Inst.Op===0)||(z.Inst.Op===1)){g++;continue;}ad=(aa=(ab=b.Inst,ac=p.$get(),((ac<0||ac>=ab.$length)?($throwRuntimeError("index out of range"),undefined):ab.$array[ab.$offset+ac])),(aa.$ptr_Out||(aa.$ptr_Out=new BY(function(){return this.$target.Inst.Out;},function($v){this.$target.Inst.Out=$v;},aa))));ah=(ae=(af=b.Inst,ag=p.$get(),((ag<0||ag>=af.$length)?($throwRuntimeError("index out of range"),undefined):af.$array[af.$offset+ag])),(ae.$ptr_Arg||(ae.$ptr_Arg=new BY(function(){return this.$target.Inst.Arg;},function($v){this.$target.Inst.Arg=$v;},ae))));ai=false;if(s.Inst.Out===(h>>>0)){ai=true;}else if(s.Inst.Arg===(h>>>0)){ai=true;aj=ah;ak=ad;ad=aj;ah=ak;}if(ai){ad.$set(m.$get());}if(m.$get()===ad.$get()){p.$set(ah.$get());}}else{g++;continue;}g++;}return b;};AH.prototype.Len=function(){var $ptr,a;a=this;return a.$length;};$ptrType(AH).prototype.Len=function(){return this.$get().Len();};AH.prototype.Less=function(a,b){var $ptr,a,b,c;c=this;return((a<0||a>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+a])<((b<0||b>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+b]);};$ptrType(AH).prototype.Less=function(a,b){return this.$get().Less(a,b);};AH.prototype.Swap=function(a,b){var $ptr,a,b,c,d,e;c=this;d=((b<0||b>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+b]);e=((a<0||a>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+a]);((a<0||a>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+a]=d);((b<0||b>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+b]=e);};$ptrType(AH).prototype.Swap=function(a,b){return this.$get().Swap(a,b);};AK=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];b=[b];c=[c];d=[d];e=[e];if(a[0].Inst.$length>=1000){$s=-1;return AL;}c[0]=AB(a[0].Inst.$length);e[0]=AB(a[0].Inst.$length);b[0]=$throwNilPointerError;d[0]=$makeSlice(BZ,a[0].Inst.$length);b[0]=(function(a,b,c,d,e){return function $b(f,g){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;ay=$f.ay;az=$f.az;ba=$f.ba;bb=$f.bb;bc=$f.bc;bd=$f.bd;be=$f.be;bf=$f.bf;bg=$f.bg;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:h=false;h=true;j=(i=a[0].Inst,((f<0||f>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+f]));if(e[0].contains(f)){$s=-1;return h;}e[0].insert(f);k=j.Inst.Op;if((k===(0))||(k===(1))){$s=2;continue;}if((k===(2))||(k===(6))){$s=3;continue;}if(k===(3)){$s=4;continue;}if((k===(4))||(k===(5))){$s=5;continue;}if(k===(7)){$s=6;continue;}if(k===(8)){$s=7;continue;}if(k===(9)){$s=8;continue;}if(k===(10)){$s=9;continue;}$s=10;continue;case 2:m=b[0](j.Inst.Out,g);$s=12;case 12:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}if(!(m)){l=false;$s=11;continue s;}n=b[0](j.Inst.Arg,g);$s=13;case 13:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}l=n;case 11:h=l;p=(o=g[$Uint32.keyFor(j.Inst.Out)],o!==undefined?o.v:false);r=(q=g[$Uint32.keyFor(j.Inst.Arg)],q!==undefined?q.v:false);if(p&&r){h=false;$s=1;continue;}if(r){s=j.Inst.Arg;t=j.Inst.Out;j.Inst.Out=s;j.Inst.Arg=t;u=r;v=p;p=u;r=v;}if(p){w=f;(g||$throwRuntimeError("assignment to entry in nil map"))[$Uint32.keyFor(w)]={k:w,v:true};j.Inst.Op=1;}y=AE($indexPtr(d[0].$array,d[0].$offset+j.Inst.Out,CA),$indexPtr(d[0].$array,d[0].$offset+j.Inst.Arg,CA),j.Inst.Out,j.Inst.Arg);$s=14;case 14:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}x=y;((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]=x[0]);j.Next=x[1];if(j.Next.$length>0&&((z=j.Next,(0>=z.$length?($throwRuntimeError("index out of range"),undefined):z.$array[z.$offset+0]))===4294967295)){h=false;$s=1;continue;}$s=10;continue;case 3:aa=b[0](j.Inst.Out,g);$s=15;case 15:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}h=aa;ab=f;(g||$throwRuntimeError("assignment to entry in nil map"))[$Uint32.keyFor(ab)]={k:ab,v:(ac=g[$Uint32.keyFor(j.Inst.Out)],ac!==undefined?ac.v:false)};((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]=$appendSlice(new BI([]),(ad=j.Inst.Out,((ad<0||ad>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+ad]))));j.Next=new BJ([]);af=(ae=((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]).$length/2,(ae===ae&&ae!==1/0&&ae!==-1/0)?ae>>0:$throwRuntimeError("integer divide by zero"));while(true){if(!(af>=0)){break;}j.Next=$append(j.Next,j.Inst.Out);af=af-(1)>>0;}$s=10;continue;case 4:ag=b[0](j.Inst.Out,g);$s=16;case 16:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}h=ag;ah=f;(g||$throwRuntimeError("assignment to entry in nil map"))[$Uint32.keyFor(ah)]={k:ah,v:(ai=g[$Uint32.keyFor(j.Inst.Out)],ai!==undefined?ai.v:false)};((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]=$appendSlice(new BI([]),(aj=j.Inst.Out,((aj<0||aj>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+aj]))));j.Next=new BJ([]);al=(ak=((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]).$length/2,(ak===ak&&ak!==1/0&&ak!==-1/0)?ak>>0:$throwRuntimeError("integer divide by zero"));while(true){if(!(al>=0)){break;}j.Next=$append(j.Next,j.Inst.Out);al=al-(1)>>0;}$s=10;continue;case 5:am=f;(g||$throwRuntimeError("assignment to entry in nil map"))[$Uint32.keyFor(am)]={k:am,v:j.Inst.Op===4};$s=1;continue;$s=10;continue;case 6:an=f;(g||$throwRuntimeError("assignment to entry in nil map"))[$Uint32.keyFor(an)]={k:an,v:false};if(j.Next.$length>0){$s=1;continue;}c[0].insert(j.Inst.Out);if(j.Inst.Rune.$length===0){((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]=new BI([]));j.Next=new BJ([j.Inst.Out]);$s=1;continue;}ao=$makeSlice(BI,0);if((j.Inst.Rune.$length===1)&&!(((((j.Inst.Arg<<16>>>16)&1)>>>0)===0))){$s=17;continue;}$s=18;continue;case 17:aq=(ap=j.Inst.Rune,(0>=ap.$length?($throwRuntimeError("index out of range"),undefined):ap.$array[ap.$offset+0]));ao=$append(ao,aq,aq);ar=E.SimpleFold(aq);while(true){if(!(!((ar===aq)))){break;}ao=$append(ao,ar,ar);ar=E.SimpleFold(ar);}$r=D.Sort($subslice(new AH(ao.$array),ao.$offset,ao.$offset+ao.$length));$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=19;continue;case 18:ao=$appendSlice(ao,j.Inst.Rune);case 19:((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]=ao);j.Next=new BJ([]);at=(as=((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]).$length/2,(as===as&&as!==1/0&&as!==-1/0)?as>>0:$throwRuntimeError("integer divide by zero"));while(true){if(!(at>=0)){break;}j.Next=$append(j.Next,j.Inst.Out);at=at-(1)>>0;}j.Inst.Op=7;$s=10;continue;case 7:au=f;(g||$throwRuntimeError("assignment to entry in nil map"))[$Uint32.keyFor(au)]={k:au,v:false};if(j.Next.$length>0){$s=1;continue;}c[0].insert(j.Inst.Out);av=new BI([]);if(!(((((j.Inst.Arg<<16>>>16)&1)>>>0)===0))){$s=21;continue;}$s=22;continue;case 21:ax=(aw=j.Inst.Rune,(0>=aw.$length?($throwRuntimeError("index out of range"),undefined):aw.$array[aw.$offset+0]));av=$append(av,ax,ax);ay=E.SimpleFold(ax);while(true){if(!(!((ay===ax)))){break;}av=$append(av,ay,ay);ay=E.SimpleFold(ay);}$r=D.Sort($subslice(new AH(av.$array),av.$offset,av.$offset+av.$length));$s=24;case 24:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=23;continue;case 22:av=$append(av,(az=j.Inst.Rune,(0>=az.$length?($throwRuntimeError("index out of range"),undefined):az.$array[az.$offset+0])),(ba=j.Inst.Rune,(0>=ba.$length?($throwRuntimeError("index out of range"),undefined):ba.$array[ba.$offset+0])));case 23:((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]=av);j.Next=new BJ([]);bc=(bb=((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]).$length/2,(bb===bb&&bb!==1/0&&bb!==-1/0)?bb>>0:$throwRuntimeError("integer divide by zero"));while(true){if(!(bc>=0)){break;}j.Next=$append(j.Next,j.Inst.Out);bc=bc-(1)>>0;}j.Inst.Op=7;$s=10;continue;case 8:bd=f;(g||$throwRuntimeError("assignment to entry in nil map"))[$Uint32.keyFor(bd)]={k:bd,v:false};if(j.Next.$length>0){$s=1;continue;}c[0].insert(j.Inst.Out);((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]=$appendSlice(new BI([]),AJ));j.Next=new BJ([j.Inst.Out]);$s=10;continue;case 9:be=f;(g||$throwRuntimeError("assignment to entry in nil map"))[$Uint32.keyFor(be)]={k:be,v:false};if(j.Next.$length>0){$s=1;continue;}c[0].insert(j.Inst.Out);((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]=$appendSlice(new BI([]),AI));j.Next=new BJ([]);bg=(bf=((f<0||f>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+f]).$length/2,(bf===bf&&bf!==1/0&&bf!==-1/0)?bf>>0:$throwRuntimeError("integer divide by zero"));while(true){if(!(bg>=0)){break;}j.Next=$append(j.Next,j.Inst.Out);bg=bg-(1)>>0;}case 10:case 1:$s=-1;return h;}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.ay=ay;$f.az=az;$f.ba=ba;$f.bb=bb;$f.bc=bc;$f.bd=bd;$f.be=be;$f.bf=bf;$f.bg=bg;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};})(a,b,c,d,e);c[0].clear();c[0].insert((a[0].Start>>>0));g=(f=a[0].Inst.$length,((f<0||f>2147483647)?$throwRuntimeError("makemap: size out of range"):{}));case 1:if(!(!c[0].empty())){$s=2;continue;}e[0].clear();h=c[0].next();i=b[0](h,g);$s=5;case 5:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}if(!i){$s=3;continue;}$s=4;continue;case 3:a[0]=AL;$s=2;continue;case 4:$s=1;continue;case 2:if(!(a[0]===AL)){j=a[0].Inst;k=0;while(true){if(!(k<j.$length)){break;}l=k;(m=a[0].Inst,((l<0||l>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+l])).Inst.Rune=((l<0||l>=d[0].$length)?($throwRuntimeError("index out of range"),undefined):d[0].$array[d[0].$offset+l]);k++;}}$s=-1;return a[0];}return;}if($f===undefined){$f={$blk:AK};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};AM=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=BK.nil;if(a.Start===0){b=AL;$s=-1;return b;}if(!(((c=a.Inst,d=a.Start,((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d])).Op===3))||!((((((e=a.Inst,f=a.Start,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f])).Arg<<24>>>24)&4)>>>0)===4))){b=AL;$s=-1;return b;}g=a.Inst;h=0;case 1:if(!(h<g.$length)){$s=2;continue;}i=$clone(((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h]),A.Inst);l=(j=a.Inst,k=i.Out,((k<0||k>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+k])).Op;m=i.Op;if((m===(0))||(m===(1))){if((l===4)||((n=a.Inst,o=i.Arg,((o<0||o>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+o])).Op===4)){b=AL;$s=-1;return b;}}else if(m===(3)){if(l===4){if((((i.Arg<<24>>>24)&8)>>>0)===8){h++;$s=1;continue;}b=AL;$s=-1;return b;}}else if(l===4){b=AL;$s=-1;return b;}h++;$s=1;continue;case 2:b=AG(a);p=AK(b);$s=3;case 3:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}b=p;if(!(b===AL)){AF(b,a);}b=b;$s=-1;return b;}return;}if($f===undefined){$f={$blk:AM};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};AN.ptr.prototype.String=function(){var $ptr,a;a=this;return a.regexpRO.expr;};AN.prototype.String=function(){return this.$val.String();};AN.ptr.prototype.Copy=function(){var $ptr,a;a=this;return new AN.ptr($clone(a.regexpRO,AO),new H.Mutex.ptr(false),CD.nil);};AN.prototype.Copy=function(){return this.$val.Copy();};AP=function(a){var $ptr,a,b,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=AR(a,212,false);$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=-1;return b;}return;}if($f===undefined){$f={$blk:AP};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Compile=AP;AN.ptr.prototype.Longest=function(){var $ptr,a;a=this;a.regexpRO.longest=true;};AN.prototype.Longest=function(){return this.$val.Longest();};AR=function(a,b,c){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=A.Parse(a,b);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;f=d[0];g=d[1];if(!($interfaceIsEqual(g,$ifaceNil))){$s=-1;return[BP.nil,g];}h=f.MaxCap();i=f.CapNames();f=f.Simplify();j=A.Compile(f);k=j[0];g=j[1];if(!($interfaceIsEqual(g,$ifaceNil))){$s=-1;return[BP.nil,g];}l=AM(k);$s=2;case 2:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=new AN.ptr(new AO.ptr(a,k,l,"",BL.nil,false,0,0,k.StartCond(),h,i,c),new H.Mutex.ptr(false),CD.nil);if(m.regexpRO.onepass===AL){n=k.Prefix();m.regexpRO.prefix=n[0];m.regexpRO.prefixComplete=n[1];}else{o=X(k);m.regexpRO.prefix=o[0];m.regexpRO.prefixComplete=o[1];m.regexpRO.prefixEnd=o[2];}if(!(m.regexpRO.prefix==="")){m.regexpRO.prefixBytes=new BL($stringToBytes(m.regexpRO.prefix));p=I.DecodeRuneInString(m.regexpRO.prefix);m.regexpRO.prefixRune=p[0];}$s=-1;return[m,$ifaceNil];}return;}if($f===undefined){$f={$blk:AR};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};AN.ptr.prototype.get=function(){var $ptr,a,b,c,d,e,f;a=this;a.mu.Lock();b=a.machine.$length;if(b>0){e=(c=a.machine,d=b-1>>0,((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]));a.machine=$subslice(a.machine,0,(b-1>>0));a.mu.Unlock();return e;}a.mu.Unlock();f=T(a.regexpRO.prog,a.regexpRO.onepass);f.re=a;return f;};AN.prototype.get=function(){return this.$val.get();};AN.ptr.prototype.put=function(a){var $ptr,a,b;b=this;b.mu.Lock();b.machine=$append(b.machine,a);b.mu.Unlock();};AN.prototype.put=function(a){return this.$val.put(a);};AS=function(a){var $ptr,a,b,c,d,e,f,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=AP(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=b[0];e=b[1];if(!($interfaceIsEqual(e,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:f=e.Error();$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$panic(new $String("regexp: Compile("+AU(a)+"): "+f));case 3:$s=-1;return d;}return;}if($f===undefined){$f={$blk:AS};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};$pkg.MustCompile=AS;AU=function(a){var $ptr,a;if(F.CanBackquote(a)){return"`"+a+"`";}return F.Quote(a);};AN.ptr.prototype.NumSubexp=function(){var $ptr,a;a=this;return a.regexpRO.numSubexp;};AN.prototype.NumSubexp=function(){return this.$val.NumSubexp();};AN.ptr.prototype.SubexpNames=function(){var $ptr,a;a=this;return a.regexpRO.subexpNames;};AN.prototype.SubexpNames=function(){return this.$val.SubexpNames();};AW.ptr.prototype.step=function(a){var $ptr,a,b,c;b=this;if(a<b.str.length){c=b.str.charCodeAt(a);if(c<128){return[(c>>0),1];}return I.DecodeRuneInString($substring(b.str,a));}return[-1,0];};AW.prototype.step=function(a){return this.$val.step(a);};AW.ptr.prototype.canCheckPrefix=function(){var $ptr,a;a=this;return true;};AW.prototype.canCheckPrefix=function(){return this.$val.canCheckPrefix();};AW.ptr.prototype.hasPrefix=function(a){var $ptr,a,b;b=this;return G.HasPrefix(b.str,a.regexpRO.prefix);};AW.prototype.hasPrefix=function(a){return this.$val.hasPrefix(a);};AW.ptr.prototype.index=function(a,b){var $ptr,a,b,c;c=this;return G.Index($substring(c.str,b),a.regexpRO.prefix);};AW.prototype.index=function(a,b){return this.$val.index(a,b);};AW.ptr.prototype.context=function(a){var $ptr,a,b,c,d,e,f,g,h;b=this;c=-1;d=-1;e=c;f=d;if(a>0&&a<=b.str.length){g=I.DecodeLastRuneInString($substring(b.str,0,a));e=g[0];}if(a<b.str.length){h=I.DecodeRuneInString($substring(b.str,a));f=h[0];}return A.EmptyOpContext(e,f);};AW.prototype.context=function(a){return this.$val.context(a);};AX.ptr.prototype.step=function(a){var $ptr,a,b,c,d;b=this;if(a<b.str.$length){d=(c=b.str,((a<0||a>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+a]));if(d<128){return[(d>>0),1];}return I.DecodeRune($subslice(b.str,a));}return[-1,0];};AX.prototype.step=function(a){return this.$val.step(a);};AX.ptr.prototype.canCheckPrefix=function(){var $ptr,a;a=this;return true;};AX.prototype.canCheckPrefix=function(){return this.$val.canCheckPrefix();};AX.ptr.prototype.hasPrefix=function(a){var $ptr,a,b;b=this;return C.HasPrefix(b.str,a.regexpRO.prefixBytes);};AX.prototype.hasPrefix=function(a){return this.$val.hasPrefix(a);};AX.ptr.prototype.index=function(a,b){var $ptr,a,b,c;c=this;return C.Index($subslice(c.str,b),a.regexpRO.prefixBytes);};AX.prototype.index=function(a,b){return this.$val.index(a,b);};AX.ptr.prototype.context=function(a){var $ptr,a,b,c,d,e,f,g,h;b=this;c=-1;d=-1;e=c;f=d;if(a>0&&a<=b.str.$length){g=I.DecodeLastRune($subslice(b.str,0,a));e=g[0];}if(a<b.str.$length){h=I.DecodeRune($subslice(b.str,a));f=h[0];}return A.EmptyOpContext(e,f);};AX.prototype.context=function(a){return this.$val.context(a);};AY.ptr.prototype.step=function(a){var $ptr,a,b,c,d,e,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;if(!b.atEOT&&!((a===b.pos))){$s=-1;return[-1,0];}d=b.r.ReadRune();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;e=c[0];f=c[1];g=c[2];if(!($interfaceIsEqual(g,$ifaceNil))){b.atEOT=true;$s=-1;return[-1,0];}b.pos=b.pos+(f)>>0;$s=-1;return[e,f];}return;}if($f===undefined){$f={$blk:AY.ptr.prototype.step};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};AY.prototype.step=function(a){return this.$val.step(a);};AY.ptr.prototype.canCheckPrefix=function(){var $ptr,a;a=this;return false;};AY.prototype.canCheckPrefix=function(){return this.$val.canCheckPrefix();};AY.ptr.prototype.hasPrefix=function(a){var $ptr,a,b;b=this;return false;};AY.prototype.hasPrefix=function(a){return this.$val.hasPrefix(a);};AY.ptr.prototype.index=function(a,b){var $ptr,a,b,c;c=this;return-1;};AY.prototype.index=function(a,b){return this.$val.index(a,b);};AY.ptr.prototype.context=function(a){var $ptr,a,b;b=this;return 0;};AY.prototype.context=function(a){return this.$val.context(a);};AN.ptr.prototype.LiteralPrefix=function(){var $ptr,a,b,c,d,e;a="";b=false;c=this;d=c.regexpRO.prefix;e=c.regexpRO.prefixComplete;a=d;b=e;return[a,b];};AN.prototype.LiteralPrefix=function(){return this.$val.LiteralPrefix();};AN.ptr.prototype.MatchReader=function(a){var $ptr,a,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=b.doMatch(a,BL.nil,"");$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=-1;return c;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.MatchReader};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.MatchReader=function(a){return this.$val.MatchReader(a);};AN.ptr.prototype.MatchString=function(a){var $ptr,a,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=b.doMatch($ifaceNil,BL.nil,a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=-1;return c;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.MatchString};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.MatchString=function(a){return this.$val.MatchString(a);};AN.ptr.prototype.Match=function(a){var $ptr,a,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=b.doMatch($ifaceNil,a,"");$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=-1;return c;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.Match};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.Match=function(a){return this.$val.Match(a);};BA=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=false;d=$ifaceNil;f=AP(a);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[0];d=e[1];if(!($interfaceIsEqual(d,$ifaceNil))){h=false;i=d;c=h;d=i;$s=-1;return[c,d];}k=g.MatchString(b);$s=2;case 2:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=$ifaceNil;c=j;d=l;$s=-1;return[c,d];}return;}if($f===undefined){$f={$blk:BA};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};$pkg.MatchString=BA;AN.ptr.prototype.ReplaceAllString=function(a,b){var $ptr,a,b,c,d,e,f,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];b=[b];c=[c];c[0]=this;d=2;if(G.Contains(b[0],"$")){d=$imul(2,((c[0].regexpRO.numSubexp+1>>0)));}e=c[0].replaceAll(BL.nil,a[0],d,(function(a,b,c){return function(e,f){var $ptr,e,f;return c[0].expand(e,b[0],BL.nil,a[0],f);};})(a,b,c));$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;$s=-1;return $bytesToString(f);}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.ReplaceAllString};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.ReplaceAllString=function(a,b){return this.$val.ReplaceAllString(a,b);};AN.ptr.prototype.ReplaceAllLiteralString=function(a,b){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=[b];c=this;d=c.replaceAll(BL.nil,a,2,(function(b){return function(d,e){var $ptr,d,e;return $appendSlice(d,b[0]);};})(b));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=-1;return $bytesToString(d);}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.ReplaceAllLiteralString};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.ReplaceAllLiteralString=function(a,b){return this.$val.ReplaceAllLiteralString(a,b);};AN.ptr.prototype.ReplaceAllStringFunc=function(a,b){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];b=[b];c=this;d=c.replaceAll(BL.nil,a[0],2,(function(a,b){return function $b(d,e){var $ptr,d,e,f,g,h,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=d;g=b[0]($substring(a[0],(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]),(1>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+1])));$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;$s=-1;return $appendSlice(f,h);}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};})(a,b));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;$s=-1;return $bytesToString(e);}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.ReplaceAllStringFunc};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.ReplaceAllStringFunc=function(a,b){return this.$val.ReplaceAllStringFunc(a,b);};AN.ptr.prototype.replaceAll=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=this;f=0;g=0;h=BL.nil;i=0;if(!(a===BL.nil)){i=a.$length;}else{i=b.length;}if(c>e.regexpRO.prog.NumCap){c=e.regexpRO.prog.NumCap;}j=CE.zero();case 1:if(!(g<=i)){$s=2;continue;}k=e.doExecute($ifaceNil,a,b,g,c,$subslice(new BN(j),0,0));$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;if(l.$length===0){$s=2;continue;}if(!(a===BL.nil)){h=$appendSlice(h,$subslice(a,f,(0>=l.$length?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+0])));}else{h=$appendSlice(h,$substring(b,f,(0>=l.$length?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+0])));}if((1>=l.$length?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+1])>f||((0>=l.$length?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+0])===0)){$s=4;continue;}$s=5;continue;case 4:m=d(h,l);$s=6;case 6:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}h=m;case 5:f=(1>=l.$length?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+1]);n=0;if(!(a===BL.nil)){o=I.DecodeRune($subslice(a,g));n=o[1];}else{p=I.DecodeRuneInString($substring(b,g));n=p[1];}if((g+n>>0)>(1>=l.$length?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+1])){g=g+(n)>>0;}else if((g+1>>0)>(1>=l.$length?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+1])){g=g+(1)>>0;}else{g=(1>=l.$length?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+1]);}$s=1;continue;case 2:if(!(a===BL.nil)){h=$appendSlice(h,$subslice(a,f));}else{h=$appendSlice(h,$substring(b,f));}$s=-1;return h;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.replaceAll};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.replaceAll=function(a,b,c,d){return this.$val.replaceAll(a,b,c,d);};AN.ptr.prototype.ReplaceAll=function(a,b){var $ptr,a,b,c,d,e,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];b=[b];c=[c];d=[d];c[0]=this;e=2;if(C.IndexByte(b[0],36)>=0){e=$imul(2,((c[0].regexpRO.numSubexp+1>>0)));}d[0]="";f=c[0].replaceAll(a[0],"",e,(function(a,b,c,d){return function(f,g){var $ptr,f,g;if(!((d[0].length===b[0].$length))){d[0]=$bytesToString(b[0]);}return c[0].expand(f,d[0],a[0],"",g);};})(a,b,c,d));$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;$s=-1;return g;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.ReplaceAll};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.ReplaceAll=function(a,b){return this.$val.ReplaceAll(a,b);};AN.ptr.prototype.ReplaceAllLiteral=function(a,b){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=[b];c=this;d=c.replaceAll(a,"",2,(function(b){return function(d,e){var $ptr,d,e;return $appendSlice(d,b[0]);};})(b));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=-1;return d;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.ReplaceAllLiteral};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.ReplaceAllLiteral=function(a,b){return this.$val.ReplaceAllLiteral(a,b);};AN.ptr.prototype.ReplaceAllFunc=function(a,b){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];b=[b];c=this;d=c.replaceAll(a[0],"",2,(function(a,b){return function $b(d,e){var $ptr,d,e,f,g,h,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=d;g=b[0]($subslice(a[0],(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]),(1>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+1])));$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;$s=-1;return $appendSlice(f,h);}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};})(a,b));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=-1;return d;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.ReplaceAllFunc};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.ReplaceAllFunc=function(a,b){return this.$val.ReplaceAllFunc(a,b);};AN.ptr.prototype.pad=function(a){var $ptr,a,b,c;b=this;if(a===BN.nil){return BN.nil;}c=$imul(((1+b.regexpRO.numSubexp>>0)),2);while(true){if(!(a.$length<c)){break;}a=$append(a,-1);}return a;};AN.prototype.pad=function(a){return this.$val.pad(a);};AN.ptr.prototype.allMatches=function(a,b,c,d){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=this;f=0;if(b===BL.nil){f=a.length;}else{f=b.$length;}g=0;h=0;i=-1;j=g;k=h;l=i;case 1:if(!(k<c&&j<=f)){$s=2;continue;}m=e.doExecute($ifaceNil,b,a,j,e.regexpRO.prog.NumCap,BN.nil);$s=3;case 3:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=m;if(n.$length===0){$s=2;continue;}o=true;if((1>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+1])===j){if((0>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+0])===l){o=false;}p=0;if(b===BL.nil){q=I.DecodeRuneInString($substring(a,j,f));p=q[1];}else{r=I.DecodeRune($subslice(b,j,f));p=r[1];}if(p>0){j=j+(p)>>0;}else{j=f+1>>0;}}else{j=(1>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+1]);}l=(1>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+1]);if(o){$s=4;continue;}$s=5;continue;case 4:$r=d(e.pad(n));$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}k=k+(1)>>0;case 5:$s=1;continue;case 2:$s=-1;return;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.allMatches};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.allMatches=function(a,b,c,d){return this.$val.allMatches(a,b,c,d);};AN.ptr.prototype.Find=function(a){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=CE.zero();d=b.doExecute($ifaceNil,a,"",0,2,$subslice(new BN(c),0,0));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(e===BN.nil){$s=-1;return BL.nil;}$s=-1;return $subslice(a,(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]),(1>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+1]));}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.Find};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.Find=function(a){return this.$val.Find(a);};AN.ptr.prototype.FindIndex=function(a){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=BN.nil;c=this;d=c.doExecute($ifaceNil,a,"",0,2,BN.nil);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(e===BN.nil){b=BN.nil;$s=-1;return b;}b=$subslice(e,0,2);$s=-1;return b;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindIndex};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindIndex=function(a){return this.$val.FindIndex(a);};AN.ptr.prototype.FindString=function(a){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=CE.zero();d=b.doExecute($ifaceNil,BL.nil,a,0,2,$subslice(new BN(c),0,0));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(e===BN.nil){$s=-1;return"";}$s=-1;return $substring(a,(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]),(1>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+1]));}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindString};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindString=function(a){return this.$val.FindString(a);};AN.ptr.prototype.FindStringIndex=function(a){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=BN.nil;c=this;d=c.doExecute($ifaceNil,BL.nil,a,0,2,BN.nil);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(e===BN.nil){b=BN.nil;$s=-1;return b;}b=$subslice(e,0,2);$s=-1;return b;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindStringIndex};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindStringIndex=function(a){return this.$val.FindStringIndex(a);};AN.ptr.prototype.FindReaderIndex=function(a){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=BN.nil;c=this;d=c.doExecute(a,BL.nil,"",0,2,BN.nil);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(e===BN.nil){b=BN.nil;$s=-1;return b;}b=$subslice(e,0,2);$s=-1;return b;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindReaderIndex};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindReaderIndex=function(a){return this.$val.FindReaderIndex(a);};AN.ptr.prototype.FindSubmatch=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=CF.zero();d=b.doExecute($ifaceNil,a,"",0,b.regexpRO.prog.NumCap,$subslice(new BN(c),0,0));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(e===BN.nil){$s=-1;return CG.nil;}f=$makeSlice(CG,(1+b.regexpRO.numSubexp>>0));g=f;h=0;while(true){if(!(h<g.$length)){break;}i=h;if(($imul(2,i))<e.$length&&(j=$imul(2,i),((j<0||j>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+j]))>=0){((i<0||i>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+i]=$subslice(a,(k=$imul(2,i),((k<0||k>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+k])),(l=($imul(2,i))+1>>0,((l<0||l>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+l]))));}h++;}$s=-1;return f;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindSubmatch};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindSubmatch=function(a){return this.$val.FindSubmatch(a);};AN.ptr.prototype.Expand=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;return e.expand(a,$bytesToString(b),c,"",d);};AN.prototype.Expand=function(a,b,c,d){return this.$val.Expand(a,b,c,d);};AN.ptr.prototype.ExpandString=function(a,b,c,d){var $ptr,a,b,c,d,e;e=this;return e.expand(a,b,BL.nil,c,d);};AN.prototype.ExpandString=function(a,b,c,d){return this.$val.ExpandString(a,b,c,d);};AN.ptr.prototype.expand=function(a,b,c,d,e){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;f=this;while(true){if(!(b.length>0)){break;}g=G.Index(b,"$");if(g<0){break;}a=$appendSlice(a,$substring(b,0,g));b=$substring(b,g);if(b.length>1&&(b.charCodeAt(1)===36)){a=$append(a,36);b=$substring(b,2);continue;}h=BF(b);i=h[0];j=h[1];k=h[2];l=h[3];if(!l){a=$append(a,36);b=$substring(b,1);continue;}b=k;if(j>=0){if((($imul(2,j))+1>>0)<e.$length&&(m=$imul(2,j),((m<0||m>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+m]))>=0){if(!(c===BL.nil)){a=$appendSlice(a,$subslice(c,(n=$imul(2,j),((n<0||n>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+n])),(o=($imul(2,j))+1>>0,((o<0||o>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+o]))));}else{a=$appendSlice(a,$substring(d,(p=$imul(2,j),((p<0||p>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+p])),(q=($imul(2,j))+1>>0,((q<0||q>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+q]))));}}}else{r=f.regexpRO.subexpNames;s=0;while(true){if(!(s<r.$length)){break;}t=s;u=((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s]);if(i===u&&(($imul(2,t))+1>>0)<e.$length&&(v=$imul(2,t),((v<0||v>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+v]))>=0){if(!(c===BL.nil)){a=$appendSlice(a,$subslice(c,(w=$imul(2,t),((w<0||w>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+w])),(x=($imul(2,t))+1>>0,((x<0||x>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+x]))));}else{a=$appendSlice(a,$substring(d,(y=$imul(2,t),((y<0||y>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+y])),(z=($imul(2,t))+1>>0,((z<0||z>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+z]))));}break;}s++;}}}a=$appendSlice(a,b);return a;};AN.prototype.expand=function(a,b,c,d,e){return this.$val.expand(a,b,c,d,e);};BF=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k;b="";c=0;d="";e=false;if(a.length<2||!((a.charCodeAt(0)===36))){return[b,c,d,e];}f=false;if(a.charCodeAt(1)===123){f=true;a=$substring(a,2);}else{a=$substring(a,1);}g=0;while(true){if(!(g<a.length)){break;}h=I.DecodeRuneInString($substring(a,g));i=h[0];j=h[1];if(!E.IsLetter(i)&&!E.IsDigit(i)&&!((i===95))){break;}g=g+(j)>>0;}if(g===0){return[b,c,d,e];}b=$substring(a,0,g);if(f){if(g>=a.length||!((a.charCodeAt(g)===125))){return[b,c,d,e];}g=g+(1)>>0;}c=0;k=0;while(true){if(!(k<b.length)){break;}if(b.charCodeAt(k)<48||57<b.charCodeAt(k)||c>=100000000){c=-1;break;}c=(($imul(c,10))+(b.charCodeAt(k)>>0)>>0)-48>>0;k=k+(1)>>0;}if((b.charCodeAt(0)===48)&&b.length>1){c=-1;}d=$substring(a,g);e=true;return[b,c,d,e];};AN.ptr.prototype.FindSubmatchIndex=function(a){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=b.doExecute($ifaceNil,a,"",0,b.regexpRO.prog.NumCap,BN.nil);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=b.pad(c);$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=-1;return d;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindSubmatchIndex};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindSubmatchIndex=function(a){return this.$val.FindSubmatchIndex(a);};AN.ptr.prototype.FindStringSubmatch=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=CF.zero();d=b.doExecute($ifaceNil,BL.nil,a,0,b.regexpRO.prog.NumCap,$subslice(new BN(c),0,0));$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(e===BN.nil){$s=-1;return CB.nil;}f=$makeSlice(CB,(1+b.regexpRO.numSubexp>>0));g=f;h=0;while(true){if(!(h<g.$length)){break;}i=h;if(($imul(2,i))<e.$length&&(j=$imul(2,i),((j<0||j>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+j]))>=0){((i<0||i>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+i]=$substring(a,(k=$imul(2,i),((k<0||k>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+k])),(l=($imul(2,i))+1>>0,((l<0||l>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+l]))));}h++;}$s=-1;return f;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindStringSubmatch};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindStringSubmatch=function(a){return this.$val.FindStringSubmatch(a);};AN.ptr.prototype.FindStringSubmatchIndex=function(a){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=b.doExecute($ifaceNil,BL.nil,a,0,b.regexpRO.prog.NumCap,BN.nil);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=b.pad(c);$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=-1;return d;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindStringSubmatchIndex};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindStringSubmatchIndex=function(a){return this.$val.FindStringSubmatchIndex(a);};AN.ptr.prototype.FindReaderSubmatchIndex=function(a){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=b.doExecute(a,BL.nil,"",0,b.regexpRO.prog.NumCap,BN.nil);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=b.pad(c);$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=-1;return d;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindReaderSubmatchIndex};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindReaderSubmatchIndex=function(a){return this.$val.FindReaderSubmatchIndex(a);};AN.ptr.prototype.FindAll=function(a,b){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];c=[c];d=this;if(b<0){b=a[0].$length+1>>0;}c[0]=$makeSlice(CG,0,10);$r=d.allMatches("",a[0],b,(function(a,c){return function(e){var $ptr,e;c[0]=$append(c[0],$subslice(a[0],(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]),(1>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+1])));};})(a,c));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(c[0].$length===0){$s=-1;return CG.nil;}$s=-1;return c[0];}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindAll};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindAll=function(a,b){return this.$val.FindAll(a,b);};AN.ptr.prototype.FindAllIndex=function(a,b){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=[c];d=this;if(b<0){b=a.$length+1>>0;}c[0]=$makeSlice(CH,0,10);$r=d.allMatches("",a,b,(function(c){return function(e){var $ptr,e;c[0]=$append(c[0],$subslice(e,0,2));};})(c));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(c[0].$length===0){$s=-1;return CH.nil;}$s=-1;return c[0];}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindAllIndex};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindAllIndex=function(a,b){return this.$val.FindAllIndex(a,b);};AN.ptr.prototype.FindAllString=function(a,b){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];c=[c];d=this;if(b<0){b=a[0].length+1>>0;}c[0]=$makeSlice(CB,0,10);$r=d.allMatches(a[0],BL.nil,b,(function(a,c){return function(e){var $ptr,e;c[0]=$append(c[0],$substring(a[0],(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]),(1>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+1])));};})(a,c));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(c[0].$length===0){$s=-1;return CB.nil;}$s=-1;return c[0];}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindAllString};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindAllString=function(a,b){return this.$val.FindAllString(a,b);};AN.ptr.prototype.FindAllStringIndex=function(a,b){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=[c];d=this;if(b<0){b=a.length+1>>0;}c[0]=$makeSlice(CH,0,10);$r=d.allMatches(a,BL.nil,b,(function(c){return function(e){var $ptr,e;c[0]=$append(c[0],$subslice(e,0,2));};})(c));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(c[0].$length===0){$s=-1;return CH.nil;}$s=-1;return c[0];}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindAllStringIndex};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindAllStringIndex=function(a,b){return this.$val.FindAllStringIndex(a,b);};AN.ptr.prototype.FindAllSubmatch=function(a,b){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];c=[c];d=this;if(b<0){b=a[0].$length+1>>0;}c[0]=$makeSlice(CI,0,10);$r=d.allMatches("",a[0],b,(function(a,c){return function(e){var $ptr,e,f,g,h,i,j,k,l,m;g=$makeSlice(CG,(f=e.$length/2,(f===f&&f!==1/0&&f!==-1/0)?f>>0:$throwRuntimeError("integer divide by zero")));h=g;i=0;while(true){if(!(i<h.$length)){break;}j=i;if((k=$imul(2,j),((k<0||k>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+k]))>=0){((j<0||j>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+j]=$subslice(a[0],(l=$imul(2,j),((l<0||l>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+l])),(m=($imul(2,j))+1>>0,((m<0||m>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+m]))));}i++;}c[0]=$append(c[0],g);};})(a,c));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(c[0].$length===0){$s=-1;return CI.nil;}$s=-1;return c[0];}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindAllSubmatch};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindAllSubmatch=function(a,b){return this.$val.FindAllSubmatch(a,b);};AN.ptr.prototype.FindAllSubmatchIndex=function(a,b){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=[c];d=this;if(b<0){b=a.$length+1>>0;}c[0]=$makeSlice(CH,0,10);$r=d.allMatches("",a,b,(function(c){return function(e){var $ptr,e;c[0]=$append(c[0],e);};})(c));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(c[0].$length===0){$s=-1;return CH.nil;}$s=-1;return c[0];}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindAllSubmatchIndex};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindAllSubmatchIndex=function(a,b){return this.$val.FindAllSubmatchIndex(a,b);};AN.ptr.prototype.FindAllStringSubmatch=function(a,b){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=[a];c=[c];d=this;if(b<0){b=a[0].length+1>>0;}c[0]=$makeSlice(CJ,0,10);$r=d.allMatches(a[0],BL.nil,b,(function(a,c){return function(e){var $ptr,e,f,g,h,i,j,k,l,m;g=$makeSlice(CB,(f=e.$length/2,(f===f&&f!==1/0&&f!==-1/0)?f>>0:$throwRuntimeError("integer divide by zero")));h=g;i=0;while(true){if(!(i<h.$length)){break;}j=i;if((k=$imul(2,j),((k<0||k>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+k]))>=0){((j<0||j>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+j]=$substring(a[0],(l=$imul(2,j),((l<0||l>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+l])),(m=($imul(2,j))+1>>0,((m<0||m>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+m]))));}i++;}c[0]=$append(c[0],g);};})(a,c));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(c[0].$length===0){$s=-1;return CJ.nil;}$s=-1;return c[0];}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindAllStringSubmatch};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindAllStringSubmatch=function(a,b){return this.$val.FindAllStringSubmatch(a,b);};AN.ptr.prototype.FindAllStringSubmatchIndex=function(a,b){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=[c];d=this;if(b<0){b=a.length+1>>0;}c[0]=$makeSlice(CH,0,10);$r=d.allMatches(a,BL.nil,b,(function(c){return function(e){var $ptr,e;c[0]=$append(c[0],e);};})(c));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(c[0].$length===0){$s=-1;return CH.nil;}$s=-1;return c[0];}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.FindAllStringSubmatchIndex};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.FindAllStringSubmatchIndex=function(a,b){return this.$val.FindAllStringSubmatchIndex(a,b);};AN.ptr.prototype.Split=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;if(b===0){$s=-1;return CB.nil;}if(c.regexpRO.expr.length>0&&(a.length===0)){$s=-1;return new CB([""]);}d=c.FindAllStringIndex(a,b);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=$makeSlice(CB,0,e.$length);g=0;h=0;i=e;j=0;while(true){if(!(j<i.$length)){break;}k=((j<0||j>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+j]);if(b>0&&f.$length>=(b-1>>0)){break;}h=(0>=k.$length?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+0]);if(!(((1>=k.$length?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+1])===0))){f=$append(f,$substring(a,g,h));}g=(1>=k.$length?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+1]);j++;}if(!((h===a.length))){f=$append(f,$substring(a,g));}$s=-1;return f;}return;}if($f===undefined){$f={$blk:AN.ptr.prototype.Split};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};AN.prototype.Split=function(a,b){return this.$val.Split(a,b);};BH.methods=[{prop:"reset",name:"reset",pkg:"regexp",typ:$funcType([$Int,$Int],[],false)},{prop:"shouldVisit",name:"shouldVisit",pkg:"regexp",typ:$funcType([$Uint32,$Int],[$Bool],false)},{prop:"push",name:"push",pkg:"regexp",typ:$funcType([$Uint32,$Int,$Int],[],false)}];CC.methods=[{prop:"tryBacktrack",name:"tryBacktrack",pkg:"regexp",typ:$funcType([BH,AV,$Uint32,$Int],[$Bool],false)},{prop:"backtrack",name:"backtrack",pkg:"regexp",typ:$funcType([AV,$Int,$Int,$Int],[$Bool],false)},{prop:"newInputBytes",name:"newInputBytes",pkg:"regexp",typ:$funcType([BL],[AV],false)},{prop:"newInputString",name:"newInputString",pkg:"regexp",typ:$funcType([$String],[AV],false)},{prop:"newInputReader",name:"newInputReader",pkg:"regexp",typ:$funcType([B.RuneReader],[AV],false)},{prop:"init",name:"init",pkg:"regexp",typ:$funcType([$Int],[],false)},{prop:"alloc",name:"alloc",pkg:"regexp",typ:$funcType([BT],[BR],false)},{prop:"match",name:"match",pkg:"regexp",typ:$funcType([AV,$Int],[$Bool],false)},{prop:"clear",name:"clear",pkg:"regexp",typ:$funcType([CK],[],false)},{prop:"step",name:"step",pkg:"regexp",typ:$funcType([CK,CK,$Int,$Int,$Int32,A.EmptyOp],[],false)},{prop:"add",name:"add",pkg:"regexp",typ:$funcType([CK,$Uint32,$Int,BN,A.EmptyOp,BR],[BR],false)},{prop:"onepass",name:"onepass",pkg:"regexp",typ:$funcType([AV,$Int],[$Bool],false)}];BW.methods=[{prop:"empty",name:"empty",pkg:"regexp",typ:$funcType([],[$Bool],false)},{prop:"next",name:"next",pkg:"regexp",typ:$funcType([],[$Uint32],false)},{prop:"clear",name:"clear",pkg:"regexp",typ:$funcType([],[],false)},{prop:"contains",name:"contains",pkg:"regexp",typ:$funcType([$Uint32],[$Bool],false)},{prop:"insert",name:"insert",pkg:"regexp",typ:$funcType([$Uint32],[],false)},{prop:"insertNew",name:"insertNew",pkg:"regexp",typ:$funcType([$Uint32],[],false)}];AH.methods=[{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Less",name:"Less",pkg:"",typ:$funcType([$Int,$Int],[$Bool],false)},{prop:"Swap",name:"Swap",pkg:"",typ:$funcType([$Int,$Int],[],false)}];BP.methods=[{prop:"doMatch",name:"doMatch",pkg:"regexp",typ:$funcType([B.RuneReader,BL,$String],[$Bool],false)},{prop:"doExecute",name:"doExecute",pkg:"regexp",typ:$funcType([B.RuneReader,BL,$String,$Int,$Int,BN],[BN],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Copy",name:"Copy",pkg:"",typ:$funcType([],[BP],false)},{prop:"Longest",name:"Longest",pkg:"",typ:$funcType([],[],false)},{prop:"get",name:"get",pkg:"regexp",typ:$funcType([],[CC],false)},{prop:"put",name:"put",pkg:"regexp",typ:$funcType([CC],[],false)},{prop:"NumSubexp",name:"NumSubexp",pkg:"",typ:$funcType([],[$Int],false)},{prop:"SubexpNames",name:"SubexpNames",pkg:"",typ:$funcType([],[CB],false)},{prop:"LiteralPrefix",name:"LiteralPrefix",pkg:"",typ:$funcType([],[$String,$Bool],false)},{prop:"MatchReader",name:"MatchReader",pkg:"",typ:$funcType([B.RuneReader],[$Bool],false)},{prop:"MatchString",name:"MatchString",pkg:"",typ:$funcType([$String],[$Bool],false)},{prop:"Match",name:"Match",pkg:"",typ:$funcType([BL],[$Bool],false)},{prop:"ReplaceAllString",name:"ReplaceAllString",pkg:"",typ:$funcType([$String,$String],[$String],false)},{prop:"ReplaceAllLiteralString",name:"ReplaceAllLiteralString",pkg:"",typ:$funcType([$String,$String],[$String],false)},{prop:"ReplaceAllStringFunc",name:"ReplaceAllStringFunc",pkg:"",typ:$funcType([$String,CL],[$String],false)},{prop:"replaceAll",name:"replaceAll",pkg:"regexp",typ:$funcType([BL,$String,$Int,CM],[BL],false)},{prop:"ReplaceAll",name:"ReplaceAll",pkg:"",typ:$funcType([BL,BL],[BL],false)},{prop:"ReplaceAllLiteral",name:"ReplaceAllLiteral",pkg:"",typ:$funcType([BL,BL],[BL],false)},{prop:"ReplaceAllFunc",name:"ReplaceAllFunc",pkg:"",typ:$funcType([BL,CN],[BL],false)},{prop:"pad",name:"pad",pkg:"regexp",typ:$funcType([BN],[BN],false)},{prop:"allMatches",name:"allMatches",pkg:"regexp",typ:$funcType([$String,BL,$Int,CO],[],false)},{prop:"Find",name:"Find",pkg:"",typ:$funcType([BL],[BL],false)},{prop:"FindIndex",name:"FindIndex",pkg:"",typ:$funcType([BL],[BN],false)},{prop:"FindString",name:"FindString",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"FindStringIndex",name:"FindStringIndex",pkg:"",typ:$funcType([$String],[BN],false)},{prop:"FindReaderIndex",name:"FindReaderIndex",pkg:"",typ:$funcType([B.RuneReader],[BN],false)},{prop:"FindSubmatch",name:"FindSubmatch",pkg:"",typ:$funcType([BL],[CG],false)},{prop:"Expand",name:"Expand",pkg:"",typ:$funcType([BL,BL,BL,BN],[BL],false)},{prop:"ExpandString",name:"ExpandString",pkg:"",typ:$funcType([BL,$String,$String,BN],[BL],false)},{prop:"expand",name:"expand",pkg:"regexp",typ:$funcType([BL,$String,BL,$String,BN],[BL],false)},{prop:"FindSubmatchIndex",name:"FindSubmatchIndex",pkg:"",typ:$funcType([BL],[BN],false)},{prop:"FindStringSubmatch",name:"FindStringSubmatch",pkg:"",typ:$funcType([$String],[CB],false)},{prop:"FindStringSubmatchIndex",name:"FindStringSubmatchIndex",pkg:"",typ:$funcType([$String],[BN],false)},{prop:"FindReaderSubmatchIndex",name:"FindReaderSubmatchIndex",pkg:"",typ:$funcType([B.RuneReader],[BN],false)},{prop:"FindAll",name:"FindAll",pkg:"",typ:$funcType([BL,$Int],[CG],false)},{prop:"FindAllIndex",name:"FindAllIndex",pkg:"",typ:$funcType([BL,$Int],[CH],false)},{prop:"FindAllString",name:"FindAllString",pkg:"",typ:$funcType([$String,$Int],[CB],false)},{prop:"FindAllStringIndex",name:"FindAllStringIndex",pkg:"",typ:$funcType([$String,$Int],[CH],false)},{prop:"FindAllSubmatch",name:"FindAllSubmatch",pkg:"",typ:$funcType([BL,$Int],[CI],false)},{prop:"FindAllSubmatchIndex",name:"FindAllSubmatchIndex",pkg:"",typ:$funcType([BL,$Int],[CH],false)},{prop:"FindAllStringSubmatch",name:"FindAllStringSubmatch",pkg:"",typ:$funcType([$String,$Int],[CJ],false)},{prop:"FindAllStringSubmatchIndex",name:"FindAllStringSubmatchIndex",pkg:"",typ:$funcType([$String,$Int],[CH],false)},{prop:"Split",name:"Split",pkg:"",typ:$funcType([$String,$Int],[CB],false)}];CP.methods=[{prop:"step",name:"step",pkg:"regexp",typ:$funcType([$Int],[$Int32,$Int],false)},{prop:"canCheckPrefix",name:"canCheckPrefix",pkg:"regexp",typ:$funcType([],[$Bool],false)},{prop:"hasPrefix",name:"hasPrefix",pkg:"regexp",typ:$funcType([BP],[$Bool],false)},{prop:"index",name:"index",pkg:"regexp",typ:$funcType([BP,$Int],[$Int],false)},{prop:"context",name:"context",pkg:"regexp",typ:$funcType([$Int],[A.EmptyOp],false)}];CQ.methods=[{prop:"step",name:"step",pkg:"regexp",typ:$funcType([$Int],[$Int32,$Int],false)},{prop:"canCheckPrefix",name:"canCheckPrefix",pkg:"regexp",typ:$funcType([],[$Bool],false)},{prop:"hasPrefix",name:"hasPrefix",pkg:"regexp",typ:$funcType([BP],[$Bool],false)},{prop:"index",name:"index",pkg:"regexp",typ:$funcType([BP,$Int],[$Int],false)},{prop:"context",name:"context",pkg:"regexp",typ:$funcType([$Int],[A.EmptyOp],false)}];CR.methods=[{prop:"step",name:"step",pkg:"regexp",typ:$funcType([$Int],[$Int32,$Int],false)},{prop:"canCheckPrefix",name:"canCheckPrefix",pkg:"regexp",typ:$funcType([],[$Bool],false)},{prop:"hasPrefix",name:"hasPrefix",pkg:"regexp",typ:$funcType([BP],[$Bool],false)},{prop:"index",name:"index",pkg:"regexp",typ:$funcType([BP,$Int],[$Int],false)},{prop:"context",name:"context",pkg:"regexp",typ:$funcType([$Int],[A.EmptyOp],false)}];J.init("regexp",[{prop:"pc",name:"pc",exported:false,typ:$Uint32,tag:""},{prop:"arg",name:"arg",exported:false,typ:$Int,tag:""},{prop:"pos",name:"pos",exported:false,typ:$Int,tag:""}]);K.init("regexp",[{prop:"prog",name:"prog",exported:false,typ:BM,tag:""},{prop:"end",name:"end",exported:false,typ:$Int,tag:""},{prop:"cap",name:"cap",exported:false,typ:BN,tag:""},{prop:"jobs",name:"jobs",exported:false,typ:BO,tag:""},{prop:"visited",name:"visited",exported:false,typ:BJ,tag:""}]);P.init("regexp",[{prop:"sparse",name:"sparse",exported:false,typ:BJ,tag:""},{prop:"dense",name:"dense",exported:false,typ:BQ,tag:""}]);Q.init("regexp",[{prop:"pc",name:"pc",exported:false,typ:$Uint32,tag:""},{prop:"t",name:"t",exported:false,typ:BR,tag:""}]);R.init("regexp",[{prop:"inst",name:"inst",exported:false,typ:BT,tag:""},{prop:"cap",name:"cap",exported:false,typ:BN,tag:""}]);S.init("regexp",[{prop:"re",name:"re",exported:false,typ:BP,tag:""},{prop:"p",name:"p",exported:false,typ:BM,tag:""},{prop:"op",name:"op",exported:false,typ:BK,tag:""},{prop:"maxBitStateLen",name:"maxBitStateLen",exported:false,typ:$Int,tag:""},{prop:"b",name:"b",exported:false,typ:BH,tag:""},{prop:"q0",name:"q0",exported:false,typ:P,tag:""},{prop:"q1",name:"q1",exported:false,typ:P,tag:""},{prop:"pool",name:"pool",exported:false,typ:BS,tag:""},{prop:"matched",name:"matched",exported:false,typ:$Bool,tag:""},{prop:"matchcap",name:"matchcap",exported:false,typ:BN,tag:""},{prop:"inputBytes",name:"inputBytes",exported:false,typ:AX,tag:""},{prop:"inputString",name:"inputString",exported:false,typ:AW,tag:""},{prop:"inputReader",name:"inputReader",exported:false,typ:AY,tag:""}]);V.init("",[{prop:"Inst",name:"Inst",exported:true,typ:BX,tag:""},{prop:"Start",name:"Start",exported:true,typ:$Int,tag:""},{prop:"NumCap",name:"NumCap",exported:true,typ:$Int,tag:""}]);W.init("",[{prop:"Inst",name:"",exported:true,typ:A.Inst,tag:""},{prop:"Next",name:"Next",exported:true,typ:BJ,tag:""}]);AA.init("regexp",[{prop:"sparse",name:"sparse",exported:false,typ:BJ,tag:""},{prop:"dense",name:"dense",exported:false,typ:BJ,tag:""},{prop:"size",name:"size",exported:false,typ:$Uint32,tag:""},{prop:"nextIndex",name:"nextIndex",exported:false,typ:$Uint32,tag:""}]);AH.init($Int32);AN.init("regexp",[{prop:"regexpRO",name:"",exported:false,typ:AO,tag:""},{prop:"mu",name:"mu",exported:false,typ:H.Mutex,tag:""},{prop:"machine",name:"machine",exported:false,typ:CD,tag:""}]);AO.init("regexp",[{prop:"expr",name:"expr",exported:false,typ:$String,tag:""},{prop:"prog",name:"prog",exported:false,typ:BM,tag:""},{prop:"onepass",name:"onepass",exported:false,typ:BK,tag:""},{prop:"prefix",name:"prefix",exported:false,typ:$String,tag:""},{prop:"prefixBytes",name:"prefixBytes",exported:false,typ:BL,tag:""},{prop:"prefixComplete",name:"prefixComplete",exported:false,typ:$Bool,tag:""},{prop:"prefixRune",name:"prefixRune",exported:false,typ:$Int32,tag:""},{prop:"prefixEnd",name:"prefixEnd",exported:false,typ:$Uint32,tag:""},{prop:"cond",name:"cond",exported:false,typ:A.EmptyOp,tag:""},{prop:"numSubexp",name:"numSubexp",exported:false,typ:$Int,tag:""},{prop:"subexpNames",name:"subexpNames",exported:false,typ:CB,tag:""},{prop:"longest",name:"longest",exported:false,typ:$Bool,tag:""}]);AV.init([{prop:"canCheckPrefix",name:"canCheckPrefix",pkg:"regexp",typ:$funcType([],[$Bool],false)},{prop:"context",name:"context",pkg:"regexp",typ:$funcType([$Int],[A.EmptyOp],false)},{prop:"hasPrefix",name:"hasPrefix",pkg:"regexp",typ:$funcType([BP],[$Bool],false)},{prop:"index",name:"index",pkg:"regexp",typ:$funcType([BP,$Int],[$Int],false)},{prop:"step",name:"step",pkg:"regexp",typ:$funcType([$Int],[$Int32,$Int],false)}]);AW.init("regexp",[{prop:"str",name:"str",exported:false,typ:$String,tag:""}]);AX.init("regexp",[{prop:"str",name:"str",exported:false,typ:BL,tag:""}]);AY.init("regexp",[{prop:"r",name:"r",exported:false,typ:B.RuneReader,tag:""},{prop:"atEOT",name:"atEOT",exported:false,typ:$Bool,tag:""},{prop:"pos",name:"pos",exported:false,typ:$Int,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=C.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}U=BG.zero();L=BH.nil;AC=new BI([]);AD=new BJ([4294967295]);AI=new BI([0,9,11,1114111]);AJ=new BI([0,1114111]);AL=BK.nil;}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["testing"]=(function(){var $pkg={},$init,E,O,J,A,L,K,F,B,I,P,Q,N,G,C,H,M,D,Z,AA,AB,BJ,BK,BL,BM,BN,BO,BP,BQ,BR,BS,BT,BU,BV,BW,BX,BY,BZ,CP,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u;E=$packages["bytes"];O=$packages["errors"];J=$packages["flag"];A=$packages["fmt"];L=$packages["github.com/gopherjs/gopherjs/nosync"];K=$packages["internal/race"];F=$packages["io"];B=$packages["os"];I=$packages["runtime"];P=$packages["runtime/debug"];Q=$packages["runtime/trace"];N=$packages["sort"];G=$packages["strconv"];C=$packages["strings"];H=$packages["sync"];M=$packages["sync/atomic"];D=$packages["time"];$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=E.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=O.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=L.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=K.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=P.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=Q.$init();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=N.$init();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=M.$init();$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}b=J.String("test.bench","","run only benchmarks matching `regexp`");$s=18;case 18:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}Z=b;c=J.Duration("test.benchtime",new D.Duration(0,1000000000),"run each benchmark for duration `d`");$s=19;case 19:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}AA=c;d=J.Bool("test.benchmem",false,"print memory allocations for benchmarks");$s=20;case 20:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}AB=d;e=J.Bool("test.short",false,"run smaller test suite to save time");$s=21;case 21:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}BJ=e;f=J.String("test.outputdir","","write profiles to `dir`");$s=22;case 22:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}BK=f;g=J.Bool("test.v",false,"verbose: print additional output");$s=23;case 23:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}BL=g;h=J.Uint("test.count",1,"run tests and benchmarks `n` times");$s=24;case 24:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}BM=h;i=J.String("test.coverprofile","","write a coverage profile to `file`");$s=25;case 25:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}BN=i;j=J.String("test.run","","run only tests and examples matching `regexp`");$s=26;case 26:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}BO=j;k=J.String("test.memprofile","","write a memory profile to `file`");$s=27;case 27:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}BP=k;l=J.Int("test.memprofilerate",0,"set memory profiling `rate` (see runtime.MemProfileRate)");$s=28;case 28:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}BQ=l;m=J.String("test.cpuprofile","","write a cpu profile to `file`");$s=29;case 29:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}BR=m;n=J.String("test.blockprofile","","write a goroutine blocking profile to `file`");$s=30;case 30:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}BS=n;o=J.Int("test.blockprofilerate",1,"set blocking profile `rate` (see runtime.SetBlockProfileRate)");$s=31;case 31:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}BT=o;p=J.String("test.mutexprofile","","write a mutex contention profile to the named file after execution");$s=32;case 32:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}BU=p;q=J.Int("test.mutexprofilefraction",1,"if >= 0, calls runtime.SetMutexProfileFraction()");$s=33;case 33:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}BV=q;r=J.String("test.trace","","write an execution trace to `file`");$s=34;case 34:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}BW=r;s=J.Duration("test.timeout",new D.Duration(0,0),"fail test binary execution after duration `d` (0 means unlimited)");$s=35;case 35:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}BX=s;t=J.String("test.cpu","","comma-separated `list` of cpu counts to run each test with");$s=36;case 36:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}BY=t;u=J.Int("test.parallel",I.GOMAXPROCS(0),"run at most `n` tests in parallel");$s=37;case 37:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}BZ=u;CP=O.New("testing: unexpected use of func Main");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["text/template"]=(function(){var $pkg={},$init,A,I,B,C,M,J,N,D,E,F,G,O,H,K,L,CT,CU,CV,CW,CX,CY,CZ,DA,DB,DC,DD,DE,DF,DG,DH,DN,Z,AA,AB,AN,AO,BD,BE,BF,BO,BP,BQ,BR,BS,BW,BX,BY,BZ,CA,CB,CC,a,b,c,d,X,AC,AD,AE,AF,AP,AQ,AS,AT,AV,AW,AX,AY,AZ,BA,BB,BC,BH,BI,BJ,BK,BL,BM,BN,BT,BU,BV,CD,CE,CF,CG,CH,CI;A=$packages["bytes"];I=$packages["errors"];B=$packages["fmt"];C=$packages["io"];M=$packages["io/ioutil"];J=$packages["net/url"];N=$packages["path/filepath"];D=$packages["reflect"];E=$packages["runtime"];F=$packages["sort"];G=$packages["strings"];O=$packages["sync"];H=$packages["text/template/parse"];K=$packages["unicode"];L=$packages["unicode/utf8"];CT=$ptrType(D.rtype);CU=$ptrType($error);CV=$ptrType(B.Stringer);CW=$ptrType(D.Value);CX=$sliceType($Uint8);CY=$sliceType(D.Value);CZ=$funcType([D.Value,CY],[D.Value],true);DA=$funcType([D.Value,CY],[D.Value,$error],true);DB=$sliceType($emptyInterface);DC=$funcType([DB],[$String],true);DD=$funcType([$emptyInterface],[$Int,$error],false);DE=$funcType([D.Value],[$Bool],false);DF=$funcType([$String,DB],[$String],true);DG=$funcType([D.Value,CY],[$Bool,$error],true);DH=$funcType([D.Value,D.Value],[$Bool,$error],false);DN=$arrayType($Uint8,64);X=function(e){var $ptr,e,f,g,h,i,j,k,l,m,n,o;f=false;g=false;if(!$clone(e,D.Value).IsValid()){h=false;i=true;f=h;g=i;return[f,g];}j=$clone(e,D.Value).Kind();if((j===(17))||(j===(21))||(j===(23))||(j===(24))){f=$clone(e,D.Value).Len()>0;}else if(j===(1)){f=$clone(e,D.Value).Bool();}else if((j===(15))||(j===(16))){f=!((k=$clone(e,D.Value).Complex(),(k.$real===0&&k.$imag===0)));}else if((j===(18))||(j===(19))||(j===(22))||(j===(20))){f=!$clone(e,D.Value).IsNil();}else if((j===(2))||(j===(3))||(j===(4))||(j===(5))||(j===(6))){f=!((l=$clone(e,D.Value).Int(),(l.$high===0&&l.$low===0)));}else if((j===(13))||(j===(14))){f=!(($clone(e,D.Value).Float()===0));}else if((j===(7))||(j===(8))||(j===(9))||(j===(10))||(j===(11))||(j===(12))){f=!((m=$clone(e,D.Value).Uint(),(m.$high===0&&m.$low===0)));}else if(j===(25)){f=true;}else{return[f,g];}n=f;o=true;f=n;g=o;return[f,g];};AC=function(e){var $ptr,e,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=e.Kind();$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if((g===(18))||(g===(19))||(g===(20))||(g===(21))||(g===(22))||(g===(23))){$s=-1;return true;}else if(g===(25)){$s=-1;return $interfaceIsEqual(e,AB);}case 1:$s=-1;return false;}return;}if($f===undefined){$f={$blk:AC};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};AD=function(e){var $ptr,e,f,g,h,i,j,k,l,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=new D.Value.ptr(CT.nil,0,0);g=false;case 1:if(!(($clone(e,D.Value).Kind()===22)||($clone(e,D.Value).Kind()===20))){$s=2;continue;}if($clone(e,D.Value).IsNil()){h=e;i=true;f=h;g=i;$s=-1;return[f,g];}j=$clone(e,D.Value).Elem();$s=3;case 3:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}e=j;$s=1;continue;case 2:k=e;l=false;f=k;g=l;$s=-1;return[f,g];}return;}if($f===undefined){$f={$blk:AD};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};AE=function(e){var $ptr,e,f,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if(!(($clone(e,D.Value).Kind()===20))){$s=-1;return e;}if($clone(e,D.Value).IsNil()){$s=-1;return new D.Value.ptr(CT.nil,0,0);}f=$clone(e,D.Value).Elem();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$s=-1;return f;}return;}if($f===undefined){$f={$blk:AE};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};AF=function(e){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if($clone(e,D.Value).Kind()===22){$s=1;continue;}$s=2;continue;case 1:g=AD($clone(e,D.Value));$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;e=f[0];case 2:if(!$clone(e,D.Value).IsValid()){$s=-1;return[new $String("<no value>"),true];}i=$clone(e,D.Value).Type().Implements(Z);$s=7;case 7:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}if(!(!i)){h=false;$s=6;continue s;}j=$clone(e,D.Value).Type().Implements(AA);$s=8;case 8:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}h=!j;case 6:if(h){$s=4;continue;}$s=5;continue;case 4:if(!($clone(e,D.Value).CanAddr())){k=false;$s=12;continue s;}m=D.PtrTo($clone(e,D.Value).Type()).Implements(Z);$s=14;case 14:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}if(m){l=true;$s=13;continue s;}n=D.PtrTo($clone(e,D.Value).Type()).Implements(AA);$s=15;case 15:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}l=n;case 13:k=l;case 12:if(k){$s=9;continue;}$s=10;continue;case 9:e=$clone(e,D.Value).Addr();$s=11;continue;case 10:o=$clone(e,D.Value).Kind();if((o===(18))||(o===(19))){$s=-1;return[$ifaceNil,false];}case 11:case 5:p=$clone(e,D.Value).Interface();$s=16;case 16:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}$s=-1;return[p,true];}return;}if($f===undefined){$f={$blk:AF};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};AP=function(e){var $ptr,e,f,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f={};$r=AQ(f,e);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return f;}return;}if($f===undefined){$f={$blk:AP};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};AQ=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=f;h=0;i=$keys(g);case 1:if(!(h<i.length)){$s=2;continue;}j=g[i[h]];if(j===undefined){h++;$s=1;continue;}k=j.k;l=j.v;if(!AT(k)){$s=3;continue;}$s=4;continue;case 3:m=B.Errorf("function name %s is not a valid identifier",new DB([new $String(k)]));$s=5;case 5:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}$panic(m);case 4:n=D.ValueOf(l);$s=6;case 6:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=n;if(!(($clone(o,D.Value).Kind()===19))){$panic(new $String("value for "+k+" not a function"));}p=AS($clone(o,D.Value).Type());$s=9;case 9:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}if(!p){$s=7;continue;}$s=8;continue;case 7:q=new $String(k);r=$clone(o,D.Value).Type().NumOut();$s=10;case 10:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=new $Int(r);t=B.Errorf("can't install method/function %q with %d results",new DB([q,s]));$s=11;case 11:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}$panic(t);case 8:u=k;(e||$throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(u)]={k:u,v:$clone(o,D.Value)};h++;$s=1;continue;case 2:$s=-1;return;}return;}if($f===undefined){$f={$blk:AQ};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.$s=$s;$f.$r=$r;return $f;};AS=function(e){var $ptr,e,f,g,h,i,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=e.NumOut();$s=5;case 5:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}if((f===1)){$s=2;continue;}h=e.NumOut();$s=7;case 7:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}if(!(h===2)){g=false;$s=6;continue s;}i=e.Out(1);$s=8;case 8:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}g=$interfaceIsEqual(i,Z);case 6:if(g){$s=3;continue;}$s=4;continue;case 2:$s=-1;return true;case 3:$s=-1;return true;case 4:case 1:$s=-1;return false;}return;}if($f===undefined){$f={$blk:AS};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};AT=function(e){var $ptr,e,f,g,h,i,j;if(e===""){return false;}f=e;g=0;while(true){if(!(g<f.length)){break;}h=$decodeRune(f,g);i=g;j=h[0];if((j===95)){}else if((i===0)&&!K.IsLetter(j)){return false;}else if(!K.IsLetter(j)&&!K.IsDigit(j)){return false;}g+=h[1];}return true;};AV=function(e,f){var $ptr,e,f,g,h,i,j,k,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if(!$clone(e,D.Value).IsValid()){$s=1;continue;}$s=2;continue;case 1:g=AC(f);$s=5;case 5:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}if(!g){$s=3;continue;}$s=4;continue;case 3:h=B.Errorf("value is nil; should be of type %s",new DB([f]));$s=6;case 6:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),h];case 4:i=D.Zero(f);$s=7;case 7:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}e=i;case 2:j=$clone(e,D.Value).Type().AssignableTo(f);$s=10;case 10:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}if(!j){$s=8;continue;}$s=9;continue;case 8:k=B.Errorf("value has type %s; should be %s",new DB([$clone(e,D.Value).Type(),f]));$s=11;case 11:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),k];case 9:$s=-1;return[e,$ifaceNil];}return;}if($f===undefined){$f={$blk:AV};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};AW=function(e,f){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=AE($clone(e,D.Value));$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if(!$clone(h,D.Value).IsValid()){$s=2;continue;}$s=3;continue;case 2:i=B.Errorf("index of untyped nil",new DB([]));$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),i];case 3:j=f;k=0;case 5:if(!(k<j.$length)){$s=6;continue;}l=((k<0||k>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+k]);m=AE($clone(l,D.Value));$s=7;case 7:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=m;o=false;q=AD($clone(h,D.Value));$s=8;case 8:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;h=p[0];o=p[1];if(o){$s=9;continue;}$s=10;continue;case 9:r=B.Errorf("index of nil pointer",new DB([]));$s=11;case 11:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),r];case 10:s=$clone(h,D.Value).Kind();if((s===(17))||(s===(23))||(s===(24))){$s=13;continue;}if(s===(21)){$s=14;continue;}if(s===(0)){$s=15;continue;}$s=16;continue;case 13:t=new $Int64(0,0);u=$clone(n,D.Value).Kind();if((u===(2))||(u===(3))||(u===(4))||(u===(5))||(u===(6))){$s=19;continue;}if((u===(7))||(u===(8))||(u===(9))||(u===(10))||(u===(11))||(u===(12))){$s=20;continue;}if(u===(0)){$s=21;continue;}$s=22;continue;case 19:t=$clone(n,D.Value).Int();$s=23;continue;case 20:t=(v=$clone(n,D.Value).Uint(),new $Int64(v.$high,v.$low));$s=23;continue;case 21:w=B.Errorf("cannot index slice/array with nil",new DB([]));$s=24;case 24:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),w];case 22:x=B.Errorf("cannot index slice/array with type %s",new DB([$clone(n,D.Value).Type()]));$s=25;case 25:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),x];case 23:case 18:if((t.$high<0||(t.$high===0&&t.$low<0))||(y=new $Int64(0,$clone(h,D.Value).Len()),(t.$high>y.$high||(t.$high===y.$high&&t.$low>=y.$low)))){$s=26;continue;}$s=27;continue;case 26:z=B.Errorf("index out of range: %d",new DB([t]));$s=28;case 28:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),z];case 27:aa=$clone(h,D.Value).Index(((t.$low+((t.$high>>31)*4294967296))>>0));$s=29;case 29:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}h=aa;$s=17;continue;case 14:ac=$clone(n,D.Value);ad=$clone(h,D.Value).Type().Key();$s=30;case 30:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}ae=ad;af=AV(ac,ae);$s=31;case 31:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}ab=af;ag=ab[0];ah=ab[1];if(!($interfaceIsEqual(ah,$ifaceNil))){$s=-1;return[new D.Value.ptr(CT.nil,0,0),ah];}ai=$clone(h,D.Value).MapIndex($clone(ag,D.Value));$s=32;case 32:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}aj=ai;if($clone(aj,D.Value).IsValid()){$s=33;continue;}$s=34;continue;case 33:h=aj;$s=35;continue;case 34:ak=$clone(h,D.Value).Type().Elem();$s=36;case 36:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=D.Zero(ak);$s=37;case 37:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}h=al;case 35:$s=17;continue;case 15:$panic(new $String("unreachable"));$s=17;continue;case 16:am=B.Errorf("can't index item of type %s",new DB([$clone(h,D.Value).Type()]));$s=38;case 38:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),am];case 17:case 12:k++;$s=5;continue;case 6:$s=-1;return[h,$ifaceNil];}return;}if($f===undefined){$f={$blk:AW};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};AX=function(e){var $ptr,e,f,g,h,i,j,k,l,m,n,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=D.ValueOf(e);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if(!$clone(g,D.Value).IsValid()){$s=2;continue;}$s=3;continue;case 2:h=B.Errorf("len of untyped nil",new DB([]));$s=4;case 4:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$s=-1;return[0,h];case 3:j=AD($clone(g,D.Value));$s=5;case 5:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;g=i[0];k=i[1];if(k){$s=6;continue;}$s=7;continue;case 6:l=B.Errorf("len of nil pointer",new DB([]));$s=8;case 8:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}$s=-1;return[0,l];case 7:m=$clone(g,D.Value).Kind();if((m===(17))||(m===(18))||(m===(21))||(m===(23))||(m===(24))){$s=-1;return[$clone(g,D.Value).Len(),$ifaceNil];}n=B.Errorf("len of type %s",new DB([$clone(g,D.Value).Type()]));$s=9;case 9:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$s=-1;return[0,n];}return;}if($f===undefined){$f={$blk:AX};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.$s=$s;$f.$r=$r;return $f;};AY=function(e,f){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=AE($clone(e,D.Value));$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if(!$clone(h,D.Value).IsValid()){$s=2;continue;}$s=3;continue;case 2:i=B.Errorf("call of nil",new DB([]));$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),i];case 3:j=$clone(h,D.Value).Type();k=j.Kind();$s=7;case 7:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}if(!((k===19))){$s=5;continue;}$s=6;continue;case 5:l=B.Errorf("non-function of type %s",new DB([j]));$s=8;case 8:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),l];case 6:m=AS(j);$s=11;case 11:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}if(!m){$s=9;continue;}$s=10;continue;case 9:n=j.NumOut();$s=12;case 12:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=new $Int(n);p=B.Errorf("function called with %d args; should be 1 or 2",new DB([o]));$s=13;case 13:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),p];case 10:q=j.NumIn();$s=14;case 14:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=q;s=$ifaceNil;t=j.IsVariadic();$s=18;case 18:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}if(t){$s=15;continue;}$s=16;continue;case 15:if(f.$length<(r-1>>0)){$s=19;continue;}$s=20;continue;case 19:u=B.Errorf("wrong number of args: got %d want at least %d",new DB([new $Int(f.$length),new $Int((r-1>>0))]));$s=21;case 21:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),u];case 20:v=j.In(r-1>>0);$s=22;case 22:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}w=v.Elem();$s=23;case 23:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}s=w;$s=17;continue;case 16:if(!((f.$length===r))){$s=24;continue;}$s=25;continue;case 24:x=B.Errorf("wrong number of args: got %d want %d",new DB([new $Int(f.$length),new $Int(r)]));$s=26;case 26:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),x];case 25:case 17:y=$makeSlice(CY,f.$length);z=f;aa=0;case 27:if(!(aa<z.$length)){$s=28;continue;}ab=aa;ac=((aa<0||aa>=z.$length)?($throwRuntimeError("index out of range"),undefined):z.$array[z.$offset+aa]);ad=AE($clone(ac,D.Value));$s=29;case 29:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}ae=ad;af=$ifaceNil;ag=j.IsVariadic();$s=33;case 33:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}if(!ag||ab<(r-1>>0)){$s=30;continue;}$s=31;continue;case 30:ah=j.In(ab);$s=34;case 34:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}af=ah;$s=32;continue;case 31:af=s;case 32:ai=$ifaceNil;ak=AV($clone(ae,D.Value),af);$s=35;case 35:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}aj=ak;((ab<0||ab>=y.$length)?($throwRuntimeError("index out of range"),undefined):y.$array[y.$offset+ab]=aj[0]);ai=aj[1];if(!($interfaceIsEqual(ai,$ifaceNil))){$s=36;continue;}$s=37;continue;case 36:al=B.Errorf("arg %d: %s",new DB([new $Int(ab),ai]));$s=38;case 38:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}$s=-1;return[new D.Value.ptr(CT.nil,0,0),al];case 37:aa++;$s=27;continue;case 28:am=$clone(h,D.Value).Call(y);$s=39;case 39:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}an=am;if((an.$length===2)&&!$clone((1>=an.$length?($throwRuntimeError("index out of range"),undefined):an.$array[an.$offset+1]),D.Value).IsNil()){$s=40;continue;}$s=41;continue;case 40:ao=$clone((1>=an.$length?($throwRuntimeError("index out of range"),undefined):an.$array[an.$offset+1]),D.Value).Interface();$s=42;case 42:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}$s=-1;return[(0>=an.$length?($throwRuntimeError("index out of range"),undefined):an.$array[an.$offset+0]),$assertType(ao,$error)];case 41:$s=-1;return[(0>=an.$length?($throwRuntimeError("index out of range"),undefined):an.$array[an.$offset+0]),$ifaceNil];}return;}if($f===undefined){$f={$blk:AY};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};AZ=function(e){var $ptr,e,f,g,h,i,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=AE($clone(e,D.Value));$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=X($clone(g,D.Value));$s=2;case 2:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}f=h;i=f[0];$s=-1;return i;}return;}if($f===undefined){$f={$blk:AZ};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.$s=$s;$f.$r=$r;return $f;};BA=function(e,f){var $ptr,e,f,g,h,i,j,k,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=AZ($clone(e,D.Value));$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}if(!g){$s=1;continue;}$s=2;continue;case 1:$s=-1;return e;case 2:h=f;i=0;case 4:if(!(i<h.$length)){$s=5;continue;}j=i;e=((j<0||j>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+j]);k=AZ($clone(e,D.Value));$s=8;case 8:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}if(!k){$s=6;continue;}$s=7;continue;case 6:$s=5;continue;case 7:i++;$s=4;continue;case 5:$s=-1;return e;}return;}if($f===undefined){$f={$blk:BA};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};BB=function(e,f){var $ptr,e,f,g,h,i,j,k,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=AZ($clone(e,D.Value));$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}if(g){$s=1;continue;}$s=2;continue;case 1:$s=-1;return e;case 2:h=f;i=0;case 4:if(!(i<h.$length)){$s=5;continue;}j=i;e=((j<0||j>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+j]);k=AZ($clone(e,D.Value));$s=8;case 8:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}if(k){$s=6;continue;}$s=7;continue;case 6:$s=5;continue;case 7:i++;$s=4;continue;case 5:$s=-1;return e;}return;}if($f===undefined){$f={$blk:BB};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};BC=function(e){var $ptr,e,f,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=AZ($clone(e,D.Value));$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$s=-1;return!f;}return;}if($f===undefined){$f={$blk:BC};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};BH=function(e){var $ptr,e,f;f=$clone(e,D.Value).Kind();if(f===(1)){return[1,$ifaceNil];}else if((f===(2))||(f===(3))||(f===(4))||(f===(5))||(f===(6))){return[3,$ifaceNil];}else if((f===(7))||(f===(8))||(f===(9))||(f===(10))||(f===(11))||(f===(12))){return[6,$ifaceNil];}else if((f===(13))||(f===(14))){return[4,$ifaceNil];}else if((f===(15))||(f===(16))){return[2,$ifaceNil];}else if(f===(24)){return[5,$ifaceNil];}return[0,BD];};BI=function(e,f){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=AE($clone(e,D.Value));$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;i=BH($clone(h,D.Value));j=i[0];k=i[1];if(!($interfaceIsEqual(k,$ifaceNil))){$s=-1;return[false,k];}if(f.$length===0){$s=-1;return[false,BF];}l=f;m=0;case 2:if(!(m<l.$length)){$s=3;continue;}n=((m<0||m>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+m]);o=AE($clone(n,D.Value));$s=4;case 4:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=o;q=BH($clone(p,D.Value));r=q[0];s=q[1];if(!($interfaceIsEqual(s,$ifaceNil))){$s=-1;return[false,s];}t=false;if(!((j===r))){$s=5;continue;}$s=6;continue;case 5:if((j===3)&&(r===6)){t=(u=$clone(h,D.Value).Int(),(u.$high>0||(u.$high===0&&u.$low>=0)))&&(v=(w=$clone(h,D.Value).Int(),new $Uint64(w.$high,w.$low)),x=$clone(p,D.Value).Uint(),(v.$high===x.$high&&v.$low===x.$low));}else if((j===6)&&(r===3)){t=(y=$clone(p,D.Value).Int(),(y.$high>0||(y.$high===0&&y.$low>=0)))&&(z=$clone(h,D.Value).Uint(),aa=(ab=$clone(p,D.Value).Int(),new $Uint64(ab.$high,ab.$low)),(z.$high===aa.$high&&z.$low===aa.$low));}else{$s=-1;return[false,BE];}$s=7;continue;case 6:ac=j;if(ac===(1)){$s=9;continue;}if(ac===(2)){$s=10;continue;}if(ac===(4)){$s=11;continue;}if(ac===(3)){$s=12;continue;}if(ac===(5)){$s=13;continue;}if(ac===(6)){$s=14;continue;}$s=15;continue;case 9:t=$clone(h,D.Value).Bool()===$clone(p,D.Value).Bool();$s=16;continue;case 10:t=(ad=$clone(h,D.Value).Complex(),ae=$clone(p,D.Value).Complex(),(ad.$real===ae.$real&&ad.$imag===ae.$imag));$s=16;continue;case 11:t=$clone(h,D.Value).Float()===$clone(p,D.Value).Float();$s=16;continue;case 12:t=(af=$clone(h,D.Value).Int(),ag=$clone(p,D.Value).Int(),(af.$high===ag.$high&&af.$low===ag.$low));$s=16;continue;case 13:ah=$clone(h,D.Value).String();$s=17;case 17:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ai=$clone(p,D.Value).String();$s=18;case 18:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}t=ah===ai;$s=16;continue;case 14:t=(aj=$clone(h,D.Value).Uint(),ak=$clone(p,D.Value).Uint(),(aj.$high===ak.$high&&aj.$low===ak.$low));$s=16;continue;case 15:$panic(new $String("invalid kind"));case 16:case 8:case 7:if(t){$s=-1;return[true,$ifaceNil];}m++;$s=2;continue;case 3:$s=-1;return[false,$ifaceNil];}return;}if($f===undefined){$f={$blk:BI};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BJ=function(e,f){var $ptr,e,f,g,h,i,j,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:h=BI($clone(e,D.Value),new CY([$clone(f,D.Value)]));$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;i=g[0];j=g[1];$s=-1;return[!i,j];}return;}if($f===undefined){$f={$blk:BJ};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};BK=function(e,f){var $ptr,aa,ab,ac,ad,ae,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=AE($clone(e,D.Value));$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;i=BH($clone(h,D.Value));j=i[0];k=i[1];if(!($interfaceIsEqual(k,$ifaceNil))){$s=-1;return[false,k];}l=AE($clone(f,D.Value));$s=2;case 2:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=l;n=BH($clone(m,D.Value));o=n[0];k=n[1];if(!($interfaceIsEqual(k,$ifaceNil))){$s=-1;return[false,k];}p=false;if(!((j===o))){$s=3;continue;}$s=4;continue;case 3:if((j===3)&&(o===6)){p=(q=$clone(h,D.Value).Int(),(q.$high<0||(q.$high===0&&q.$low<0)))||(r=(s=$clone(h,D.Value).Int(),new $Uint64(s.$high,s.$low)),t=$clone(m,D.Value).Uint(),(r.$high<t.$high||(r.$high===t.$high&&r.$low<t.$low)));}else if((j===6)&&(o===3)){p=(u=$clone(m,D.Value).Int(),(u.$high>0||(u.$high===0&&u.$low>=0)))&&(v=$clone(h,D.Value).Uint(),w=(x=$clone(m,D.Value).Int(),new $Uint64(x.$high,x.$low)),(v.$high<w.$high||(v.$high===w.$high&&v.$low<w.$low)));}else{$s=-1;return[false,BE];}$s=5;continue;case 4:y=j;if((y===(1))||(y===(2))){$s=7;continue;}if(y===(4)){$s=8;continue;}if(y===(3)){$s=9;continue;}if(y===(5)){$s=10;continue;}if(y===(6)){$s=11;continue;}$s=12;continue;case 7:$s=-1;return[false,BD];case 8:p=$clone(h,D.Value).Float()<$clone(m,D.Value).Float();$s=13;continue;case 9:p=(z=$clone(h,D.Value).Int(),aa=$clone(m,D.Value).Int(),(z.$high<aa.$high||(z.$high===aa.$high&&z.$low<aa.$low)));$s=13;continue;case 10:ab=$clone(h,D.Value).String();$s=14;case 14:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}ac=$clone(m,D.Value).String();$s=15;case 15:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}p=ab<ac;$s=13;continue;case 11:p=(ad=$clone(h,D.Value).Uint(),ae=$clone(m,D.Value).Uint(),(ad.$high<ae.$high||(ad.$high===ae.$high&&ad.$low<ae.$low)));$s=13;continue;case 12:$panic(new $String("invalid kind"));case 13:case 6:case 5:$s=-1;return[p,$ifaceNil];}return;}if($f===undefined){$f={$blk:BK};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};BL=function(e,f){var $ptr,e,f,g,h,i,j,k,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:h=BK($clone(e,D.Value),$clone(f,D.Value));$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;i=g[0];j=g[1];if(i||!($interfaceIsEqual(j,$ifaceNil))){$s=-1;return[i,j];}k=BI($clone(e,D.Value),new CY([$clone(f,D.Value)]));$s=2;case 2:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$s=-1;return k;}return;}if($f===undefined){$f={$blk:BL};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.$s=$s;$f.$r=$r;return $f;};BM=function(e,f){var $ptr,e,f,g,h,i,j,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:h=BL($clone(e,D.Value),$clone(f,D.Value));$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;i=g[0];j=g[1];if(!($interfaceIsEqual(j,$ifaceNil))){$s=-1;return[false,j];}$s=-1;return[!i,$ifaceNil];}return;}if($f===undefined){$f={$blk:BM};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};BN=function(e,f){var $ptr,e,f,g,h,i,j,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:h=BK($clone(e,D.Value),$clone(f,D.Value));$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;i=g[0];j=g[1];if(!($interfaceIsEqual(j,$ifaceNil))){$s=-1;return[false,j];}$s=-1;return[!i,$ifaceNil];}return;}if($f===undefined){$f={$blk:BN};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;};BT=function(e,f){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=0;h=f;i=0;case 1:if(!(i<h.$length)){$s=2;continue;}j=i;k=((i<0||i>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+i]);l=CX.nil;m=k;if(m===(34)){l=BO;}else if(m===(39)){l=BP;}else if(m===(38)){l=BQ;}else if(m===(60)){l=BR;}else if(m===(62)){l=BS;}else{i++;$s=1;continue;}case 3:n=e.Write($subslice(f,g,j));$s=4;case 4:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}n;o=e.Write(l);$s=5;case 5:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}o;g=j+1>>0;i++;$s=1;continue;case 2:p=e.Write($subslice(f,g));$s=6;case 6:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}p;$s=-1;return;}return;}if($f===undefined){$f={$blk:BT};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.$s=$s;$f.$r=$r;return $f;};$pkg.HTMLEscape=BT;BU=function(e){var $ptr,e,f,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=[f];if(!G.ContainsAny(e,"'\"&<>")){$s=-1;return e;}f[0]=new A.Buffer.ptr(CX.nil,0,DN.zero(),0);$r=BT(f[0],new CX($stringToBytes(e)));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return f[0].String();}return;}if($f===undefined){$f={$blk:BU};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};$pkg.HTMLEscapeString=BU;BV=function(e){var $ptr,e,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=CI(e);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=BU(f);$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$s=-1;return g;}return;}if($f===undefined){$f={$blk:BV};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};$pkg.HTMLEscaper=BV;CD=function(e,f){var $ptr,aa,ab,ac,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=0;h=0;case 1:if(!(h<f.$length)){$s=2;continue;}i=((h<0||h>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+h]);if(!CF((i>>0))){$s=3;continue;}$s=4;continue;case 3:h=h+(1)>>0;$s=1;continue;case 4:j=e.Write($subslice(f,g,h));$s=5;case 5:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;if(i<128){$s=6;continue;}$s=7;continue;case 6:k=i;if(k===(92)){$s=10;continue;}if(k===(39)){$s=11;continue;}if(k===(34)){$s=12;continue;}if(k===(60)){$s=13;continue;}if(k===(62)){$s=14;continue;}$s=15;continue;case 10:l=e.Write(BY);$s=17;case 17:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}l;$s=16;continue;case 11:m=e.Write(BZ);$s=18;case 18:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}m;$s=16;continue;case 12:n=e.Write(CA);$s=19;case 19:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}n;$s=16;continue;case 13:o=e.Write(CB);$s=20;case 20:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}o;$s=16;continue;case 14:p=e.Write(CC);$s=21;case 21:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}p;$s=16;continue;case 15:q=e.Write(BW);$s=22;case 22:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}q;r=i>>>4<<24>>>24;s=(i&15)>>>0;t=r;u=s;v=e.Write($subslice(BX,t,(t+1<<24>>>24)));$s=23;case 23:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}v;w=e.Write($subslice(BX,u,(u+1<<24>>>24)));$s=24;case 24:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}w;case 16:case 9:$s=8;continue;case 7:x=L.DecodeRune($subslice(f,h));y=x[0];z=x[1];if(K.IsPrint(y)){$s=25;continue;}$s=26;continue;case 25:aa=e.Write($subslice(f,h,(h+z>>0)));$s=28;case 28:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}aa;$s=27;continue;case 26:ab=B.Fprintf(e,"\\u%04X",new DB([new $Int32(y)]));$s=29;case 29:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}ab;case 27:h=h+((z-1>>0))>>0;case 8:g=h+1>>0;h=h+(1)>>0;$s=1;continue;case 2:ac=e.Write($subslice(f,g));$s=30;case 30:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ac;$s=-1;return;}return;}if($f===undefined){$f={$blk:CD};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$pkg.JSEscape=CD;CE=function(e){var $ptr,e,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=[f];g=G.IndexFunc(e,CF);$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}if(g<0){$s=1;continue;}$s=2;continue;case 1:$s=-1;return e;case 2:f[0]=new A.Buffer.ptr(CX.nil,0,DN.zero(),0);$r=CD(f[0],new CX($stringToBytes(e)));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return f[0].String();}return;}if($f===undefined){$f={$blk:CE};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};$pkg.JSEscapeString=CE;CF=function(e){var $ptr,e,f;f=e;if((f===(92))||(f===(39))||(f===(34))||(f===(60))||(f===(62))){return true;}return e<32||128<=e;};CG=function(e){var $ptr,e,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=CI(e);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=CE(f);$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$s=-1;return g;}return;}if($f===undefined){$f={$blk:CG};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};$pkg.JSEscaper=CG;CH=function(e){var $ptr,e,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=CI(e);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=J.QueryEscape(f);$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$s=-1;return g;}return;}if($f===undefined){$f={$blk:CH};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};$pkg.URLQueryEscaper=CH;CI=function(e){var $ptr,e,f,g,h,i,j,k,l,m,n,o,p,q,r,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=false;g="";if(e.$length===1){h=$assertType((0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]),$String,true);g=h[0];f=h[1];}if(!f){$s=1;continue;}$s=2;continue;case 1:i=e;j=0;case 3:if(!(j<i.$length)){$s=4;continue;}k=j;l=((j<0||j>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+j]);n=D.ValueOf(l);$s=5;case 5:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=AF($clone(n,D.Value));$s=6;case 6:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}m=o;p=m[0];q=m[1];if(q){((k<0||k>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+k]=p);}j++;$s=3;continue;case 4:r=B.Sprint(e);$s=7;case 7:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}g=r;case 2:$s=-1;return g;}return;}if($f===undefined){$f={$blk:CI};}$f.$ptr=$ptr;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.$s=$s;$f.$r=$r;return $f;};$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=M.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=N.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=O.$init();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=K.$init();$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=L.$init();$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}a=D.TypeOf(CU.nil).Elem();$s=16;case 16:if($c){$c=false;a=a.$blk();}if(a&&a.$blk!==undefined){break s;}Z=a;b=D.TypeOf(CV.nil).Elem();$s=17;case 17:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}AA=b;c=D.TypeOf(CW.nil).Elem();$s=18;case 18:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}AB=c;BD=I.New("invalid type for comparison");BE=I.New("incompatible types for comparison");BF=I.New("missing argument for comparison");BO=new CX($stringToBytes("""));BP=new CX($stringToBytes("'"));BQ=new CX($stringToBytes("&"));BR=new CX($stringToBytes("<"));BS=new CX($stringToBytes(">"));BW=new CX($stringToBytes("\\u00"));BX=new CX($stringToBytes("0123456789ABCDEF"));BY=new CX($stringToBytes("\\\\"));BZ=new CX($stringToBytes("\\'"));CA=new CX($stringToBytes("\\\""));CB=new CX($stringToBytes("\\x3C"));CC=new CX($stringToBytes("\\x3E"));AN=$makeMap($String.keyFor,[{k:"and",v:new CZ(BA)},{k:"call",v:new DA(AY)},{k:"html",v:new DC(BV)},{k:"index",v:new DA(AW)},{k:"js",v:new DC(CG)},{k:"len",v:new DD(AX)},{k:"not",v:new DE(BC)},{k:"or",v:new CZ(BB)},{k:"print",v:new DC(B.Sprint)},{k:"printf",v:new DF(B.Sprintf)},{k:"println",v:new DC(B.Sprintln)},{k:"urlquery",v:new DC(CH)},{k:"eq",v:new DG(BI)},{k:"ge",v:new DH(BN)},{k:"gt",v:new DH(BM)},{k:"le",v:new DH(BL)},{k:"lt",v:new DH(BK)},{k:"ne",v:new DH(BJ)}]);d=AP(AN);$s=19;case 19:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}AO=d;}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["github.com/dedis/protobuf"]=(function(){var $pkg={},$init,H,A,B,C,D,L,E,F,M,N,I,J,K,O,G,P,Q,X,Y,Z,AA,AC,AH,AJ,BC,BD,BE,BF,BG,BH,BI,BJ,BK,BL,BM,BN,BO,BP,BQ,BR,BS,BT,BU,BV,BW,BX,BY,BZ,CA,CB,CC,CG,CH,CI,T,U,V,W,AE,AF,AG,AK,AL,AO,a,b,R,S,AD,AI,AM,AN;H=$packages["bytes"];A=$packages["encoding"];B=$packages["encoding/binary"];C=$packages["errors"];D=$packages["fmt"];L=$packages["io"];E=$packages["math"];F=$packages["reflect"];M=$packages["regexp"];N=$packages["sort"];I=$packages["strconv"];J=$packages["strings"];K=$packages["sync"];O=$packages["text/template"];G=$packages["time"];P=$pkg.Constructors=$newType(4,$kindMap,"protobuf.Constructors",true,"github.com/dedis/protobuf",true,null);Q=$pkg.decoder=$newType(0,$kindStruct,"protobuf.decoder",true,"github.com/dedis/protobuf",false,function(nm_){this.$val=this;if(arguments.length===0){this.nm=false;return;}this.nm=nm_;});X=$pkg.Ufixed32=$newType(4,$kindUint32,"protobuf.Ufixed32",true,"github.com/dedis/protobuf",true,null);Y=$pkg.Ufixed64=$newType(8,$kindUint64,"protobuf.Ufixed64",true,"github.com/dedis/protobuf",true,null);Z=$pkg.Sfixed32=$newType(4,$kindInt32,"protobuf.Sfixed32",true,"github.com/dedis/protobuf",true,null);AA=$pkg.Sfixed64=$newType(8,$kindInt64,"protobuf.Sfixed64",true,"github.com/dedis/protobuf",true,null);AC=$pkg.encoder=$newType(0,$kindStruct,"protobuf.encoder",true,"github.com/dedis/protobuf",false,function(Buffer_){this.$val=this;if(arguments.length===0){this.Buffer=new H.Buffer.ptr(BD.nil,0,BK.zero(),0);return;}this.Buffer=Buffer_;});AH=$pkg.TagPrefix=$newType(4,$kindInt,"protobuf.TagPrefix",true,"github.com/dedis/protobuf",true,null);AJ=$pkg.ProtoField=$newType(0,$kindStruct,"protobuf.ProtoField",true,"github.com/dedis/protobuf",true,function(ID_,Prefix_,Name_,Index_,Field_){this.$val=this;if(arguments.length===0){this.ID=new $Int64(0,0);this.Prefix=0;this.Name="";this.Index=BH.nil;this.Field=new F.StructField.ptr("","",$ifaceNil,"",0,BH.nil,false);return;}this.ID=ID_;this.Prefix=Prefix_;this.Name=Name_;this.Index=Index_;this.Field=Field_;});BC=$ptrType(G.Location);BD=$sliceType($Uint8);BE=$funcType([],[$emptyInterface],false);BF=$sliceType($emptyInterface);BG=$ptrType(F.rtype);BH=$sliceType($Int);BI=$ptrType(AJ);BJ=$sliceType(F.Value);BK=$arrayType($Uint8,64);BL=$sliceType($Bool);BM=$sliceType($Int32);BN=$sliceType($Int64);BO=$sliceType($Uint32);BP=$sliceType($Uint64);BQ=$sliceType(Z);BR=$sliceType(AA);BS=$sliceType(X);BT=$sliceType(Y);BU=$sliceType($Float32);BV=$sliceType($Float64);BW=$sliceType($String);BX=$arrayType($Uint8,10);BY=$arrayType($Uint8,4);BZ=$arrayType($Uint8,8);CA=$sliceType(BI);CB=$ptrType($Int);CC=$structType("",[]);CG=$ptrType(P);CH=$ptrType(Q);CI=$ptrType(AC);$ptrType(P).prototype.String=function(){var $ptr,c,d,e,f,g,h,i,j,k,l,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;d="";e=c.$get();f=0;g=$keys(e);case 1:if(!(f<g.length)){$s=2;continue;}h=e[g[f]];if(h===undefined){f++;$s=1;continue;}i=h.k;j=h.v;k=i.String();$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=D.Sprintf("%+v",new BF([new BE(j)]));$s=4;case 4:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}d=d+(k+"=>"+l+"\t");f++;$s=1;continue;case 2:$s=-1;return d;}return;}if($f===undefined){$f={$blk:$ptrType(P).prototype.String};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};R=function(c,d){var $ptr,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=S(c,d,false);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$s=-1;return e;}return;}if($f===undefined){$f={$blk:R};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Decode=R;S=function(c,d,e){var $ptr,c,d,e,f,g,h,i,j,k,l,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:if($interfaceIsEqual(d,$ifaceNil)){$s=-1;return $ifaceNil;}f=new Q.ptr(e);g=F.ValueOf(d);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if(!(($clone(h,F.Value).Kind()===22))){$s=-1;return C.New("Decode has been given a non pointer type");}i=c;j=$clone(h,F.Value).Elem();$s=2;case 2:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone(j,F.Value);l=f.message(i,k);$s=3;case 3:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}$s=-1;return l;}return;}if($f===undefined){$f={$blk:S};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};$pkg.DecodeWithConstructors=S;Q.ptr.prototype.message=function(c,d){var $ptr,aa,ab,ac,ad,ae,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=this;f=AM($clone(d,F.Value).Type());$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;h=0;case 2:if(!(c.$length>0)){$s=3;continue;}i=B.Uvarint(c);j=i[0];k=i[1];if(k<=0){$s=-1;return C.New("bad protobuf field key");}c=$subslice(c,k);l=(new $Uint64(j.$high&0,(j.$low&7)>>>0).$low>>0);m=$shiftRightUint64(j,3);n=new F.Value.ptr(BG.nil,0,0);while(true){if(!(h<g.$length&&(o=((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h]).ID,p=new $Int64(m.$high,m.$low),(o.$high<p.$high||(o.$high===p.$high&&o.$low<p.$low))))){break;}h=h+(1)>>0;}if(h<g.$length&&(q=((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h]).ID,r=new $Int64(m.$high,m.$low),(q.$high===r.$high&&q.$low===r.$low))){$s=4;continue;}$s=5;continue;case 4:s=((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h]).Index;t=$makeSlice(BH,0,s.$length);u=s;v=0;case 6:if(!(v<u.$length)){$s=7;continue;}w=((v<0||v>=u.$length)?($throwRuntimeError("index out of range"),undefined):u.$array[u.$offset+v]);t=$append(t,w);x=$clone(d,F.Value).FieldByIndex(t);$s=8;case 8:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}n=x;if(($clone(n,F.Value).Kind()===22)&&$clone(n,F.Value).IsNil()){$s=9;continue;}$s=10;continue;case 9:y=$clone(n,F.Value).Type().Elem();$s=11;case 11:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}z=F.New(y);$s=12;case 12:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}$r=$clone(n,F.Value).Set($clone(z,F.Value));$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 10:v++;$s=6;continue;case 7:case 5:ab=e.value(l,c,$clone(n,F.Value));$s=14;case 14:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}aa=ab;ac=aa[0];ad=aa[1];if(!($interfaceIsEqual(ad,$ifaceNil))){$s=15;continue;}$s=16;continue;case 15:if(h<g.$length&&!(((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h])===BI.nil)){$s=17;continue;}$s=18;continue;case 17:ae=D.Errorf("Error while decding FieldName %s: %v",new BF([new $String(((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h]).Name),ad]));$s=20;case 20:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}$s=-1;return ae;case 18:$s=-1;return ad;case 19:case 16:c=ac;$s=2;continue;case 3:$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.message};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};Q.prototype.message=function(c,d){return this.$val.message(c,d);};Q.ptr.prototype.value=function(c,d,e){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=this;g=new $Uint64(0,0);h=0;i=BD.nil;j=c;if(j===(0)){k=B.Uvarint(d);g=k[0];h=k[1];if(h<=0){$s=-1;return[BD.nil,C.New("bad protobuf varint value")];}d=$subslice(d,h);}else if(j===(5)){if(d.$length<4){$s=-1;return[BD.nil,C.New("bad protobuf 32-bit value")];}g=(l=(m=(n=new $Uint64(0,(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0])),o=$shiftLeft64(new $Uint64(0,(1>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+1])),8),new $Uint64(n.$high|o.$high,(n.$low|o.$low)>>>0)),p=$shiftLeft64(new $Uint64(0,(2>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+2])),16),new $Uint64(m.$high|p.$high,(m.$low|p.$low)>>>0)),q=$shiftLeft64(new $Uint64(0,(3>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+3])),24),new $Uint64(l.$high|q.$high,(l.$low|q.$low)>>>0));d=$subslice(d,4);}else if(j===(1)){if(d.$length<8){$s=-1;return[BD.nil,C.New("bad protobuf 64-bit value")];}g=(r=(s=(t=(u=(v=(w=(x=new $Uint64(0,(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0])),y=$shiftLeft64(new $Uint64(0,(1>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+1])),8),new $Uint64(x.$high|y.$high,(x.$low|y.$low)>>>0)),z=$shiftLeft64(new $Uint64(0,(2>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+2])),16),new $Uint64(w.$high|z.$high,(w.$low|z.$low)>>>0)),aa=$shiftLeft64(new $Uint64(0,(3>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+3])),24),new $Uint64(v.$high|aa.$high,(v.$low|aa.$low)>>>0)),ab=$shiftLeft64(new $Uint64(0,(4>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+4])),32),new $Uint64(u.$high|ab.$high,(u.$low|ab.$low)>>>0)),ac=$shiftLeft64(new $Uint64(0,(5>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+5])),40),new $Uint64(t.$high|ac.$high,(t.$low|ac.$low)>>>0)),ad=$shiftLeft64(new $Uint64(0,(6>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+6])),48),new $Uint64(s.$high|ad.$high,(s.$low|ad.$low)>>>0)),ae=$shiftLeft64(new $Uint64(0,(7>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+7])),56),new $Uint64(r.$high|ae.$high,(r.$low|ae.$low)>>>0));d=$subslice(d,8);}else if(j===(2)){af=B.Uvarint(d);g=af[0];h=af[1];if(h<=0||(ag=new $Uint64(0,(d.$length-h>>0)),(g.$high>ag.$high||(g.$high===ag.$high&&g.$low>ag.$low)))){$s=-1;return[BD.nil,C.New("bad protobuf length-delimited value")];}i=$subslice(d,h,(h+(g.$low>>0)>>0));d=$subslice(d,(h+(g.$low>>0)>>0));}else{$s=-1;return[BD.nil,C.New("unknown protobuf wire-type")];}ah=f.putvalue(c,$clone(e,F.Value),g,i);$s=1;case 1:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ai=ah;if(!($interfaceIsEqual(ai,$ifaceNil))){$s=-1;return[BD.nil,ai];}$s=-1;return[d,$ifaceNil];}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.value};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};Q.prototype.value=function(c,d,e){return this.$val.value(c,d,e);};Q.ptr.prototype.decodeSignedInt=function(c,d){var $ptr,c,d,e,f,g;e=this;if(c===0){f=$shiftRightInt64(new $Int64(d.$high,d.$low),1);if(!((g=new $Uint64(d.$high&0,(d.$low&1)>>>0),(g.$high===0&&g.$low===0)))){f=new $Int64(~f.$high,~f.$low>>>0);}return[f,$ifaceNil];}else if(c===5){return[new $Int64(0,(d.$low>>0)),$ifaceNil];}else if(c===1){return[new $Int64(d.$high,d.$low),$ifaceNil];}else{return[new $Int64(-1,4294967295),C.New("bad wiretype for sint")];}};Q.prototype.decodeSignedInt=function(c,d){return this.$val.decodeSignedInt(c,d);};Q.ptr.prototype.putvalue=function(c,d,e,f){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:g=this;if(!$clone(d,F.Value).CanSet()){$s=-1;return $ifaceNil;}h=$clone(d,F.Value).Kind();if(h===(1)){$s=2;continue;}if((h===(2))||(h===(5))||(h===(6))){$s=3;continue;}if((h===(10))||(h===(11))){$s=4;continue;}if(h===(13)){$s=5;continue;}if(h===(14)){$s=6;continue;}if(h===(24)){$s=7;continue;}if(h===(25)){$s=8;continue;}if(h===(22)){$s=9;continue;}if((h===(23))||(h===(17))){$s=10;continue;}if(h===(21)){$s=11;continue;}if(h===(20)){$s=12;continue;}$s=13;continue;case 2:if(!((c===0))){$s=-1;return C.New("bad wiretype for bool");}if((e.$high>0||(e.$high===0&&e.$low>1))){$s=-1;return C.New("invalid bool value");}$clone(d,F.Value).SetBool(!((e.$high===0&&e.$low===0)));$s=14;continue;case 3:i=g.decodeSignedInt(c,e);j=i[0];k=i[1];if(!($interfaceIsEqual(k,$ifaceNil))){$s=15;continue;}$s=16;continue;case 15:l=e;m=new $Int(c);n=$clone(d,F.Value).Type().Name();$s=17;case 17:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=new $String(n);p=D.Println(new BF([new $String("Error Reflect.Int for v="),l,new $String("wiretype="),m,new $String("for Value="),o]));$s=18;case 18:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}p;$s=-1;return k;case 16:$clone(d,F.Value).SetInt(j);$s=14;continue;case 4:if(c===0){$clone(d,F.Value).SetUint(e);}else if(c===5){$clone(d,F.Value).SetUint(new $Uint64(0,(e.$low>>>0)));}else if(c===1){$clone(d,F.Value).SetUint(e);}else{$s=-1;return C.New("bad wiretype for uint");}$s=14;continue;case 5:if(!((c===5))){$s=-1;return C.New("bad wiretype for float32");}$clone(d,F.Value).SetFloat(E.Float32frombits((e.$low>>>0)));$s=14;continue;case 6:if(!((c===1))){$s=-1;return C.New("bad wiretype for float64");}$clone(d,F.Value).SetFloat(E.Float64frombits(e));$s=14;continue;case 7:if(!((c===2))){$s=-1;return C.New("bad wiretype for string");}$clone(d,F.Value).SetString($bytesToString(f));$s=14;continue;case 8:if($interfaceIsEqual($clone(d,F.Value).Type(),AE)){$s=19;continue;}$s=20;continue;case 19:q=g.decodeSignedInt(c,e);r=q[0];s=q[1];if(!($interfaceIsEqual(s,$ifaceNil))){$s=-1;return s;}t=$clone(G.Unix($div64(r,new $Int64(0,1000000000),false),$div64(r,new $Int64(0,1000000000),true)),G.Time);u=F.ValueOf(new t.constructor.elem(t));$s=21;case 21:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}$r=$clone(d,F.Value).Set($clone(u,F.Value));$s=22;case 22:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return $ifaceNil;case 20:if(!((c===2))){$s=-1;return C.New("bad wiretype for embedded message");}v=g.message(f,$clone(d,F.Value));$s=23;case 23:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}$s=-1;return v;case 9:if($clone(d,F.Value).IsNil()){$s=24;continue;}$s=25;continue;case 24:w=$clone(d,F.Value).Type().Elem();$s=26;case 26:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}x=g.instantiate(w);$s=27;case 27:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}$r=$clone(d,F.Value).Set($clone(x,F.Value));$s=28;case 28:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 25:y=c;z=$clone(d,F.Value).Elem();$s=29;case 29:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}aa=$clone(z,F.Value);ab=e;ac=f;ad=g.putvalue(y,aa,ab,ac);$s=30;case 30:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}$s=-1;return ad;case 10:if(!((c===2))){$s=-1;return C.New("bad wiretype for repeated field");}ae=g.slice($clone(d,F.Value),f);$s=31;case 31:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}$s=-1;return ae;case 11:if(!((c===2))){$s=-1;return C.New("bad wiretype for repeated field");}if($clone(d,F.Value).IsNil()){$s=32;continue;}$s=33;continue;case 32:af=F.MakeMap($clone(d,F.Value).Type());$s=34;case 34:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}$r=$clone(d,F.Value).Set($clone(af,F.Value));$s=35;case 35:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 33:ag=g.mapEntry($clone(d,F.Value),f);$s=36;case 36:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}$s=-1;return ag;case 12:if($clone(d,F.Value).IsNil()){$s=37;continue;}$s=38;continue;case 37:ah=g.instantiate($clone(d,F.Value).Type());$s=39;case 39:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}$r=$clone(d,F.Value).Set($clone(ah,F.Value));$s=40;case 40:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 38:aj=$clone(d,F.Value).Interface();$s=41;case 41:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ai=$assertType(aj,A.BinaryUnmarshaler,true);ak=ai[0];al=ai[1];if(al){$s=42;continue;}$s=43;continue;case 42:if(!((c===2))){$s=-1;return C.New("bad wiretype for bytes");}am=ak.UnmarshalBinary(f);$s=44;case 44:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}$s=-1;return am;case 43:an=f;ao=$clone(d,F.Value).Interface();$s=45;case 45:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}ap=ao;aq=R(an,ap);$s=46;case 46:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}$s=-1;return aq;case 13:$panic(new $String("unsupported value kind "+new F.Kind($clone(d,F.Value).Kind()).String()));case 14:case 1:$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.putvalue};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};Q.prototype.putvalue=function(c,d,e,f){return this.$val.putvalue(c,d,e,f);};Q.ptr.prototype.instantiate=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:d=this;e=c.Kind();$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}if(e===20){$s=1;continue;}$s=2;continue;case 1:f=(g=d.nm[F.Type.keyFor(c)],g!==undefined?[g.v,true]:[$throwNilPointerError,false]);h=f[0];i=f[1];if(!i){$s=4;continue;}$s=5;continue;case 4:j=c.String();$s=6;case 6:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$panic(new $String("no constructor for interface "+j));case 5:k=h();$s=7;case 7:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=F.ValueOf(k);$s=8;case 8:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}$s=-1;return l;case 2:m=F.New(c);$s=9;case 9:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}$s=-1;return m;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.instantiate};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};Q.prototype.instantiate=function(c){return this.$val.instantiate(c);};Q.ptr.prototype.slice=function(c,d){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=this;f=$clone(c,F.Value).Type().Elem();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;h=F.New(g);$s=2;case 2:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=$clone(h,F.Value).Elem();$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;k=0;l=g.Kind();$s=5;case 5:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=l;if((m===(1))||(m===(5))||(m===(6))||(m===(10))||(m===(11))){$s=6;continue;}if(m===(13)){$s=7;continue;}if(m===(14)){$s=8;continue;}if(m===(8)){$s=9;continue;}$s=10;continue;case 6:n=g;if($interfaceIsEqual(n,(T))){k=5;}else if($interfaceIsEqual(n,(U))){k=1;}else if($interfaceIsEqual(n,(V))){k=5;}else if($interfaceIsEqual(n,(W))){k=1;}else{k=0;}$s=11;continue;case 7:k=5;$s=11;continue;case 8:k=1;$s=11;continue;case 9:if($clone(c,F.Value).Kind()===17){$s=12;continue;}$s=13;continue;case 12:if(!(($clone(c,F.Value).Len()===d.$length))){$panic(new $String("Array length != buffer length"));}o=0;case 15:if(!(o<$clone(c,F.Value).Len())){$s=16;continue;}p=$clone(c,F.Value).Index(o);$s=17;case 17:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}$r=$clone(p,F.Value).SetUint(new $Uint64(0,((o<0||o>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+o])));$s=18;case 18:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}o=o+(1)>>0;$s=15;continue;case 16:$s=14;continue;case 13:$r=$clone(c,F.Value).SetBytes(d);$s=19;case 19:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 14:$s=-1;return $ifaceNil;case 10:q=e.putvalue(2,$clone(j,F.Value),new $Uint64(0,0),d);$s=20;case 20:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=q;if(!($interfaceIsEqual(r,$ifaceNil))){$s=-1;return r;}s=F.Append($clone(c,F.Value),new BJ([$clone(j,F.Value)]));$s=21;case 21:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}$r=$clone(c,F.Value).Set($clone(s,F.Value));$s=22;case 22:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return $ifaceNil;case 11:case 4:case 23:if(!(d.$length>0)){$s=24;continue;}u=e.value(k,d,$clone(j,F.Value));$s=25;case 25:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}t=u;v=t[0];w=t[1];if(!($interfaceIsEqual(w,$ifaceNil))){$s=-1;return w;}x=F.Append($clone(c,F.Value),new BJ([$clone(j,F.Value)]));$s=26;case 26:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}$r=$clone(c,F.Value).Set($clone(x,F.Value));$s=27;case 27:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=v;$s=23;continue;case 24:$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.slice};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.$s=$s;$f.$r=$r;return $f;};Q.prototype.slice=function(c,d){return this.$val.slice(c,d);};Q.ptr.prototype.mapEntry=function(c,d){var $ptr,aa,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=this;f=$clone(c,F.Value).Type().Key();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=F.New(f);$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;i=$clone(c,F.Value).Type().Elem();$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=F.New(i);$s=4;case 4:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;l=$clone(h,F.Value).Elem();$s=5;case 5:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=l;n=$clone(k,F.Value).Elem();$s=6;case 6:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=n;p=B.Uvarint(d);q=p[0];r=p[1];if(r<=0){$s=-1;return C.New("bad protobuf field key");}s=$subslice(d,r);t=(new $Uint64(q.$high&0,(q.$low&7)>>>0).$low>>0);u=$ifaceNil;w=e.value(t,s,$clone(m,F.Value));$s=7;case 7:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}v=w;s=v[0];u=v[1];if(!($interfaceIsEqual(u,$ifaceNil))){$s=-1;return u;}case 8:if(!(s.$length>0)){$s=9;continue;}x=B.Uvarint(s);q=x[0];r=x[1];if(r<=0){$s=-1;return C.New("bad protobuf field key");}s=$subslice(s,r);t=(new $Uint64(q.$high&0,(q.$low&7)>>>0).$low>>0);z=e.value(t,s,$clone(o,F.Value));$s=10;case 10:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}y=z;s=y[0];u=y[1];if(!($interfaceIsEqual(u,$ifaceNil))){$s=-1;return u;}$s=8;continue;case 9:if(!$clone(m,F.Value).IsValid()||!$clone(o,F.Value).IsValid()){$s=11;continue;}$s=12;continue;case 11:aa=D.Errorf("proto: bad map data: missing key/val",new BF([]));$s=13;case 13:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}$s=-1;return aa;case 12:$r=$clone(c,F.Value).SetMapIndex($clone(m,F.Value),$clone(o,F.Value));$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:Q.ptr.prototype.mapEntry};}$f.$ptr=$ptr;$f.aa=aa;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};Q.prototype.mapEntry=function(c,d){return this.$val.mapEntry(c,d);};AD=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);d=[d];e=[e];d[0]=BD.nil;e[0]=$ifaceNil;$deferred.push([(function(d,e){return function(){var $ptr,f;f=$recover();if(!($interfaceIsEqual(f,$ifaceNil))){e[0]=C.New($assertType(f,$String));d[0]=BD.nil;}};})(d,e),[]]);if($interfaceIsEqual(c,$ifaceNil)){f=BD.nil;g=$ifaceNil;d[0]=f;e[0]=g;$s=-1;return[d[0],e[0]];}h=new AC.ptr(new H.Buffer.ptr(BD.nil,0,BK.zero(),0));i=F.ValueOf(c);$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;if(!(($clone(j,F.Value).Kind()===22))){k=BD.nil;l=C.New("Encode takes a pointer to struct");d[0]=k;e[0]=l;$s=-1;return[d[0],e[0]];}m=$clone(j,F.Value).Elem();$s=2;case 2:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}$r=h.message($clone(m,F.Value));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}n=h.Buffer.Bytes();o=$ifaceNil;d[0]=n;e[0]=o;$s=-1;return[d[0],e[0]];}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if(!$curGoroutine.asleep){return[d[0],e[0]];}if($curGoroutine.asleep){if($f===undefined){$f={$blk:AD};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};$pkg.Encode=AD;AC.ptr.prototype.message=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);d=[d];e=this;d[0]=BI.nil;$deferred.push([(function(d){return function $b(){var $ptr,f,g,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;f=$f.f;g=$f.g;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=$recover();if(!($interfaceIsEqual(f,$ifaceNil))){$s=1;continue;}$s=2;continue;case 1:if(!(d[0]===BI.nil)){$s=3;continue;}$s=4;continue;case 3:g=D.Sprintf("%s (field %s)",new BF([f,new $String(d[0].Field.Name)]));$s=6;case 6:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$panic(new $String(g));$s=5;continue;case 4:$panic(f);case 5:case 2:$s=-1;return;}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.f=f;$f.g=g;$f.$s=$s;$f.$r=$r;return $f;};})(d),[]]);g=AM($clone(c,F.Value).Type());$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;h=0;case 2:if(!(h<f.$length)){$s=3;continue;}d[0]=((h<0||h>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+h]);i=$clone(c,F.Value).FieldByIndex(d[0].Index);$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;l=$shiftLeft64((k=d[0].ID,new $Uint64(k.$high,k.$low)),3);if($clone(j,F.Value).CanSet()){$s=5;continue;}$s=6;continue;case 5:$r=e.value(l,$clone(j,F.Value),d[0].Prefix);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 6:h++;$s=2;continue;case 3:$s=-1;return;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:AC.ptr.prototype.message};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};AC.prototype.message=function(c){return this.$val.message(c);};AC.ptr.prototype.value=function(c,d,e){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=this;h=$clone(d,F.Value).Interface();$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;if($assertType(g,$Bool,true)[1]){$s=2;continue;}if($assertType(g,$Int,true)[1]){$s=3;continue;}if($assertType(g,$Int32,true)[1]){$s=4;continue;}if($assertType(g,G.Time,true)[1]){$s=5;continue;}if($assertType(g,$Int64,true)[1]){$s=6;continue;}if($assertType(g,$Uint32,true)[1]){$s=7;continue;}if($assertType(g,$Uint64,true)[1]){$s=8;continue;}if($assertType(g,Z,true)[1]){$s=9;continue;}if($assertType(g,AA,true)[1]){$s=10;continue;}if($assertType(g,X,true)[1]){$s=11;continue;}if($assertType(g,Y,true)[1]){$s=12;continue;}if($assertType(g,$Float32,true)[1]){$s=13;continue;}if($assertType(g,$Float64,true)[1]){$s=14;continue;}if($assertType(g,$String,true)[1]){$s=15;continue;}if($assertType(g,BD,true)[1]){$s=16;continue;}$s=17;continue;case 2:i=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|0)>>>0));x=new $Uint64(0,0);if(i){x=new $Uint64(0,1);}f.uvarint(x);$s=-1;return;case 3:j=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|0)>>>0));f.svarint(new $Int64(0,j));$s=-1;return;case 4:k=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|0)>>>0));f.svarint(new $Int64(0,k));$s=-1;return;case 5:l=$clone(g.$val,G.Time);y=$clone(l,G.Time).UnixNano();f.uvarint(new $Uint64(c.$high|0,(c.$low|1)>>>0));f.u64(new $Uint64(y.$high,y.$low));$s=-1;return;case 6:m=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|0)>>>0));f.svarint(m);$s=-1;return;case 7:n=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|0)>>>0));f.uvarint(new $Uint64(0,n));$s=-1;return;case 8:o=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|0)>>>0));f.uvarint(o);$s=-1;return;case 9:p=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|5)>>>0));f.u32((p>>>0));$s=-1;return;case 10:q=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|1)>>>0));f.u64(new $Uint64(q.$high,q.$low));$s=-1;return;case 11:r=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|5)>>>0));f.u32((r>>>0));$s=-1;return;case 12:s=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|1)>>>0));f.u64(new $Uint64(s.$high,s.$low));$s=-1;return;case 13:t=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|5)>>>0));f.u32(E.Float32bits(t));$s=-1;return;case 14:u=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|1)>>>0));f.u64(E.Float64bits(u));$s=-1;return;case 15:v=g.$val;f.uvarint(new $Uint64(c.$high|0,(c.$low|2)>>>0));z=new BD($stringToBytes(v));f.uvarint(new $Uint64(0,z.$length));f.Buffer.Write(z);$s=-1;return;case 16:w=g.$val;if(w===BD.nil){if(!((e===1))){$panic(new $String("passed nil []byte to required field"));}$s=-1;return;}f.uvarint(new $Uint64(c.$high|0,(c.$low|2)>>>0));f.uvarint(new $Uint64(0,w.$length));f.Buffer.Write(w);$s=-1;return;case 17:aa=$clone(d,F.Value).Kind();if(aa===(1)){$s=19;continue;}if((aa===(2))||(aa===(5))||(aa===(6))){$s=20;continue;}if((aa===(10))||(aa===(11))){$s=21;continue;}if(aa===(13)){$s=22;continue;}if(aa===(14)){$s=23;continue;}if(aa===(24)){$s=24;continue;}if(aa===(25)){$s=25;continue;}if((aa===(23))||(aa===(17))){$s=26;continue;}if(aa===(22)){$s=27;continue;}if(aa===(20)){$s=28;continue;}if(aa===(21)){$s=29;continue;}$s=30;continue;case 19:f.uvarint(new $Uint64(c.$high|0,(c.$low|0)>>>0));ab=new $Uint64(0,0);if($clone(d,F.Value).Bool()){ab=new $Uint64(0,1);}f.uvarint(ab);$s=31;continue;case 20:f.uvarint(new $Uint64(c.$high|0,(c.$low|0)>>>0));f.svarint($clone(d,F.Value).Int());$s=31;continue;case 21:f.uvarint(new $Uint64(c.$high|0,(c.$low|0)>>>0));f.uvarint($clone(d,F.Value).Uint());$s=31;continue;case 22:f.uvarint(new $Uint64(c.$high|0,(c.$low|5)>>>0));f.u32(E.Float32bits($fround($clone(d,F.Value).Float())));$s=31;continue;case 23:f.uvarint(new $Uint64(c.$high|0,(c.$low|1)>>>0));f.u64(E.Float64bits($clone(d,F.Value).Float()));$s=31;continue;case 24:f.uvarint(new $Uint64(c.$high|0,(c.$low|2)>>>0));ac=$clone(d,F.Value).String();$s=32;case 32:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ad=new BD($stringToBytes(ac));f.uvarint(new $Uint64(0,ad.$length));f.Buffer.Write(ad);$s=31;continue;case 25:f.uvarint(new $Uint64(c.$high|0,(c.$low|2)>>>0));ae=new AC.ptr(new H.Buffer.ptr(BD.nil,0,BK.zero(),0));$r=ae.message($clone(d,F.Value));$s=33;case 33:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}af=ae.Buffer.Bytes();f.uvarint(new $Uint64(0,af.$length));f.Buffer.Write(af);$s=31;continue;case 26:$r=f.slice(c,$clone(d,F.Value));$s=34;case 34:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;case 27:if($clone(d,F.Value).IsNil()){if(e===2){$panic(new $String("required field is nil"));}$s=-1;return;}ag=c;ah=$clone(d,F.Value).Elem();$s=35;case 35:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ai=$clone(ah,F.Value);aj=e;$r=f.value(ag,ai,aj);$s=36;case 36:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=31;continue;case 28:if($clone(d,F.Value).IsNil()){$s=-1;return;}al=$clone(d,F.Value).Interface();$s=37;case 37:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}ak=$assertType(al,A.BinaryMarshaler,true);am=ak[0];an=ak[1];if(an){$s=38;continue;}$s=39;continue;case 38:f.uvarint(new $Uint64(c.$high|0,(c.$low|2)>>>0));ap=am.MarshalBinary();$s=40;case 40:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}ao=ap;aq=ao[0];ar=ao[1];if(!($interfaceIsEqual(ar,$ifaceNil))){$s=41;continue;}$s=42;continue;case 41:as=ar.Error();$s=43;case 43:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}$panic(new $String(as));case 42:f.uvarint(new $Uint64(0,aq.$length));f.Buffer.Write(aq);$s=-1;return;case 39:at=c;au=$clone(d,F.Value).Elem();$s=44;case 44:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}av=$clone(au,F.Value);aw=e;$r=f.value(at,av,aw);$s=45;case 45:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=31;continue;case 29:$r=f.handleMap(c,$clone(d,F.Value),e);$s=46;case 46:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;case 30:ax=D.Sprintf("unsupported field Kind %d",new BF([new F.Kind($clone(d,F.Value).Kind())]));$s=47;case 47:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}$panic(new $String(ax));case 31:case 18:$s=-1;return;}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.value};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};AC.prototype.value=function(c,d,e){return this.$val.value(c,d,e);};AC.ptr.prototype.slice=function(c,d){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=this;f=$clone(d,F.Value).Len();g=new AC.ptr(new H.Buffer.ptr(BD.nil,0,BK.zero(),0));i=$clone(d,F.Value).Interface();$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;if($assertType(h,BL,true)[1]){$s=2;continue;}if($assertType(h,BM,true)[1]){$s=3;continue;}if($assertType(h,BN,true)[1]){$s=4;continue;}if($assertType(h,BO,true)[1]){$s=5;continue;}if($assertType(h,BP,true)[1]){$s=6;continue;}if($assertType(h,BQ,true)[1]){$s=7;continue;}if($assertType(h,BR,true)[1]){$s=8;continue;}if($assertType(h,BS,true)[1]){$s=9;continue;}if($assertType(h,BT,true)[1]){$s=10;continue;}if($assertType(h,BU,true)[1]){$s=11;continue;}if($assertType(h,BV,true)[1]){$s=12;continue;}if($assertType(h,BD,true)[1]){$s=13;continue;}if($assertType(h,BW,true)[1]){$s=14;continue;}$s=15;continue;case 2:j=h.$val;x=0;while(true){if(!(x<f)){break;}y=new $Uint64(0,0);if(((x<0||x>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+x])){y=new $Uint64(0,1);}g.uvarint(y);x=x+(1)>>0;}$s=16;continue;case 3:k=h.$val;z=0;while(true){if(!(z<f)){break;}g.svarint(new $Int64(0,((z<0||z>=k.$length)?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+z])));z=z+(1)>>0;}$s=16;continue;case 4:l=h.$val;aa=0;while(true){if(!(aa<f)){break;}g.svarint(((aa<0||aa>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+aa]));aa=aa+(1)>>0;}$s=16;continue;case 5:m=h.$val;ab=0;while(true){if(!(ab<f)){break;}g.uvarint(new $Uint64(0,((ab<0||ab>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+ab])));ab=ab+(1)>>0;}$s=16;continue;case 6:n=h.$val;ac=0;while(true){if(!(ac<f)){break;}g.uvarint(((ac<0||ac>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+ac]));ac=ac+(1)>>0;}$s=16;continue;case 7:o=h.$val;ad=0;while(true){if(!(ad<f)){break;}g.u32((((ad<0||ad>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+ad])>>>0));ad=ad+(1)>>0;}$s=16;continue;case 8:p=h.$val;ae=0;while(true){if(!(ae<f)){break;}g.u64((af=((ae<0||ae>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+ae]),new $Uint64(af.$high,af.$low)));ae=ae+(1)>>0;}$s=16;continue;case 9:q=h.$val;ag=0;while(true){if(!(ag<f)){break;}g.u32((((ag<0||ag>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+ag])>>>0));ag=ag+(1)>>0;}$s=16;continue;case 10:r=h.$val;ah=0;while(true){if(!(ah<f)){break;}g.u64((ai=((ah<0||ah>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+ah]),new $Uint64(ai.$high,ai.$low)));ah=ah+(1)>>0;}$s=16;continue;case 11:s=h.$val;aj=0;while(true){if(!(aj<f)){break;}g.u32(E.Float32bits(((aj<0||aj>=s.$length)?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+aj])));aj=aj+(1)>>0;}$s=16;continue;case 12:t=h.$val;ak=0;while(true){if(!(ak<f)){break;}g.u64(E.Float64bits(((ak<0||ak>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+ak])));ak=ak+(1)>>0;}$s=16;continue;case 13:u=h.$val;e.uvarint(new $Uint64(c.$high|0,(c.$low|2)>>>0));e.uvarint(new $Uint64(0,f));e.Buffer.Write(u);$s=-1;return;case 14:v=h.$val;al=0;case 17:if(!(al<f)){$s=18;continue;}am=$clone(d,F.Value).Index(al);$s=19;case 19:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}an=am;ao=$clone(an,F.Value).Interface();$s=20;case 20:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}ap=$assertType(ao,$String);aq=new BD($stringToBytes(ap));e.uvarint(new $Uint64(c.$high|0,(c.$low|2)>>>0));e.uvarint(new $Uint64(0,aq.$length));e.Buffer.Write(aq);al=al+(1)>>0;$s=17;continue;case 18:$s=-1;return;case 15:w=h;$r=e.sliceReflect(c,$clone(d,F.Value));$s=21;case 21:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;case 16:e.uvarint(new $Uint64(c.$high|0,(c.$low|2)>>>0));ar=g.Buffer.Bytes();e.uvarint(new $Uint64(0,ar.$length));e.Buffer.Write(ar);$s=-1;return;}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.slice};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};AC.prototype.slice=function(c,d){return this.$val.slice(c,d);};AC.ptr.prototype.handleMap=function(c,d,e){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:f=this;h=$clone(d,F.Value).MapKeys();$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;i=0;case 2:if(!(i<g.$length)){$s=3;continue;}j=((i<0||i>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+i]);k=$clone(d,F.Value).MapIndex($clone(j,F.Value));$s=4;case 4:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;m=$clone(l,F.Value).Kind();n=m;if(n===(22)){$s=6;continue;}if((n===(23))||(n===(17))){$s=7;continue;}$s=8;continue;case 6:if($clone(l,F.Value).IsNil()){$panic(new $String("proto: map has nil element"));}$s=8;continue;case 7:o=$clone(l,F.Value).Type().Elem();$s=11;case 11:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=o.Kind();$s=12;case 12:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}if(!((p===8))){$s=9;continue;}$s=10;continue;case 9:$panic(new $String("protobuf: map only support []byte or string as repeated value"));case 10:case 8:case 5:q=new AC.ptr(new H.Buffer.ptr(BD.nil,0,BK.zero(),0));$r=q.value(c,$clone(j,F.Value),e);$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}r=$shiftRightUint64(c,3);$r=q.value($shiftLeft64(new $Uint64(r.$high+0,r.$low+1),3),$clone(l,F.Value),e);$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f.uvarint(new $Uint64(c.$high|0,(c.$low|2)>>>0));s=q.Buffer.Bytes();f.uvarint(new $Uint64(0,s.$length));f.Buffer.Write(s);i++;$s=2;continue;case 3:$s=-1;return;}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.handleMap};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.$s=$s;$f.$r=$r;return $f;};AC.prototype.handleMap=function(c,d,e){return this.$val.handleMap(c,d,e);};AC.ptr.prototype.sliceReflect=function(c,d){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=this;f=$clone(d,F.Value).Kind();if(!((f===23))&&!((f===17))){$panic(new $String("no slice passed"));}g=$clone(d,F.Value).Len();h=$clone(d,F.Value).Type().Elem();$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;j=new AC.ptr(new H.Buffer.ptr(BD.nil,0,BK.zero(),0));k=i.Kind();$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;if(l===(1)){$s=4;continue;}if((l===(2))||(l===(5))||(l===(6))){$s=5;continue;}if((l===(10))||(l===(11))){$s=6;continue;}if(l===(13)){$s=7;continue;}if(l===(14)){$s=8;continue;}if(l===(8)){$s=9;continue;}$s=10;continue;case 4:m=0;case 12:if(!(m<g)){$s=13;continue;}n=new $Uint64(0,0);o=$clone(d,F.Value).Index(m);$s=16;case 16:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=$clone(o,F.Value).Bool();$s=17;case 17:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}if(p){$s=14;continue;}$s=15;continue;case 14:n=new $Uint64(0,1);case 15:j.uvarint(n);m=m+(1)>>0;$s=12;continue;case 13:$s=11;continue;case 5:q=0;case 18:if(!(q<g)){$s=19;continue;}r=$clone(d,F.Value).Index(q);$s=20;case 20:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=$clone(r,F.Value).Int();$s=21;case 21:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}$r=j.svarint(s);$s=22;case 22:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}q=q+(1)>>0;$s=18;continue;case 19:$s=11;continue;case 6:t=0;case 23:if(!(t<g)){$s=24;continue;}u=$clone(d,F.Value).Index(t);$s=25;case 25:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}v=$clone(u,F.Value).Uint();$s=26;case 26:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}$r=j.uvarint(v);$s=27;case 27:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}t=t+(1)>>0;$s=23;continue;case 24:$s=11;continue;case 7:w=0;case 28:if(!(w<g)){$s=29;continue;}x=$clone(d,F.Value).Index(w);$s=30;case 30:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}y=$clone(x,F.Value).Float();$s=31;case 31:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}z=E.Float32bits($fround(y));$s=32;case 32:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}$r=j.u32(z);$s=33;case 33:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}w=w+(1)>>0;$s=28;continue;case 29:$s=11;continue;case 8:aa=0;case 34:if(!(aa<g)){$s=35;continue;}ab=$clone(d,F.Value).Index(aa);$s=36;case 36:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}ac=$clone(ab,F.Value).Float();$s=37;case 37:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ad=E.Float64bits(ac);$s=38;case 38:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}$r=j.u64(ad);$s=39;case 39:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}aa=aa+(1)>>0;$s=34;continue;case 35:$s=11;continue;case 9:e.uvarint(new $Uint64(c.$high|0,(c.$low|2)>>>0));e.uvarint(new $Uint64(0,g));ae=BD.nil;if($clone(d,F.Value).Kind()===17){$s=40;continue;}$s=41;continue;case 40:af=$clone(d,F.Value).Slice(0,g);$s=43;case 43:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}ag=af;ah=$clone(ag,F.Value).Convert(AG);$s=44;case 44:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ai=$clone(ah,F.Value).Interface();$s=45;case 45:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ae=$assertType(ai,BD);$s=42;continue;case 41:aj=$clone(d,F.Value).Convert(AG);$s=46;case 46:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=$clone(aj,F.Value).Interface();$s=47;case 47:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}ae=$assertType(ak,BD);case 42:e.Buffer.Write(ae);$s=-1;return;case 10:al=$clone(d,F.Value).Type().Elem();$s=48;case 48:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}am=al;ao=am.Kind();$s=52;case 52:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}if(ao===23){an=true;$s=51;continue s;}ap=am.Kind();$s=53;case 53:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}an=ap===17;case 51:if(an){$s=49;continue;}$s=50;continue;case 49:aq=am.Elem();$s=54;case 54:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=aq;as=ar.Kind();$s=57;case 57:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}if(!((as===8))){$s=55;continue;}$s=56;continue;case 55:$panic(new $String("protobuf: no support for 2-dimensional array except for [][]byte"));case 56:case 50:at=0;case 58:if(!(at<g)){$s=59;continue;}au=c;av=$clone(d,F.Value).Index(at);$s=60;case 60:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}aw=$clone(av,F.Value);$r=e.value(au,aw,0);$s=61;case 61:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}at=at+(1)>>0;$s=58;continue;case 59:$s=-1;return;case 11:case 2:e.uvarint(new $Uint64(c.$high|0,(c.$low|2)>>>0));ax=j.Buffer.Bytes();e.uvarint(new $Uint64(0,ax.$length));e.Buffer.Write(ax);$s=-1;return;}return;}if($f===undefined){$f={$blk:AC.ptr.prototype.sliceReflect};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};AC.prototype.sliceReflect=function(c,d){return this.$val.sliceReflect(c,d);};AC.ptr.prototype.uvarint=function(c){var $ptr,c,d,e,f;d=this;e=BX.zero();f=B.PutUvarint(new BD(e),c);d.Buffer.Write($subslice(new BD(e),0,f));};AC.prototype.uvarint=function(c){return this.$val.uvarint(c);};AC.ptr.prototype.svarint=function(c){var $ptr,c,d,e,f;d=this;if((c.$high>0||(c.$high===0&&c.$low>=0))){d.uvarint($shiftLeft64(new $Uint64(c.$high,c.$low),1));}else{d.uvarint((e=(f=$shiftLeft64(c,1),new $Uint64(f.$high,f.$low)),new $Uint64(~e.$high,~e.$low>>>0)));}};AC.prototype.svarint=function(c){return this.$val.svarint(c);};AC.ptr.prototype.u32=function(c){var $ptr,c,d,e;d=this;e=BY.zero();e[0]=(c<<24>>>24);e[1]=((c>>>8>>>0)<<24>>>24);e[2]=((c>>>16>>>0)<<24>>>24);e[3]=((c>>>24>>>0)<<24>>>24);d.Buffer.Write(new BD(e));};AC.prototype.u32=function(c){return this.$val.u32(c);};AC.ptr.prototype.u64=function(c){var $ptr,c,d,e;d=this;e=BZ.zero();e[0]=(c.$low<<24>>>24);e[1]=($shiftRightUint64(c,8).$low<<24>>>24);e[2]=($shiftRightUint64(c,16).$low<<24>>>24);e[3]=($shiftRightUint64(c,24).$low<<24>>>24);e[4]=($shiftRightUint64(c,32).$low<<24>>>24);e[5]=($shiftRightUint64(c,40).$low<<24>>>24);e[6]=($shiftRightUint64(c,48).$low<<24>>>24);e[7]=($shiftRightUint64(c,56).$low<<24>>>24);d.Buffer.Write(new BD(e));};AC.prototype.u64=function(c){return this.$val.u64(c);};AI=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n;d=0;e=0;f="";g=new F.StructTag(c.Tag).Get("protobuf");if(g===""){return[d,e,f];}h=J.Split(g,",");i=h;j=0;while(true){if(!(j<i.$length)){break;}k=((j<0||j>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+j]);if(k==="opt"){e=1;}else if(k==="req"){e=2;}else{l=I.Atoi(k);m=l[0];n=l[1];if(!($interfaceIsEqual(n,$ifaceNil))){f=k;}else{d=m;}}j++;}return[d,e,f];};$pkg.ParseTag=AI;AJ.ptr.prototype.Required=function(){var $ptr,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:c=this;if(c.Prefix===2){d=true;$s=1;continue s;}e=c.Field.Type.Kind();$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=!((e===22));case 1:$s=-1;return d;}return;}if($f===undefined){$f={$blk:AJ.ptr.prototype.Required};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};AJ.prototype.Required=function(){return this.$val.Required();};AM=function(c){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);d=[d];$r=AL.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=(f=AK[F.Type.keyFor(c)],f!==undefined?[f.v,true]:[CA.nil,false]);g=e[0];h=e[1];$r=AL.Unlock();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(h){$s=-1;return g;}d[0]=0;i=AN((d.$ptr||(d.$ptr=new CB(function(){return this.$target[0];},function($v){this.$target[0]=$v;},d))),c);$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}g=i;j=$makeMap($Int64.keyFor,[]);k=g;l=0;case 4:if(!(l<k.$length)){$s=5;continue;}m=((l<0||l>=k.$length)?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+l]);n=(o=j[$Int64.keyFor(m.ID)],o!==undefined?[o.v,true]:[new CC.ptr(),false]);p=n[1];if(p){$s=6;continue;}$s=7;continue;case 6:q=m.ID;r=c.PkgPath();$s=8;case 8:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=new $String(r);t=c.Name();$s=9;case 9:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}u=new $String(t);v=D.Sprintf("protobuf ID %d reused in %s.%s",new BF([q,s,u]));$s=10;case 10:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}$panic(new $String(v));case 7:w=m.ID;(j||$throwRuntimeError("assignment to entry in nil map"))[$Int64.keyFor(w)]={k:w,v:new CC.ptr()};l++;$s=4;continue;case 5:$r=AL.Lock();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(AL,"Unlock"),[]]);x=c;(AK||$throwRuntimeError("assignment to entry in nil map"))[F.Type.keyFor(x)]={k:x,v:g};$s=-1;return g;}return;}}catch(err){$err=err;$s=-1;return CA.nil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:AM};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};$pkg.ProtoFields=AM;AN=function(c,d){var $ptr,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:e=d.Kind();$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}if(e===22){$s=1;continue;}$s=2;continue;case 1:f=c;g=d.Elem();$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;i=AN(f,h);$s=5;case 5:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$s=-1;return i;case 2:j=new CA([]);k=0;case 6:l=d.NumField();$s=8;case 8:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}if(!(k<l)){$s=7;continue;}m=d.Field(k);$s=9;case 9:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=$clone(m,F.StructField);c.$set(c.$get()+(1)>>0);o=AI($clone(n,F.StructField));p=o[0];q=o[1];r=o[2];if(!((p===0))){c.$set(p);}if(n.Anonymous){$s=10;continue;}$s=11;continue;case 10:c.$set(c.$get()-(1)>>0);t=AN(c,n.Type);$s=13;case 13:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}s=t;u=0;case 14:if(!(u<s.$length)){$s=15;continue;}v=((u<0||u>=s.$length)?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+u]);v.Index=$appendSlice(new BH([k]),v.Index);j=$append(j,v);u++;$s=14;continue;case 15:$s=12;continue;case 11:j=$append(j,new AJ.ptr(new $Int64(0,c.$get()),q,r,new BH([k]),$clone(n,F.StructField)));case 12:k=k+(1)>>0;$s=6;continue;case 7:$s=-1;return j;}return;}if($f===undefined){$f={$blk:AN};}$f.$ptr=$ptr;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.$s=$s;$f.$r=$r;return $f;};CG.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];CH.methods=[{prop:"message",name:"message",pkg:"github.com/dedis/protobuf",typ:$funcType([BD,F.Value],[$error],false)},{prop:"value",name:"value",pkg:"github.com/dedis/protobuf",typ:$funcType([$Int,BD,F.Value],[BD,$error],false)},{prop:"decodeSignedInt",name:"decodeSignedInt",pkg:"github.com/dedis/protobuf",typ:$funcType([$Int,$Uint64],[$Int64,$error],false)},{prop:"putvalue",name:"putvalue",pkg:"github.com/dedis/protobuf",typ:$funcType([$Int,F.Value,$Uint64,BD],[$error],false)},{prop:"instantiate",name:"instantiate",pkg:"github.com/dedis/protobuf",typ:$funcType([F.Type],[F.Value],false)},{prop:"slice",name:"slice",pkg:"github.com/dedis/protobuf",typ:$funcType([F.Value,BD],[$error],false)},{prop:"mapEntry",name:"mapEntry",pkg:"github.com/dedis/protobuf",typ:$funcType([F.Value,BD],[$error],false)}];CI.methods=[{prop:"message",name:"message",pkg:"github.com/dedis/protobuf",typ:$funcType([F.Value],[],false)},{prop:"value",name:"value",pkg:"github.com/dedis/protobuf",typ:$funcType([$Uint64,F.Value,AH],[],false)},{prop:"slice",name:"slice",pkg:"github.com/dedis/protobuf",typ:$funcType([$Uint64,F.Value],[],false)},{prop:"handleMap",name:"handleMap",pkg:"github.com/dedis/protobuf",typ:$funcType([$Uint64,F.Value,AH],[],false)},{prop:"sliceReflect",name:"sliceReflect",pkg:"github.com/dedis/protobuf",typ:$funcType([$Uint64,F.Value],[],false)},{prop:"uvarint",name:"uvarint",pkg:"github.com/dedis/protobuf",typ:$funcType([$Uint64],[],false)},{prop:"svarint",name:"svarint",pkg:"github.com/dedis/protobuf",typ:$funcType([$Int64],[],false)},{prop:"u32",name:"u32",pkg:"github.com/dedis/protobuf",typ:$funcType([$Uint32],[],false)},{prop:"u64",name:"u64",pkg:"github.com/dedis/protobuf",typ:$funcType([$Uint64],[],false)}];BI.methods=[{prop:"Required",name:"Required",pkg:"",typ:$funcType([],[$Bool],false)}];P.init(F.Type,BE);Q.init("github.com/dedis/protobuf",[{prop:"nm",name:"nm",exported:false,typ:P,tag:""}]);AC.init("",[{prop:"Buffer",name:"",exported:true,typ:H.Buffer,tag:""}]);AJ.init("",[{prop:"ID",name:"ID",exported:true,typ:$Int64,tag:""},{prop:"Prefix",name:"Prefix",exported:true,typ:AH,tag:""},{prop:"Name",name:"Name",exported:true,typ:$String,tag:""},{prop:"Index",name:"Index",exported:true,typ:BH,tag:""},{prop:"Field",name:"Field",exported:true,typ:F.StructField,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=H.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=L.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=M.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=N.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$init();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$init();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=K.$init();$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=O.$init();$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}AL=new K.Mutex.ptr(0,0);T=F.TypeOf(new Z(0));U=F.TypeOf(new AA(0,0));V=F.TypeOf(new X(0));W=F.TypeOf(new Y(0,0));AE=F.TypeOf((a=new G.Time.ptr(new $Int64(0,0),0,BC.nil),new a.constructor.elem(a)));AF=F.TypeOf(new G.Duration(0,0));AG=F.TypeOf(new BD([]));AK=$makeMap(F.Type.keyFor,[]);b=M.MustCompile("((?:ID)|(?:[A-Z][a-z_0-9]+)|([\\w\\d]+))");$s=16;case 16:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}AO=b;}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["crypto"]=(function(){var $pkg={},$init,A,B,C,D,N,O,P,E,F,G;A=$packages["hash"];B=$packages["io"];C=$packages["strconv"];D=$pkg.Hash=$newType(4,$kindUint,"crypto.Hash",true,"crypto",true,null);N=$sliceType($Uint8);O=$funcType([],[A.Hash],false);P=$sliceType(O);D.prototype.HashFunc=function(){var $ptr,a;a=this.$val;return a;};$ptrType(D).prototype.HashFunc=function(){return new D(this.$get()).HashFunc();};D.prototype.Size=function(){var $ptr,a;a=this.$val;if(a>0&&a<16){return(((a<0||a>=E.$length)?($throwRuntimeError("index out of range"),undefined):E.$array[E.$offset+a])>>0);}$panic(new $String("crypto: Size of unknown hash function"));};$ptrType(D).prototype.Size=function(){return new D(this.$get()).Size();};D.prototype.New=function(){var $ptr,a,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this.$val;if(a>0&&a<16){$s=1;continue;}$s=2;continue;case 1:b=((a<0||a>=F.$length)?($throwRuntimeError("index out of range"),undefined):F.$array[F.$offset+a]);if(!(b===$throwNilPointerError)){$s=3;continue;}$s=4;continue;case 3:c=b();$s=5;case 5:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$s=-1;return c;case 4:case 2:$panic(new $String("crypto: requested hash function #"+C.Itoa((a>>0))+" is unavailable"));$s=-1;return $ifaceNil;}return;}if($f===undefined){$f={$blk:D.prototype.New};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(D).prototype.New=function(){return new D(this.$get()).New();};D.prototype.Available=function(){var $ptr,a;a=this.$val;return a<16&&!(((a<0||a>=F.$length)?($throwRuntimeError("index out of range"),undefined):F.$array[F.$offset+a])===$throwNilPointerError);};$ptrType(D).prototype.Available=function(){return new D(this.$get()).Available();};G=function(a,b){var $ptr,a,b;if(a>=16){$panic(new $String("crypto: RegisterHash of unknown hash function"));}((a<0||a>=F.$length)?($throwRuntimeError("index out of range"),undefined):F.$array[F.$offset+a]=b);};$pkg.RegisterHash=G;D.methods=[{prop:"HashFunc",name:"HashFunc",pkg:"",typ:$funcType([],[D],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int],false)},{prop:"New",name:"New",pkg:"",typ:$funcType([],[A.Hash],false)},{prop:"Available",name:"Available",pkg:"",typ:$funcType([],[$Bool],false)}];$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}E=new N([0,16,16,20,28,32,48,64,36,20,28,32,48,64,28,32]);F=$makeSlice(P,16);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["crypto/md5"]=(function(){var $pkg={},$init,A,B,C,E,L,M,N,O,P,Q,R,S,H,K,D,F,I,J;A=$packages["crypto"];B=$packages["hash"];C=$packages["runtime"];E=$pkg.digest=$newType(0,$kindStruct,"md5.digest",true,"crypto/md5",false,function(s_,x_,nx_,len_){this.$val=this;if(arguments.length===0){this.s=L.zero();this.x=M.zero();this.nx=0;this.len=new $Uint64(0,0);return;}this.s=s_;this.x=x_;this.nx=nx_;this.len=len_;});L=$arrayType($Uint32,4);M=$arrayType($Uint8,64);N=$sliceType($Uint8);O=$arrayType($Uint8,16);P=$arrayType($Uint8,4);Q=$arrayType($Uint32,16);R=$ptrType(Q);S=$ptrType(E);D=function(){var $ptr;A.RegisterHash(2,F);};E.ptr.prototype.Reset=function(){var $ptr,a;a=this;a.s[0]=1732584193;a.s[1]=4023233417;a.s[2]=2562383102;a.s[3]=271733878;a.nx=0;a.len=new $Uint64(0,0);};E.prototype.Reset=function(){return this.$val.Reset();};F=function(){var $ptr,a;a=new E.ptr(L.zero(),M.zero(),0,new $Uint64(0,0));a.Reset();return a;};$pkg.New=F;E.ptr.prototype.Size=function(){var $ptr,a;a=this;return 16;};E.prototype.Size=function(){return this.$val.Size();};E.ptr.prototype.BlockSize=function(){var $ptr,a;a=this;return 64;};E.prototype.BlockSize=function(){return this.$val.BlockSize();};E.ptr.prototype.Write=function(a){var $ptr,a,b,c,d,e,f,g,h,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=0;c=$ifaceNil;d=this;b=a.$length;d.len=(e=d.len,f=new $Uint64(0,b),new $Uint64(e.$high+f.$high,e.$low+f.$low));if(d.nx>0){$s=1;continue;}$s=2;continue;case 1:g=$copySlice($subslice(new N(d.x),d.nx),a);d.nx=d.nx+(g)>>0;if(d.nx===64){$s=3;continue;}$s=4;continue;case 3:$r=K(d,new N(d.x));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d.nx=0;case 4:a=$subslice(a,g);case 2:if(a.$length>=64){$s=6;continue;}$s=7;continue;case 6:h=(a.$length&~63)>>0;$r=K(d,$subslice(a,0,h));$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}a=$subslice(a,h);case 7:if(a.$length>0){d.nx=$copySlice(new N(d.x),a);}$s=-1;return[b,c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.Write};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};E.prototype.Write=function(a){return this.$val.Write(a);};E.ptr.prototype.Sum=function(a){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=$clone(b,E);d=c.checkSum();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=$clone(d,O);$s=-1;return $appendSlice(a,new N(e));}return;}if($f===undefined){$f={$blk:E.ptr.prototype.Sum};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};E.prototype.Sum=function(a){return this.$val.Sum(a);};E.ptr.prototype.checkSum=function(){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.len;c=M.zero();c[0]=128;if((d=$div64(b,new $Uint64(0,64),true),(d.$high<0||(d.$high===0&&d.$low<56)))){$s=1;continue;}$s=2;continue;case 1:f=a.Write($subslice(new N(c),0,$flatten64((e=$div64(b,new $Uint64(0,64),true),new $Uint64(0-e.$high,56-e.$low)))));$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;$s=3;continue;case 2:h=a.Write($subslice(new N(c),0,$flatten64((g=$div64(b,new $Uint64(0,64),true),new $Uint64(0-g.$high,120-g.$low)))));$s=5;case 5:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}h;case 3:b=$shiftLeft64(b,(3));i=0;while(true){if(!(i<8)){break;}((i<0||i>=c.length)?($throwRuntimeError("index out of range"),undefined):c[i]=($shiftRightUint64(b,((8*i>>>0))).$low<<24>>>24));i=i+(1)>>>0;}j=a.Write($subslice(new N(c),0,8));$s=6;case 6:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;if(!((a.nx===0))){$panic(new $String("d.nx != 0"));}k=O.zero();l=a.s;m=0;while(true){if(!(m<4)){break;}n=m;o=((m<0||m>=l.length)?($throwRuntimeError("index out of range"),undefined):l[m]);(p=$imul(n,4),((p<0||p>=k.length)?($throwRuntimeError("index out of range"),undefined):k[p]=(o<<24>>>24)));(q=($imul(n,4))+1>>0,((q<0||q>=k.length)?($throwRuntimeError("index out of range"),undefined):k[q]=((o>>>8>>>0)<<24>>>24)));(r=($imul(n,4))+2>>0,((r<0||r>=k.length)?($throwRuntimeError("index out of range"),undefined):k[r]=((o>>>16>>>0)<<24>>>24)));(s=($imul(n,4))+3>>0,((s<0||s>=k.length)?($throwRuntimeError("index out of range"),undefined):k[s]=((o>>>24>>>0)<<24>>>24)));m++;}$s=-1;return k;}return;}if($f===undefined){$f={$blk:E.ptr.prototype.checkSum};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.$s=$s;$f.$r=$r;return $f;};E.prototype.checkSum=function(){return this.$val.checkSum();};I=function(){var $ptr,a,b;a=67305985;b=$toNativeArray($kindUint8,[1,2,3,4]);H=$equal(a,b,P);};J=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v;c=a.s[0];d=a.s[1];e=a.s[2];f=a.s[3];g=R.nil;h=Q.zero();while(true){if(!(b.$length>=64)){break;}i=c;j=d;k=e;l=f;m=i;n=j;o=k;p=l;if(false){g=$sliceToArray(b);}else if(H&&((($sliceToArray(b)&3)>>>0)===0)){g=$sliceToArray(b);}else{g=h;q=0;r=0;while(true){if(!(r<16)){break;}(v=r&15,g.nilCheck,((v<0||v>=g.length)?($throwRuntimeError("index out of range"),undefined):g[v]=(((((((((q<0||q>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+q])>>>0)|(((s=q+1>>0,((s<0||s>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+s]))>>>0)<<8>>>0))>>>0)|(((t=q+2>>0,((t<0||t>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+t]))>>>0)<<16>>>0))>>>0)|(((u=q+3>>0,((u<0||u>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+u]))>>>0)<<24>>>0))>>>0)));q=q+(4)>>0;r=r+(1)>>0;}}c=c+((((((((((((e^f)>>>0))&d)>>>0))^f)>>>0))+(g.nilCheck,g[0])>>>0)+3614090360>>>0))>>>0;c=(((c<<7>>>0)|(c>>>25>>>0))>>>0)+d>>>0;f=f+((((((((((((d^e)>>>0))&c)>>>0))^e)>>>0))+(g.nilCheck,g[1])>>>0)+3905402710>>>0))>>>0;f=(((f<<12>>>0)|(f>>>20>>>0))>>>0)+c>>>0;e=e+((((((((((((c^d)>>>0))&f)>>>0))^d)>>>0))+(g.nilCheck,g[2])>>>0)+606105819>>>0))>>>0;e=(((e<<17>>>0)|(e>>>15>>>0))>>>0)+f>>>0;d=d+((((((((((((f^c)>>>0))&e)>>>0))^c)>>>0))+(g.nilCheck,g[3])>>>0)+3250441966>>>0))>>>0;d=(((d<<22>>>0)|(d>>>10>>>0))>>>0)+e>>>0;c=c+((((((((((((e^f)>>>0))&d)>>>0))^f)>>>0))+(g.nilCheck,g[4])>>>0)+4118548399>>>0))>>>0;c=(((c<<7>>>0)|(c>>>25>>>0))>>>0)+d>>>0;f=f+((((((((((((d^e)>>>0))&c)>>>0))^e)>>>0))+(g.nilCheck,g[5])>>>0)+1200080426>>>0))>>>0;f=(((f<<12>>>0)|(f>>>20>>>0))>>>0)+c>>>0;e=e+((((((((((((c^d)>>>0))&f)>>>0))^d)>>>0))+(g.nilCheck,g[6])>>>0)+2821735955>>>0))>>>0;e=(((e<<17>>>0)|(e>>>15>>>0))>>>0)+f>>>0;d=d+((((((((((((f^c)>>>0))&e)>>>0))^c)>>>0))+(g.nilCheck,g[7])>>>0)+4249261313>>>0))>>>0;d=(((d<<22>>>0)|(d>>>10>>>0))>>>0)+e>>>0;c=c+((((((((((((e^f)>>>0))&d)>>>0))^f)>>>0))+(g.nilCheck,g[8])>>>0)+1770035416>>>0))>>>0;c=(((c<<7>>>0)|(c>>>25>>>0))>>>0)+d>>>0;f=f+((((((((((((d^e)>>>0))&c)>>>0))^e)>>>0))+(g.nilCheck,g[9])>>>0)+2336552879>>>0))>>>0;f=(((f<<12>>>0)|(f>>>20>>>0))>>>0)+c>>>0;e=e+((((((((((((c^d)>>>0))&f)>>>0))^d)>>>0))+(g.nilCheck,g[10])>>>0)+4294925233>>>0))>>>0;e=(((e<<17>>>0)|(e>>>15>>>0))>>>0)+f>>>0;d=d+((((((((((((f^c)>>>0))&e)>>>0))^c)>>>0))+(g.nilCheck,g[11])>>>0)+2304563134>>>0))>>>0;d=(((d<<22>>>0)|(d>>>10>>>0))>>>0)+e>>>0;c=c+((((((((((((e^f)>>>0))&d)>>>0))^f)>>>0))+(g.nilCheck,g[12])>>>0)+1804603682>>>0))>>>0;c=(((c<<7>>>0)|(c>>>25>>>0))>>>0)+d>>>0;f=f+((((((((((((d^e)>>>0))&c)>>>0))^e)>>>0))+(g.nilCheck,g[13])>>>0)+4254626195>>>0))>>>0;f=(((f<<12>>>0)|(f>>>20>>>0))>>>0)+c>>>0;e=e+((((((((((((c^d)>>>0))&f)>>>0))^d)>>>0))+(g.nilCheck,g[14])>>>0)+2792965006>>>0))>>>0;e=(((e<<17>>>0)|(e>>>15>>>0))>>>0)+f>>>0;d=d+((((((((((((f^c)>>>0))&e)>>>0))^c)>>>0))+(g.nilCheck,g[15])>>>0)+1236535329>>>0))>>>0;d=(((d<<22>>>0)|(d>>>10>>>0))>>>0)+e>>>0;c=c+((((((((((((d^e)>>>0))&f)>>>0))^e)>>>0))+(g.nilCheck,g[1])>>>0)+4129170786>>>0))>>>0;c=(((c<<5>>>0)|(c>>>27>>>0))>>>0)+d>>>0;f=f+((((((((((((c^d)>>>0))&e)>>>0))^d)>>>0))+(g.nilCheck,g[6])>>>0)+3225465664>>>0))>>>0;f=(((f<<9>>>0)|(f>>>23>>>0))>>>0)+c>>>0;e=e+((((((((((((f^c)>>>0))&d)>>>0))^c)>>>0))+(g.nilCheck,g[11])>>>0)+643717713>>>0))>>>0;e=(((e<<14>>>0)|(e>>>18>>>0))>>>0)+f>>>0;d=d+((((((((((((e^f)>>>0))&c)>>>0))^f)>>>0))+(g.nilCheck,g[0])>>>0)+3921069994>>>0))>>>0;d=(((d<<20>>>0)|(d>>>12>>>0))>>>0)+e>>>0;c=c+((((((((((((d^e)>>>0))&f)>>>0))^e)>>>0))+(g.nilCheck,g[5])>>>0)+3593408605>>>0))>>>0;c=(((c<<5>>>0)|(c>>>27>>>0))>>>0)+d>>>0;f=f+((((((((((((c^d)>>>0))&e)>>>0))^d)>>>0))+(g.nilCheck,g[10])>>>0)+38016083>>>0))>>>0;f=(((f<<9>>>0)|(f>>>23>>>0))>>>0)+c>>>0;e=e+((((((((((((f^c)>>>0))&d)>>>0))^c)>>>0))+(g.nilCheck,g[15])>>>0)+3634488961>>>0))>>>0;e=(((e<<14>>>0)|(e>>>18>>>0))>>>0)+f>>>0;d=d+((((((((((((e^f)>>>0))&c)>>>0))^f)>>>0))+(g.nilCheck,g[4])>>>0)+3889429448>>>0))>>>0;d=(((d<<20>>>0)|(d>>>12>>>0))>>>0)+e>>>0;c=c+((((((((((((d^e)>>>0))&f)>>>0))^e)>>>0))+(g.nilCheck,g[9])>>>0)+568446438>>>0))>>>0;c=(((c<<5>>>0)|(c>>>27>>>0))>>>0)+d>>>0;f=f+((((((((((((c^d)>>>0))&e)>>>0))^d)>>>0))+(g.nilCheck,g[14])>>>0)+3275163606>>>0))>>>0;f=(((f<<9>>>0)|(f>>>23>>>0))>>>0)+c>>>0;e=e+((((((((((((f^c)>>>0))&d)>>>0))^c)>>>0))+(g.nilCheck,g[3])>>>0)+4107603335>>>0))>>>0;e=(((e<<14>>>0)|(e>>>18>>>0))>>>0)+f>>>0;d=d+((((((((((((e^f)>>>0))&c)>>>0))^f)>>>0))+(g.nilCheck,g[8])>>>0)+1163531501>>>0))>>>0;d=(((d<<20>>>0)|(d>>>12>>>0))>>>0)+e>>>0;c=c+((((((((((((d^e)>>>0))&f)>>>0))^e)>>>0))+(g.nilCheck,g[13])>>>0)+2850285829>>>0))>>>0;c=(((c<<5>>>0)|(c>>>27>>>0))>>>0)+d>>>0;f=f+((((((((((((c^d)>>>0))&e)>>>0))^d)>>>0))+(g.nilCheck,g[2])>>>0)+4243563512>>>0))>>>0;f=(((f<<9>>>0)|(f>>>23>>>0))>>>0)+c>>>0;e=e+((((((((((((f^c)>>>0))&d)>>>0))^c)>>>0))+(g.nilCheck,g[7])>>>0)+1735328473>>>0))>>>0;e=(((e<<14>>>0)|(e>>>18>>>0))>>>0)+f>>>0;d=d+((((((((((((e^f)>>>0))&c)>>>0))^f)>>>0))+(g.nilCheck,g[12])>>>0)+2368359562>>>0))>>>0;d=(((d<<20>>>0)|(d>>>12>>>0))>>>0)+e>>>0;c=c+((((((((d^e)>>>0)^f)>>>0))+(g.nilCheck,g[5])>>>0)+4294588738>>>0))>>>0;c=(((c<<4>>>0)|(c>>>28>>>0))>>>0)+d>>>0;f=f+((((((((c^d)>>>0)^e)>>>0))+(g.nilCheck,g[8])>>>0)+2272392833>>>0))>>>0;f=(((f<<11>>>0)|(f>>>21>>>0))>>>0)+c>>>0;e=e+((((((((f^c)>>>0)^d)>>>0))+(g.nilCheck,g[11])>>>0)+1839030562>>>0))>>>0;e=(((e<<16>>>0)|(e>>>16>>>0))>>>0)+f>>>0;d=d+((((((((e^f)>>>0)^c)>>>0))+(g.nilCheck,g[14])>>>0)+4259657740>>>0))>>>0;d=(((d<<23>>>0)|(d>>>9>>>0))>>>0)+e>>>0;c=c+((((((((d^e)>>>0)^f)>>>0))+(g.nilCheck,g[1])>>>0)+2763975236>>>0))>>>0;c=(((c<<4>>>0)|(c>>>28>>>0))>>>0)+d>>>0;f=f+((((((((c^d)>>>0)^e)>>>0))+(g.nilCheck,g[4])>>>0)+1272893353>>>0))>>>0;f=(((f<<11>>>0)|(f>>>21>>>0))>>>0)+c>>>0;e=e+((((((((f^c)>>>0)^d)>>>0))+(g.nilCheck,g[7])>>>0)+4139469664>>>0))>>>0;e=(((e<<16>>>0)|(e>>>16>>>0))>>>0)+f>>>0;d=d+((((((((e^f)>>>0)^c)>>>0))+(g.nilCheck,g[10])>>>0)+3200236656>>>0))>>>0;d=(((d<<23>>>0)|(d>>>9>>>0))>>>0)+e>>>0;c=c+((((((((d^e)>>>0)^f)>>>0))+(g.nilCheck,g[13])>>>0)+681279174>>>0))>>>0;c=(((c<<4>>>0)|(c>>>28>>>0))>>>0)+d>>>0;f=f+((((((((c^d)>>>0)^e)>>>0))+(g.nilCheck,g[0])>>>0)+3936430074>>>0))>>>0;f=(((f<<11>>>0)|(f>>>21>>>0))>>>0)+c>>>0;e=e+((((((((f^c)>>>0)^d)>>>0))+(g.nilCheck,g[3])>>>0)+3572445317>>>0))>>>0;e=(((e<<16>>>0)|(e>>>16>>>0))>>>0)+f>>>0;d=d+((((((((e^f)>>>0)^c)>>>0))+(g.nilCheck,g[6])>>>0)+76029189>>>0))>>>0;d=(((d<<23>>>0)|(d>>>9>>>0))>>>0)+e>>>0;c=c+((((((((d^e)>>>0)^f)>>>0))+(g.nilCheck,g[9])>>>0)+3654602809>>>0))>>>0;c=(((c<<4>>>0)|(c>>>28>>>0))>>>0)+d>>>0;f=f+((((((((c^d)>>>0)^e)>>>0))+(g.nilCheck,g[12])>>>0)+3873151461>>>0))>>>0;f=(((f<<11>>>0)|(f>>>21>>>0))>>>0)+c>>>0;e=e+((((((((f^c)>>>0)^d)>>>0))+(g.nilCheck,g[15])>>>0)+530742520>>>0))>>>0;e=(((e<<16>>>0)|(e>>>16>>>0))>>>0)+f>>>0;d=d+((((((((e^f)>>>0)^c)>>>0))+(g.nilCheck,g[2])>>>0)+3299628645>>>0))>>>0;d=(((d<<23>>>0)|(d>>>9>>>0))>>>0)+e>>>0;c=c+((((((e^(((d|(~f>>>0))>>>0)))>>>0))+(g.nilCheck,g[0])>>>0)+4096336452>>>0))>>>0;c=(((c<<6>>>0)|(c>>>26>>>0))>>>0)+d>>>0;f=f+((((((d^(((c|(~e>>>0))>>>0)))>>>0))+(g.nilCheck,g[7])>>>0)+1126891415>>>0))>>>0;f=(((f<<10>>>0)|(f>>>22>>>0))>>>0)+c>>>0;e=e+((((((c^(((f|(~d>>>0))>>>0)))>>>0))+(g.nilCheck,g[14])>>>0)+2878612391>>>0))>>>0;e=(((e<<15>>>0)|(e>>>17>>>0))>>>0)+f>>>0;d=d+((((((f^(((e|(~c>>>0))>>>0)))>>>0))+(g.nilCheck,g[5])>>>0)+4237533241>>>0))>>>0;d=(((d<<21>>>0)|(d>>>11>>>0))>>>0)+e>>>0;c=c+((((((e^(((d|(~f>>>0))>>>0)))>>>0))+(g.nilCheck,g[12])>>>0)+1700485571>>>0))>>>0;c=(((c<<6>>>0)|(c>>>26>>>0))>>>0)+d>>>0;f=f+((((((d^(((c|(~e>>>0))>>>0)))>>>0))+(g.nilCheck,g[3])>>>0)+2399980690>>>0))>>>0;f=(((f<<10>>>0)|(f>>>22>>>0))>>>0)+c>>>0;e=e+((((((c^(((f|(~d>>>0))>>>0)))>>>0))+(g.nilCheck,g[10])>>>0)+4293915773>>>0))>>>0;e=(((e<<15>>>0)|(e>>>17>>>0))>>>0)+f>>>0;d=d+((((((f^(((e|(~c>>>0))>>>0)))>>>0))+(g.nilCheck,g[1])>>>0)+2240044497>>>0))>>>0;d=(((d<<21>>>0)|(d>>>11>>>0))>>>0)+e>>>0;c=c+((((((e^(((d|(~f>>>0))>>>0)))>>>0))+(g.nilCheck,g[8])>>>0)+1873313359>>>0))>>>0;c=(((c<<6>>>0)|(c>>>26>>>0))>>>0)+d>>>0;f=f+((((((d^(((c|(~e>>>0))>>>0)))>>>0))+(g.nilCheck,g[15])>>>0)+4264355552>>>0))>>>0;f=(((f<<10>>>0)|(f>>>22>>>0))>>>0)+c>>>0;e=e+((((((c^(((f|(~d>>>0))>>>0)))>>>0))+(g.nilCheck,g[6])>>>0)+2734768916>>>0))>>>0;e=(((e<<15>>>0)|(e>>>17>>>0))>>>0)+f>>>0;d=d+((((((f^(((e|(~c>>>0))>>>0)))>>>0))+(g.nilCheck,g[13])>>>0)+1309151649>>>0))>>>0;d=(((d<<21>>>0)|(d>>>11>>>0))>>>0)+e>>>0;c=c+((((((e^(((d|(~f>>>0))>>>0)))>>>0))+(g.nilCheck,g[4])>>>0)+4149444226>>>0))>>>0;c=(((c<<6>>>0)|(c>>>26>>>0))>>>0)+d>>>0;f=f+((((((d^(((c|(~e>>>0))>>>0)))>>>0))+(g.nilCheck,g[11])>>>0)+3174756917>>>0))>>>0;f=(((f<<10>>>0)|(f>>>22>>>0))>>>0)+c>>>0;e=e+((((((c^(((f|(~d>>>0))>>>0)))>>>0))+(g.nilCheck,g[2])>>>0)+718787259>>>0))>>>0;e=(((e<<15>>>0)|(e>>>17>>>0))>>>0)+f>>>0;d=d+((((((f^(((e|(~c>>>0))>>>0)))>>>0))+(g.nilCheck,g[9])>>>0)+3951481745>>>0))>>>0;d=(((d<<21>>>0)|(d>>>11>>>0))>>>0)+e>>>0;c=c+(m)>>>0;d=d+(n)>>>0;e=e+(o)>>>0;f=f+(p)>>>0;b=$subslice(b,64);}a.s[0]=c;a.s[1]=d;a.s[2]=e;a.s[3]=f;};S.methods=[{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([],[],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int],false)},{prop:"BlockSize",name:"BlockSize",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([N],[$Int,$error],false)},{prop:"Sum",name:"Sum",pkg:"",typ:$funcType([N],[N],false)},{prop:"checkSum",name:"checkSum",pkg:"crypto/md5",typ:$funcType([],[O],false)}];E.init("crypto/md5",[{prop:"s",name:"s",exported:false,typ:L,tag:""},{prop:"x",name:"x",exported:false,typ:M,tag:""},{prop:"nx",name:"nx",exported:false,typ:$Int,tag:""},{prop:"len",name:"len",exported:false,typ:$Uint64,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}H=false;K=J;D();I();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["crypto/sha1"]=(function(){var $pkg={},$init,A,B,D,I,J,K,L,M,N,O,H,C,E,G;A=$packages["crypto"];B=$packages["hash"];D=$pkg.digest=$newType(0,$kindStruct,"sha1.digest",true,"crypto/sha1",false,function(h_,x_,nx_,len_){this.$val=this;if(arguments.length===0){this.h=I.zero();this.x=J.zero();this.nx=0;this.len=new $Uint64(0,0);return;}this.h=h_;this.x=x_;this.nx=nx_;this.len=len_;});I=$arrayType($Uint32,5);J=$arrayType($Uint8,64);K=$sliceType($Uint8);L=$arrayType($Uint8,20);M=$arrayType($Uint8,8);N=$arrayType($Uint32,16);O=$ptrType(D);C=function(){var $ptr;A.RegisterHash(3,E);};D.ptr.prototype.Reset=function(){var $ptr,a;a=this;a.h[0]=1732584193;a.h[1]=4023233417;a.h[2]=2562383102;a.h[3]=271733878;a.h[4]=3285377520;a.nx=0;a.len=new $Uint64(0,0);};D.prototype.Reset=function(){return this.$val.Reset();};E=function(){var $ptr,a;a=new D.ptr(I.zero(),J.zero(),0,new $Uint64(0,0));a.Reset();return a;};$pkg.New=E;D.ptr.prototype.Size=function(){var $ptr,a;a=this;return 20;};D.prototype.Size=function(){return this.$val.Size();};D.ptr.prototype.BlockSize=function(){var $ptr,a;a=this;return 64;};D.prototype.BlockSize=function(){return this.$val.BlockSize();};D.ptr.prototype.Write=function(a){var $ptr,a,b,c,d,e,f,g,h,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=0;c=$ifaceNil;d=this;b=a.$length;d.len=(e=d.len,f=new $Uint64(0,b),new $Uint64(e.$high+f.$high,e.$low+f.$low));if(d.nx>0){$s=1;continue;}$s=2;continue;case 1:g=$copySlice($subslice(new K(d.x),d.nx),a);d.nx=d.nx+(g)>>0;if(d.nx===64){$s=3;continue;}$s=4;continue;case 3:$r=H(d,new K(d.x));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d.nx=0;case 4:a=$subslice(a,g);case 2:if(a.$length>=64){$s=6;continue;}$s=7;continue;case 6:h=(a.$length&~63)>>0;$r=H(d,$subslice(a,0,h));$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}a=$subslice(a,h);case 7:if(a.$length>0){d.nx=$copySlice(new K(d.x),a);}$s=-1;return[b,c];}return;}if($f===undefined){$f={$blk:D.ptr.prototype.Write};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};D.prototype.Write=function(a){return this.$val.Write(a);};D.ptr.prototype.Sum=function(a){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=$clone(b,D);d=c.checkSum();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=$clone(d,L);$s=-1;return $appendSlice(a,new K(e));}return;}if($f===undefined){$f={$blk:D.ptr.prototype.Sum};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};D.prototype.Sum=function(a){return this.$val.Sum(a);};D.ptr.prototype.checkSum=function(){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.len;c=J.zero();c[0]=128;if((d=$div64(b,new $Uint64(0,64),true),(d.$high<0||(d.$high===0&&d.$low<56)))){$s=1;continue;}$s=2;continue;case 1:f=a.Write($subslice(new K(c),0,$flatten64((e=$div64(b,new $Uint64(0,64),true),new $Uint64(0-e.$high,56-e.$low)))));$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;$s=3;continue;case 2:h=a.Write($subslice(new K(c),0,$flatten64((g=$div64(b,new $Uint64(0,64),true),new $Uint64(0-g.$high,120-g.$low)))));$s=5;case 5:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}h;case 3:b=$shiftLeft64(b,(3));i=0;while(true){if(!(i<8)){break;}((i<0||i>=c.length)?($throwRuntimeError("index out of range"),undefined):c[i]=($shiftRightUint64(b,((56-(8*i>>>0)>>>0))).$low<<24>>>24));i=i+(1)>>>0;}j=a.Write($subslice(new K(c),0,8));$s=6;case 6:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;if(!((a.nx===0))){$panic(new $String("d.nx != 0"));}k=L.zero();l=a.h;m=0;while(true){if(!(m<5)){break;}n=m;o=((m<0||m>=l.length)?($throwRuntimeError("index out of range"),undefined):l[m]);(p=$imul(n,4),((p<0||p>=k.length)?($throwRuntimeError("index out of range"),undefined):k[p]=((o>>>24>>>0)<<24>>>24)));(q=($imul(n,4))+1>>0,((q<0||q>=k.length)?($throwRuntimeError("index out of range"),undefined):k[q]=((o>>>16>>>0)<<24>>>24)));(r=($imul(n,4))+2>>0,((r<0||r>=k.length)?($throwRuntimeError("index out of range"),undefined):k[r]=((o>>>8>>>0)<<24>>>24)));(s=($imul(n,4))+3>>0,((s<0||s>=k.length)?($throwRuntimeError("index out of range"),undefined):k[s]=(o<<24>>>24)));m++;}$s=-1;return k;}return;}if($f===undefined){$f={$blk:D.ptr.prototype.checkSum};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.$s=$s;$f.$r=$r;return $f;};D.prototype.checkSum=function(){return this.$val.checkSum();};D.ptr.prototype.ConstantTimeSum=function(a){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=$clone(b,D);d=c.constSum();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=$clone(d,L);$s=-1;return $appendSlice(a,new K(e));}return;}if($f===undefined){$f={$blk:D.ptr.prototype.ConstantTimeSum};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};D.prototype.ConstantTimeSum=function(a){return this.$val.ConstantTimeSum(a);};D.ptr.prototype.constSum=function(){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=M.zero();c=$shiftLeft64(a.len,3);d=0;while(true){if(!(d<8)){break;}((d<0||d>=b.length)?($throwRuntimeError("index out of range"),undefined):b[d]=($shiftRightUint64(c,((56-(8*d>>>0)>>>0))).$low<<24>>>24));d=d+(1)>>>0;}e=(a.nx<<24>>>24);f=e-56<<24>>>24;g=(((f<<24>>24)>>7<<24>>24)<<24>>>24);h=128;i=0;while(true){if(!(i<64)){break;}j=((((i-e<<24>>>24)<<24>>24)>>7<<24>>24)<<24>>>24);(l=a.x,((i<0||i>=l.length)?($throwRuntimeError("index out of range"),undefined):l[i]=((((((~j<<24>>>24)&h)>>>0))|(((j&(k=a.x,((i<0||i>=k.length)?($throwRuntimeError("index out of range"),undefined):k[i])))>>>0)))>>>0)));h=(h&(j))>>>0;if(i>=56){(o=a.x,((i<0||i>=o.length)?($throwRuntimeError("index out of range"),undefined):o[i]=(((m=a.x,((i<0||i>=m.length)?($throwRuntimeError("index out of range"),undefined):m[i]))|(((g&(n=i-56<<24>>>24,((n<0||n>=b.length)?($throwRuntimeError("index out of range"),undefined):b[n])))>>>0)))>>>0)));}i=i+(1)<<24>>>24;}$r=H(a,new K(a.x));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}p=L.zero();q=a.h;r=0;while(true){if(!(r<5)){break;}s=r;t=((r<0||r>=q.length)?($throwRuntimeError("index out of range"),undefined):q[r]);(u=$imul(s,4),((u<0||u>=p.length)?($throwRuntimeError("index out of range"),undefined):p[u]=((g&((t>>>24>>>0)<<24>>>24))>>>0)));(v=($imul(s,4))+1>>0,((v<0||v>=p.length)?($throwRuntimeError("index out of range"),undefined):p[v]=((g&((t>>>16>>>0)<<24>>>24))>>>0)));(w=($imul(s,4))+2>>0,((w<0||w>=p.length)?($throwRuntimeError("index out of range"),undefined):p[w]=((g&((t>>>8>>>0)<<24>>>24))>>>0)));(x=($imul(s,4))+3>>0,((x<0||x>=p.length)?($throwRuntimeError("index out of range"),undefined):p[x]=((g&(t<<24>>>24))>>>0)));r++;}y=0;while(true){if(!(y<64)){break;}if(y<56){(z=a.x,((y<0||y>=z.length)?($throwRuntimeError("index out of range"),undefined):z[y]=h));h=0;}else{(ab=a.x,((y<0||y>=ab.length)?($throwRuntimeError("index out of range"),undefined):ab[y]=(aa=y-56<<24>>>24,((aa<0||aa>=b.length)?($throwRuntimeError("index out of range"),undefined):b[aa]))));}y=y+(1)<<24>>>24;}$r=H(a,new K(a.x));$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}ac=a.h;ad=0;while(true){if(!(ad<5)){break;}ae=ad;af=((ad<0||ad>=ac.length)?($throwRuntimeError("index out of range"),undefined):ac[ad]);ag=$imul(ae,4);((ag<0||ag>=p.length)?($throwRuntimeError("index out of range"),undefined):p[ag]=((((ag<0||ag>=p.length)?($throwRuntimeError("index out of range"),undefined):p[ag])|((((~g<<24>>>24)&((af>>>24>>>0)<<24>>>24))>>>0)))>>>0));ah=($imul(ae,4))+1>>0;((ah<0||ah>=p.length)?($throwRuntimeError("index out of range"),undefined):p[ah]=((((ah<0||ah>=p.length)?($throwRuntimeError("index out of range"),undefined):p[ah])|((((~g<<24>>>24)&((af>>>16>>>0)<<24>>>24))>>>0)))>>>0));ai=($imul(ae,4))+2>>0;((ai<0||ai>=p.length)?($throwRuntimeError("index out of range"),undefined):p[ai]=((((ai<0||ai>=p.length)?($throwRuntimeError("index out of range"),undefined):p[ai])|((((~g<<24>>>24)&((af>>>8>>>0)<<24>>>24))>>>0)))>>>0));aj=($imul(ae,4))+3>>0;((aj<0||aj>=p.length)?($throwRuntimeError("index out of range"),undefined):p[aj]=((((aj<0||aj>=p.length)?($throwRuntimeError("index out of range"),undefined):p[aj])|((((~g<<24>>>24)&(af<<24>>>24))>>>0)))>>>0));ad++;}$s=-1;return p;}return;}if($f===undefined){$f={$blk:D.ptr.prototype.constSum};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};D.prototype.constSum=function(){return this.$val.constSum();};G=function(a,b){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,c,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,cu,cv,cw,cx,cy,cz,d,da,db,dc,dd,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;c=N.zero();d=a.h[0];e=a.h[1];f=a.h[2];g=a.h[3];h=a.h[4];i=d;j=e;k=f;l=g;m=h;while(true){if(!(b.$length>=64)){break;}n=0;while(true){if(!(n<16)){break;}o=$imul(n,4);((n<0||n>=c.length)?($throwRuntimeError("index out of range"),undefined):c[n]=((((((((((o<0||o>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+o])>>>0)<<24>>>0)|(((p=o+1>>0,((p<0||p>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+p]))>>>0)<<16>>>0))>>>0)|(((q=o+2>>0,((q<0||q>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+q]))>>>0)<<8>>>0))>>>0)|((r=o+3>>0,((r<0||r>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+r]))>>>0))>>>0));n=n+(1)>>0;}s=i;t=j;u=k;v=l;w=m;x=s;y=t;z=u;aa=v;ab=w;ac=0;while(true){if(!(ac<16)){break;}ad=(((y&z)>>>0)|((((~y>>>0))&aa)>>>0))>>>0;ae=((x<<5>>>0)|(x>>>27>>>0))>>>0;af=((y<<30>>>0)|(y>>>2>>>0))>>>0;ah=(((ae+ad>>>0)+ab>>>0)+(ag=ac&15,((ag<0||ag>=c.length)?($throwRuntimeError("index out of range"),undefined):c[ag]))>>>0)+1518500249>>>0;ai=ah;aj=x;ak=af;al=z;am=aa;x=ai;y=aj;z=ak;aa=al;ab=am;ac=ac+(1)>>0;}while(true){if(!(ac<20)){break;}ar=((((((an=((ac-3>>0))&15,((an<0||an>=c.length)?($throwRuntimeError("index out of range"),undefined):c[an]))^(ao=((ac-8>>0))&15,((ao<0||ao>=c.length)?($throwRuntimeError("index out of range"),undefined):c[ao])))>>>0)^(ap=((ac-14>>0))&15,((ap<0||ap>=c.length)?($throwRuntimeError("index out of range"),undefined):c[ap])))>>>0)^(aq=(ac)&15,((aq<0||aq>=c.length)?($throwRuntimeError("index out of range"),undefined):c[aq])))>>>0;(as=ac&15,((as<0||as>=c.length)?($throwRuntimeError("index out of range"),undefined):c[as]=(((ar<<1>>>0)|(ar>>>31>>>0))>>>0)));at=(((y&z)>>>0)|((((~y>>>0))&aa)>>>0))>>>0;au=((x<<5>>>0)|(x>>>27>>>0))>>>0;av=((y<<30>>>0)|(y>>>2>>>0))>>>0;ax=(((au+at>>>0)+ab>>>0)+(aw=ac&15,((aw<0||aw>=c.length)?($throwRuntimeError("index out of range"),undefined):c[aw]))>>>0)+1518500249>>>0;ay=ax;az=x;ba=av;bb=z;bc=aa;x=ay;y=az;z=ba;aa=bb;ab=bc;ac=ac+(1)>>0;}while(true){if(!(ac<40)){break;}bh=((((((bd=((ac-3>>0))&15,((bd<0||bd>=c.length)?($throwRuntimeError("index out of range"),undefined):c[bd]))^(be=((ac-8>>0))&15,((be<0||be>=c.length)?($throwRuntimeError("index out of range"),undefined):c[be])))>>>0)^(bf=((ac-14>>0))&15,((bf<0||bf>=c.length)?($throwRuntimeError("index out of range"),undefined):c[bf])))>>>0)^(bg=(ac)&15,((bg<0||bg>=c.length)?($throwRuntimeError("index out of range"),undefined):c[bg])))>>>0;(bi=ac&15,((bi<0||bi>=c.length)?($throwRuntimeError("index out of range"),undefined):c[bi]=(((bh<<1>>>0)|(bh>>>31>>>0))>>>0)));bj=(((y^z)>>>0)^aa)>>>0;bk=((x<<5>>>0)|(x>>>27>>>0))>>>0;bl=((y<<30>>>0)|(y>>>2>>>0))>>>0;bn=(((bk+bj>>>0)+ab>>>0)+(bm=ac&15,((bm<0||bm>=c.length)?($throwRuntimeError("index out of range"),undefined):c[bm]))>>>0)+1859775393>>>0;bo=bn;bp=x;bq=bl;br=z;bs=aa;x=bo;y=bp;z=bq;aa=br;ab=bs;ac=ac+(1)>>0;}while(true){if(!(ac<60)){break;}bx=((((((bt=((ac-3>>0))&15,((bt<0||bt>=c.length)?($throwRuntimeError("index out of range"),undefined):c[bt]))^(bu=((ac-8>>0))&15,((bu<0||bu>=c.length)?($throwRuntimeError("index out of range"),undefined):c[bu])))>>>0)^(bv=((ac-14>>0))&15,((bv<0||bv>=c.length)?($throwRuntimeError("index out of range"),undefined):c[bv])))>>>0)^(bw=(ac)&15,((bw<0||bw>=c.length)?($throwRuntimeError("index out of range"),undefined):c[bw])))>>>0;(by=ac&15,((by<0||by>=c.length)?($throwRuntimeError("index out of range"),undefined):c[by]=(((bx<<1>>>0)|(bx>>>31>>>0))>>>0)));bz=(((((((y|z)>>>0))&aa)>>>0))|(((y&z)>>>0)))>>>0;ca=((x<<5>>>0)|(x>>>27>>>0))>>>0;cb=((y<<30>>>0)|(y>>>2>>>0))>>>0;cd=(((ca+bz>>>0)+ab>>>0)+(cc=ac&15,((cc<0||cc>=c.length)?($throwRuntimeError("index out of range"),undefined):c[cc]))>>>0)+2400959708>>>0;ce=cd;cf=x;cg=cb;ch=z;ci=aa;x=ce;y=cf;z=cg;aa=ch;ab=ci;ac=ac+(1)>>0;}while(true){if(!(ac<80)){break;}cn=((((((cj=((ac-3>>0))&15,((cj<0||cj>=c.length)?($throwRuntimeError("index out of range"),undefined):c[cj]))^(ck=((ac-8>>0))&15,((ck<0||ck>=c.length)?($throwRuntimeError("index out of range"),undefined):c[ck])))>>>0)^(cl=((ac-14>>0))&15,((cl<0||cl>=c.length)?($throwRuntimeError("index out of range"),undefined):c[cl])))>>>0)^(cm=(ac)&15,((cm<0||cm>=c.length)?($throwRuntimeError("index out of range"),undefined):c[cm])))>>>0;(co=ac&15,((co<0||co>=c.length)?($throwRuntimeError("index out of range"),undefined):c[co]=(((cn<<1>>>0)|(cn>>>31>>>0))>>>0)));cp=(((y^z)>>>0)^aa)>>>0;cq=((x<<5>>>0)|(x>>>27>>>0))>>>0;cr=((y<<30>>>0)|(y>>>2>>>0))>>>0;ct=(((cq+cp>>>0)+ab>>>0)+(cs=ac&15,((cs<0||cs>=c.length)?($throwRuntimeError("index out of range"),undefined):c[cs]))>>>0)+3395469782>>>0;cu=ct;cv=x;cw=cr;cx=z;cy=aa;x=cu;y=cv;z=cw;aa=cx;ab=cy;ac=ac+(1)>>0;}i=i+(x)>>>0;j=j+(y)>>>0;k=k+(z)>>>0;l=l+(aa)>>>0;m=m+(ab)>>>0;b=$subslice(b,64);}cz=i;da=j;db=k;dc=l;dd=m;a.h[0]=cz;a.h[1]=da;a.h[2]=db;a.h[3]=dc;a.h[4]=dd;};O.methods=[{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([],[],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int],false)},{prop:"BlockSize",name:"BlockSize",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([K],[$Int,$error],false)},{prop:"Sum",name:"Sum",pkg:"",typ:$funcType([K],[K],false)},{prop:"checkSum",name:"checkSum",pkg:"crypto/sha1",typ:$funcType([],[L],false)},{prop:"ConstantTimeSum",name:"ConstantTimeSum",pkg:"",typ:$funcType([K],[K],false)},{prop:"constSum",name:"constSum",pkg:"crypto/sha1",typ:$funcType([],[L],false)}];D.init("crypto/sha1",[{prop:"h",name:"h",exported:false,typ:I,tag:""},{prop:"x",name:"x",exported:false,typ:J,tag:""},{prop:"nx",name:"nx",exported:false,typ:$Int,tag:""},{prop:"len",name:"len",exported:false,typ:$Uint64,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}H=G;C();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["database/sql/driver"]=(function(){var $pkg={},$init,A,B,D,C,E,F,G,AJ,AU,AS,a;A=$packages["context"];B=$packages["errors"];D=$packages["fmt"];C=$packages["reflect"];E=$packages["strconv"];F=$packages["time"];G=$pkg.Value=$newType(8,$kindInterface,"driver.Value",true,"database/sql/driver",true,null);AJ=$pkg.Valuer=$newType(8,$kindInterface,"driver.Valuer",true,"database/sql/driver",true,null);AU=$ptrType(AJ);G.init([]);AJ.init([{prop:"Value",name:"Value",pkg:"",typ:$funcType([],[G,$error],false)}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$pkg.ErrSkip=B.New("driver: skip fast-path; continue as if unimplemented");$pkg.ErrBadConn=B.New("driver: bad connection");a=C.TypeOf(AU.nil).Elem();$s=7;case 7:if($c){$c=false;a=a.$blk();}if(a&&a.$blk!==undefined){break s;}AS=a;}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["encoding/hex"]=(function(){var $pkg={},$init,A,B,C,D,H,R,S,E,F,G,J,K,L;A=$packages["bytes"];B=$packages["errors"];C=$packages["fmt"];D=$packages["io"];H=$pkg.InvalidByteError=$newType(1,$kindUint8,"hex.InvalidByteError",true,"encoding/hex",true,null);R=$sliceType($emptyInterface);S=$sliceType($Uint8);F=function(a){var $ptr,a;return $imul(a,2);};$pkg.EncodedLen=F;G=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j;c=b;d=0;while(true){if(!(d<c.$length)){break;}e=d;f=((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]);(h=$imul(e,2),((h<0||h>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+h]=(g=f>>>4<<24>>>24,((g<0||g>=E.length)?($throwRuntimeError("index out of range"),undefined):E[g]))));(j=($imul(e,2))+1>>0,((j<0||j>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+j]=(i=(f&15)>>>0,((i<0||i>=E.length)?($throwRuntimeError("index out of range"),undefined):E[i]))));d++;}return $imul(b.$length,2);};$pkg.Encode=G;H.prototype.Error=function(){var $ptr,a,b,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this.$val;b=C.Sprintf("encoding/hex: invalid byte: %#U",new R([new $Int32((a>>0))]));$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}$s=-1;return b;}return;}if($f===undefined){$f={$blk:H.prototype.Error};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(H).prototype.Error=function(){return new H(this.$get()).Error();};J=function(a,b){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;if((c=b.$length%2,c===c?c:$throwRuntimeError("integer divide by zero"))===1){return[0,$pkg.ErrLength];}d=0;while(true){if(!(d<(e=b.$length/2,(e===e&&e!==1/0&&e!==-1/0)?e>>0:$throwRuntimeError("integer divide by zero")))){break;}f=K((g=$imul(d,2),((g<0||g>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+g])));h=f[0];i=f[1];if(!i){return[0,new H(((j=$imul(d,2),((j<0||j>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+j]))<<24>>>24))];}k=K((l=($imul(d,2))+1>>0,((l<0||l>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+l])));m=k[0];i=k[1];if(!i){return[0,new H(((n=($imul(d,2))+1>>0,((n<0||n>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+n]))<<24>>>24))];}((d<0||d>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+d]=((((h<<4<<24>>>24))|m)>>>0));d=d+(1)>>0;}return[(o=b.$length/2,(o===o&&o!==1/0&&o!==-1/0)?o>>0:$throwRuntimeError("integer divide by zero")),$ifaceNil];};$pkg.Decode=J;K=function(a){var $ptr,a;if(48<=a&&a<=57){return[a-48<<24>>>24,true];}else if(97<=a&&a<=102){return[(a-97<<24>>>24)+10<<24>>>24,true];}else if(65<=a&&a<=70){return[(a-65<<24>>>24)+10<<24>>>24,true];}return[0,false];};L=function(a){var $ptr,a,b;b=$makeSlice(S,F(a.$length));G(b,a);return $bytesToString(b);};$pkg.EncodeToString=L;H.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}E=$toNativeArray($kindUint8,[48,49,50,51,52,53,54,55,56,57,97,98,99,100,101,102]);$pkg.ErrLength=B.New("encoding/hex: odd length hex string");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["net"]=(function(){var $pkg={},$init,E,A,C,I,N,L,K,F,G,D,H,M,B,J,AB,AC,AF,CZ,DB,DC,DD,DE,DF,DG,DH,DI,DJ,FV,FW,GD,GQ,GR,GS,HL,JE,JJ,JW,KA,KB,KD,KE,KY,MK,OV,OY,PD,PE,PF,PH,PO,PU,PV,QA,QB,QD,QE,QF,QG,QR,QT,QX,QY,QZ,RA,RB,RC,RD,RL,RO,RR,RS,RU,RV,RX,SK,SN,SS,ST,SU,SV,SY,AD,DK,FA,FQ,FR,FS,FT,FU,FX,GE,GU,GY,GZ,HA,HV,HW,HX,JG,JN,JQ,JR,JT,JU,JX,KI,KM,g,h,i,j,k,l,m,n,o,O,Q,R,S,U,AE,AG,AK,GB,GH,GI,GJ,GK,GL,GM,GN,GO,GP,GT,GV,GW,GX,HB,HC,HD,HE,HF,HG,HH,HI,HJ,HK,ID,IE,JI,KZ,LB,LC,LE,LF,LG,LI,LJ,LL;E=$packages["context"];A=$packages["errors"];C=$packages["github.com/gopherjs/gopherjs/js"];I=$packages["internal/nettrace"];N=$packages["internal/singleflight"];L=$packages["io"];K=$packages["math/rand"];F=$packages["os"];G=$packages["runtime"];D=$packages["sort"];H=$packages["sync"];M=$packages["sync/atomic"];B=$packages["syscall"];J=$packages["time"];AB=$pkg.policyTableEntry=$newType(0,$kindStruct,"net.policyTableEntry",true,"net",false,function(Prefix_,Precedence_,Label_){this.$val=this;if(arguments.length===0){this.Prefix=PH.nil;this.Precedence=0;this.Label=0;return;}this.Prefix=Prefix_;this.Precedence=Precedence_;this.Label=Label_;});AC=$pkg.policyTable=$newType(12,$kindSlice,"net.policyTable",true,"net",false,null);AF=$pkg.byMaskLength=$newType(12,$kindSlice,"net.byMaskLength",true,"net",false,null);CZ=$pkg.dnsRR_Header=$newType(0,$kindStruct,"net.dnsRR_Header",true,"net",false,function(Name_,Rrtype_,Class_,Ttl_,Rdlength_){this.$val=this;if(arguments.length===0){this.Name="";this.Rrtype=0;this.Class=0;this.Ttl=0;this.Rdlength=0;return;}this.Name=Name_;this.Rrtype=Rrtype_;this.Class=Class_;this.Ttl=Ttl_;this.Rdlength=Rdlength_;});DB=$pkg.dnsRR_CNAME=$newType(0,$kindStruct,"net.dnsRR_CNAME",true,"net",false,function(Hdr_,Cname_){this.$val=this;if(arguments.length===0){this.Hdr=new CZ.ptr("",0,0,0,0);this.Cname="";return;}this.Hdr=Hdr_;this.Cname=Cname_;});DC=$pkg.dnsRR_MX=$newType(0,$kindStruct,"net.dnsRR_MX",true,"net",false,function(Hdr_,Pref_,Mx_){this.$val=this;if(arguments.length===0){this.Hdr=new CZ.ptr("",0,0,0,0);this.Pref=0;this.Mx="";return;}this.Hdr=Hdr_;this.Pref=Pref_;this.Mx=Mx_;});DD=$pkg.dnsRR_NS=$newType(0,$kindStruct,"net.dnsRR_NS",true,"net",false,function(Hdr_,Ns_){this.$val=this;if(arguments.length===0){this.Hdr=new CZ.ptr("",0,0,0,0);this.Ns="";return;}this.Hdr=Hdr_;this.Ns=Ns_;});DE=$pkg.dnsRR_PTR=$newType(0,$kindStruct,"net.dnsRR_PTR",true,"net",false,function(Hdr_,Ptr_){this.$val=this;if(arguments.length===0){this.Hdr=new CZ.ptr("",0,0,0,0);this.Ptr="";return;}this.Hdr=Hdr_;this.Ptr=Ptr_;});DF=$pkg.dnsRR_SOA=$newType(0,$kindStruct,"net.dnsRR_SOA",true,"net",false,function(Hdr_,Ns_,Mbox_,Serial_,Refresh_,Retry_,Expire_,Minttl_){this.$val=this;if(arguments.length===0){this.Hdr=new CZ.ptr("",0,0,0,0);this.Ns="";this.Mbox="";this.Serial=0;this.Refresh=0;this.Retry=0;this.Expire=0;this.Minttl=0;return;}this.Hdr=Hdr_;this.Ns=Ns_;this.Mbox=Mbox_;this.Serial=Serial_;this.Refresh=Refresh_;this.Retry=Retry_;this.Expire=Expire_;this.Minttl=Minttl_;});DG=$pkg.dnsRR_TXT=$newType(0,$kindStruct,"net.dnsRR_TXT",true,"net",false,function(Hdr_,Txt_){this.$val=this;if(arguments.length===0){this.Hdr=new CZ.ptr("",0,0,0,0);this.Txt="";return;}this.Hdr=Hdr_;this.Txt=Txt_;});DH=$pkg.dnsRR_SRV=$newType(0,$kindStruct,"net.dnsRR_SRV",true,"net",false,function(Hdr_,Priority_,Weight_,Port_,Target_){this.$val=this;if(arguments.length===0){this.Hdr=new CZ.ptr("",0,0,0,0);this.Priority=0;this.Weight=0;this.Port=0;this.Target="";return;}this.Hdr=Hdr_;this.Priority=Priority_;this.Weight=Weight_;this.Port=Port_;this.Target=Target_;});DI=$pkg.dnsRR_A=$newType(0,$kindStruct,"net.dnsRR_A",true,"net",false,function(Hdr_,A_){this.$val=this;if(arguments.length===0){this.Hdr=new CZ.ptr("",0,0,0,0);this.A=0;return;}this.Hdr=Hdr_;this.A=A_;});DJ=$pkg.dnsRR_AAAA=$newType(0,$kindStruct,"net.dnsRR_AAAA",true,"net",false,function(Hdr_,AAAA_){this.$val=this;if(arguments.length===0){this.Hdr=new CZ.ptr("",0,0,0,0);this.AAAA=PD.zero();return;}this.Hdr=Hdr_;this.AAAA=AAAA_;});FV=$pkg.Interface=$newType(0,$kindStruct,"net.Interface",true,"net",true,function(Index_,MTU_,Name_,HardwareAddr_,Flags_){this.$val=this;if(arguments.length===0){this.Index=0;this.MTU=0;this.Name="";this.HardwareAddr=JE.nil;this.Flags=0;return;}this.Index=Index_;this.MTU=MTU_;this.Name=Name_;this.HardwareAddr=HardwareAddr_;this.Flags=Flags_;});FW=$pkg.Flags=$newType(4,$kindUint,"net.Flags",true,"net",true,null);GD=$pkg.ipv6ZoneCache=$newType(0,$kindStruct,"net.ipv6ZoneCache",true,"net",false,function(RWMutex_,lastFetched_,toIndex_,toName_){this.$val=this;if(arguments.length===0){this.RWMutex=new H.RWMutex.ptr(new H.Mutex.ptr(0,0),0,0,0,0);this.lastFetched=new J.Time.ptr(new $Int64(0,0),0,OV.nil);this.toIndex=false;this.toName=false;return;}this.RWMutex=RWMutex_;this.lastFetched=lastFetched_;this.toIndex=toIndex_;this.toName=toName_;});GQ=$pkg.IP=$newType(12,$kindSlice,"net.IP",true,"net",true,null);GR=$pkg.IPMask=$newType(12,$kindSlice,"net.IPMask",true,"net",true,null);GS=$pkg.IPNet=$newType(0,$kindStruct,"net.IPNet",true,"net",true,function(IP_,Mask_){this.$val=this;if(arguments.length===0){this.IP=GQ.nil;this.Mask=GR.nil;return;}this.IP=IP_;this.Mask=Mask_;});HL=$pkg.IPAddr=$newType(0,$kindStruct,"net.IPAddr",true,"net",true,function(IP_,Zone_){this.$val=this;if(arguments.length===0){this.IP=GQ.nil;this.Zone="";return;}this.IP=IP_;this.Zone=Zone_;});JE=$pkg.HardwareAddr=$newType(12,$kindSlice,"net.HardwareAddr",true,"net",true,null);JJ=$pkg.Addr=$newType(8,$kindInterface,"net.Addr",true,"net",true,null);JW=$pkg.OpError=$newType(0,$kindStruct,"net.OpError",true,"net",true,function(Op_,Net_,Source_,Addr_,Err_){this.$val=this;if(arguments.length===0){this.Op="";this.Net="";this.Source=$ifaceNil;this.Addr=$ifaceNil;this.Err=$ifaceNil;return;}this.Op=Op_;this.Net=Net_;this.Source=Source_;this.Addr=Addr_;this.Err=Err_;});KA=$pkg.timeout=$newType(8,$kindInterface,"net.timeout",true,"net",false,null);KB=$pkg.temporary=$newType(8,$kindInterface,"net.temporary",true,"net",false,null);KD=$pkg.ParseError=$newType(0,$kindStruct,"net.ParseError",true,"net",true,function(Type_,Text_){this.$val=this;if(arguments.length===0){this.Type="";this.Text="";return;}this.Type=Type_;this.Text=Text_;});KE=$pkg.AddrError=$newType(0,$kindStruct,"net.AddrError",true,"net",true,function(Err_,Addr_){this.$val=this;if(arguments.length===0){this.Err="";this.Addr="";return;}this.Err=Err_;this.Addr=Addr_;});KY=$pkg.file=$newType(0,$kindStruct,"net.file",true,"net",false,function(file_,data_,atEOF_){this.$val=this;if(arguments.length===0){this.file=QT.nil;this.data=PE.nil;this.atEOF=false;return;}this.file=file_;this.data=data_;this.atEOF=atEOF_;});MK=$pkg.sockaddr=$newType(8,$kindInterface,"net.sockaddr",true,"net",false,null);OV=$ptrType(J.Location);OY=$sliceType($String);PD=$arrayType($Uint8,16);PE=$sliceType($Uint8);PF=$structType("",[]);PH=$ptrType(GS);PO=$ptrType(HL);PU=$ptrType(CZ);PV=$ptrType(DB);QA=$ptrType(DI);QB=$ptrType(DJ);QD=$ptrType(DE);QE=$ptrType($Uint32);QF=$ptrType($Uint16);QG=$ptrType($String);QR=$ptrType(F.SyscallError);QT=$ptrType(F.File);QX=$ptrType(KY);QY=$ptrType(FV);QZ=$sliceType(JJ);RA=$sliceType(FV);RB=$ptrType(B.IfInfomsg);RC=$ptrType(B.IfAddrmsg);RD=$arrayType($Uint8,4);RL=$ptrType(DH);RO=$ptrType(DC);RR=$ptrType(DD);RS=$ptrType(DG);RU=$ptrType(JW);RV=$ptrType(KE);RX=$arrayType($Uint8,20);SK=$funcType([$emptyInterface,$String,$String],[$Bool],false);SN=$ptrType(DF);SS=$ptrType(GD);ST=$mapType($String,$Int);SU=$mapType($Int,$String);SV=$ptrType(GQ);SY=$ptrType(KD);O=function(p,q){var $ptr,p,q;return $parseInt(p.indexOf($global.String.fromCharCode(q)))>>0;};Q=function(){var $ptr;};R=function(){var $ptr;return false;};S=function(){var $ptr,p,q,r,s;p=false;q=false;r=false;s=false;p=r;q=s;return[p,q];};U=function(){var $ptr;return 128;};AE=function(){var $ptr,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=D.Sort(D.Reverse($subslice(new AF(AD.$array),AD.$offset,AD.$offset+AD.$length)));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}if($f===undefined){$f={$blk:AE};}$f.$ptr=$ptr;$f.$s=$s;$f.$r=$r;return $f;};AF.prototype.Len=function(){var $ptr,p;p=this;return p.$length;};$ptrType(AF).prototype.Len=function(){return this.$get().Len();};AF.prototype.Swap=function(p,q){var $ptr,p,q,r,s,t;r=this;s=$clone(((q<0||q>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+q]),AB);t=$clone(((p<0||p>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+p]),AB);AB.copy(((p<0||p>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+p]),s);AB.copy(((q<0||q>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+q]),t);};$ptrType(AF).prototype.Swap=function(p,q){return this.$get().Swap(p,q);};AF.prototype.Less=function(p,q){var $ptr,p,q,r,s,t,u,v;r=this;s=((p<0||p>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+p]).Prefix.Mask.Size();t=s[0];u=((q<0||q>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+q]).Prefix.Mask.Size();v=u[0];return t<v;};$ptrType(AF).prototype.Less=function(p,q){return this.$get().Less(p,q);};AG=function(p){var $ptr,p,q,r,s,t,u,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=HK(p);r=q[0];s=q[1];t=q[2];if(!($interfaceIsEqual(t,$ifaceNil))){$s=1;continue;}$s=2;continue;case 1:u=t.Error();$s=3;case 3:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}$panic(new $String(u));case 2:if(!((r.$length===16))){$panic(new $String("unexpected IP length"));}$s=-1;return s;}return;}if($f===undefined){$f={$blk:AG};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.$s=$s;$f.$r=$r;return $f;};AC.prototype.Classify=function(p){var $ptr,p,q,r,s,t;q=this;r=q;s=0;while(true){if(!(s<r.$length)){break;}t=$clone(((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s]),AB);if(t.Prefix.Contains(p)){return t;}s++;}return new AB.ptr(PH.nil,0,0);};$ptrType(AC).prototype.Classify=function(p){return this.$get().Classify(p);};AK=function(){var $ptr;JG=true;};CZ.ptr.prototype.Header=function(){var $ptr,p;p=this;return p;};CZ.prototype.Header=function(){return this.$val.Header();};CZ.ptr.prototype.Walk=function(p){var $ptr,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=this;v=p((q.$ptr_Name||(q.$ptr_Name=new QG(function(){return this.$target.Name;},function($v){this.$target.Name=$v;},q))),"Name","domain");$s=5;case 5:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}if(!(v)){u=false;$s=4;continue s;}w=p((q.$ptr_Rrtype||(q.$ptr_Rrtype=new QF(function(){return this.$target.Rrtype;},function($v){this.$target.Rrtype=$v;},q))),"Rrtype","");$s=6;case 6:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}u=w;case 4:if(!(u)){t=false;$s=3;continue s;}x=p((q.$ptr_Class||(q.$ptr_Class=new QF(function(){return this.$target.Class;},function($v){this.$target.Class=$v;},q))),"Class","");$s=7;case 7:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}t=x;case 3:if(!(t)){s=false;$s=2;continue s;}y=p((q.$ptr_Ttl||(q.$ptr_Ttl=new QE(function(){return this.$target.Ttl;},function($v){this.$target.Ttl=$v;},q))),"Ttl","");$s=8;case 8:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}s=y;case 2:if(!(s)){r=false;$s=1;continue s;}z=p((q.$ptr_Rdlength||(q.$ptr_Rdlength=new QF(function(){return this.$target.Rdlength;},function($v){this.$target.Rdlength=$v;},q))),"Rdlength","");$s=9;case 9:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}r=z;case 1:$s=-1;return r;}return;}if($f===undefined){$f={$blk:CZ.ptr.prototype.Walk};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};CZ.prototype.Walk=function(p){return this.$val.Walk(p);};DB.ptr.prototype.Header=function(){var $ptr,p;p=this;return p.Hdr;};DB.prototype.Header=function(){return this.$val.Header();};DB.ptr.prototype.Walk=function(p){var $ptr,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=this;s=q.Hdr.Walk(p);$s=2;case 2:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}if(!(s)){r=false;$s=1;continue s;}t=p((q.$ptr_Cname||(q.$ptr_Cname=new QG(function(){return this.$target.Cname;},function($v){this.$target.Cname=$v;},q))),"Cname","domain");$s=3;case 3:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}r=t;case 1:$s=-1;return r;}return;}if($f===undefined){$f={$blk:DB.ptr.prototype.Walk};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};DB.prototype.Walk=function(p){return this.$val.Walk(p);};DC.ptr.prototype.Header=function(){var $ptr,p;p=this;return p.Hdr;};DC.prototype.Header=function(){return this.$val.Header();};DC.ptr.prototype.Walk=function(p){var $ptr,p,q,r,s,t,u,v,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=this;t=q.Hdr.Walk(p);$s=3;case 3:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}if(!(t)){s=false;$s=2;continue s;}u=p((q.$ptr_Pref||(q.$ptr_Pref=new QF(function(){return this.$target.Pref;},function($v){this.$target.Pref=$v;},q))),"Pref","");$s=4;case 4:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}s=u;case 2:if(!(s)){r=false;$s=1;continue s;}v=p((q.$ptr_Mx||(q.$ptr_Mx=new QG(function(){return this.$target.Mx;},function($v){this.$target.Mx=$v;},q))),"Mx","domain");$s=5;case 5:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}r=v;case 1:$s=-1;return r;}return;}if($f===undefined){$f={$blk:DC.ptr.prototype.Walk};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.$s=$s;$f.$r=$r;return $f;};DC.prototype.Walk=function(p){return this.$val.Walk(p);};DD.ptr.prototype.Header=function(){var $ptr,p;p=this;return p.Hdr;};DD.prototype.Header=function(){return this.$val.Header();};DD.ptr.prototype.Walk=function(p){var $ptr,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=this;s=q.Hdr.Walk(p);$s=2;case 2:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}if(!(s)){r=false;$s=1;continue s;}t=p((q.$ptr_Ns||(q.$ptr_Ns=new QG(function(){return this.$target.Ns;},function($v){this.$target.Ns=$v;},q))),"Ns","domain");$s=3;case 3:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}r=t;case 1:$s=-1;return r;}return;}if($f===undefined){$f={$blk:DD.ptr.prototype.Walk};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};DD.prototype.Walk=function(p){return this.$val.Walk(p);};DE.ptr.prototype.Header=function(){var $ptr,p;p=this;return p.Hdr;};DE.prototype.Header=function(){return this.$val.Header();};DE.ptr.prototype.Walk=function(p){var $ptr,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=this;s=q.Hdr.Walk(p);$s=2;case 2:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}if(!(s)){r=false;$s=1;continue s;}t=p((q.$ptr_Ptr||(q.$ptr_Ptr=new QG(function(){return this.$target.Ptr;},function($v){this.$target.Ptr=$v;},q))),"Ptr","domain");$s=3;case 3:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}r=t;case 1:$s=-1;return r;}return;}if($f===undefined){$f={$blk:DE.ptr.prototype.Walk};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};DE.prototype.Walk=function(p){return this.$val.Walk(p);};DF.ptr.prototype.Header=function(){var $ptr,p;p=this;return p.Hdr;};DF.prototype.Header=function(){return this.$val.Header();};DF.ptr.prototype.Walk=function(p){var $ptr,aa,ab,ac,ad,ae,af,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=this;y=q.Hdr.Walk(p);$s=8;case 8:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}if(!(y)){x=false;$s=7;continue s;}z=p((q.$ptr_Ns||(q.$ptr_Ns=new QG(function(){return this.$target.Ns;},function($v){this.$target.Ns=$v;},q))),"Ns","domain");$s=9;case 9:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}x=z;case 7:if(!(x)){w=false;$s=6;continue s;}aa=p((q.$ptr_Mbox||(q.$ptr_Mbox=new QG(function(){return this.$target.Mbox;},function($v){this.$target.Mbox=$v;},q))),"Mbox","domain");$s=10;case 10:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}w=aa;case 6:if(!(w)){v=false;$s=5;continue s;}ab=p((q.$ptr_Serial||(q.$ptr_Serial=new QE(function(){return this.$target.Serial;},function($v){this.$target.Serial=$v;},q))),"Serial","");$s=11;case 11:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}v=ab;case 5:if(!(v)){u=false;$s=4;continue s;}ac=p((q.$ptr_Refresh||(q.$ptr_Refresh=new QE(function(){return this.$target.Refresh;},function($v){this.$target.Refresh=$v;},q))),"Refresh","");$s=12;case 12:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}u=ac;case 4:if(!(u)){t=false;$s=3;continue s;}ad=p((q.$ptr_Retry||(q.$ptr_Retry=new QE(function(){return this.$target.Retry;},function($v){this.$target.Retry=$v;},q))),"Retry","");$s=13;case 13:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}t=ad;case 3:if(!(t)){s=false;$s=2;continue s;}ae=p((q.$ptr_Expire||(q.$ptr_Expire=new QE(function(){return this.$target.Expire;},function($v){this.$target.Expire=$v;},q))),"Expire","");$s=14;case 14:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}s=ae;case 2:if(!(s)){r=false;$s=1;continue s;}af=p((q.$ptr_Minttl||(q.$ptr_Minttl=new QE(function(){return this.$target.Minttl;},function($v){this.$target.Minttl=$v;},q))),"Minttl","");$s=15;case 15:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}r=af;case 1:$s=-1;return r;}return;}if($f===undefined){$f={$blk:DF.ptr.prototype.Walk};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};DF.prototype.Walk=function(p){return this.$val.Walk(p);};DG.ptr.prototype.Header=function(){var $ptr,p;p=this;return p.Hdr;};DG.prototype.Header=function(){return this.$val.Header();};DG.ptr.prototype.Walk=function(p){var $ptr,p,q,r,s,t,u,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=this;r=q.Hdr.Walk(p);$s=3;case 3:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}if(!r){$s=1;continue;}$s=2;continue;case 1:$s=-1;return false;case 2:s=0;case 4:if(!(s<q.Hdr.Rdlength)){$s=5;continue;}t=[t];t[0]="";u=p((t.$ptr||(t.$ptr=new QG(function(){return this.$target[0];},function($v){this.$target[0]=$v;},t))),"Txt","");$s=8;case 8:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}if(!u){$s=6;continue;}$s=7;continue;case 6:$s=-1;return false;case 7:if((q.Hdr.Rdlength-s<<16>>>16)<((t[0].length<<16>>>16)+1<<16>>>16)){$s=-1;return false;}s=s+(((t[0].length<<16>>>16)+1<<16>>>16))<<16>>>16;q.Txt=q.Txt+(t[0]);$s=4;continue;case 5:$s=-1;return true;}return;}if($f===undefined){$f={$blk:DG.ptr.prototype.Walk};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.$s=$s;$f.$r=$r;return $f;};DG.prototype.Walk=function(p){return this.$val.Walk(p);};DH.ptr.prototype.Header=function(){var $ptr,p;p=this;return p.Hdr;};DH.prototype.Header=function(){return this.$val.Header();};DH.ptr.prototype.Walk=function(p){var $ptr,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=this;v=q.Hdr.Walk(p);$s=5;case 5:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}if(!(v)){u=false;$s=4;continue s;}w=p((q.$ptr_Priority||(q.$ptr_Priority=new QF(function(){return this.$target.Priority;},function($v){this.$target.Priority=$v;},q))),"Priority","");$s=6;case 6:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}u=w;case 4:if(!(u)){t=false;$s=3;continue s;}x=p((q.$ptr_Weight||(q.$ptr_Weight=new QF(function(){return this.$target.Weight;},function($v){this.$target.Weight=$v;},q))),"Weight","");$s=7;case 7:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}t=x;case 3:if(!(t)){s=false;$s=2;continue s;}y=p((q.$ptr_Port||(q.$ptr_Port=new QF(function(){return this.$target.Port;},function($v){this.$target.Port=$v;},q))),"Port","");$s=8;case 8:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}s=y;case 2:if(!(s)){r=false;$s=1;continue s;}z=p((q.$ptr_Target||(q.$ptr_Target=new QG(function(){return this.$target.Target;},function($v){this.$target.Target=$v;},q))),"Target","domain");$s=9;case 9:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}r=z;case 1:$s=-1;return r;}return;}if($f===undefined){$f={$blk:DH.ptr.prototype.Walk};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};DH.prototype.Walk=function(p){return this.$val.Walk(p);};DI.ptr.prototype.Header=function(){var $ptr,p;p=this;return p.Hdr;};DI.prototype.Header=function(){return this.$val.Header();};DI.ptr.prototype.Walk=function(p){var $ptr,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=this;s=q.Hdr.Walk(p);$s=2;case 2:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}if(!(s)){r=false;$s=1;continue s;}t=p((q.$ptr_A||(q.$ptr_A=new QE(function(){return this.$target.A;},function($v){this.$target.A=$v;},q))),"A","ipv4");$s=3;case 3:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}r=t;case 1:$s=-1;return r;}return;}if($f===undefined){$f={$blk:DI.ptr.prototype.Walk};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};DI.prototype.Walk=function(p){return this.$val.Walk(p);};DJ.ptr.prototype.Header=function(){var $ptr,p;p=this;return p.Hdr;};DJ.prototype.Header=function(){return this.$val.Header();};DJ.ptr.prototype.Walk=function(p){var $ptr,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=this;s=q.Hdr.Walk(p);$s=2;case 2:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}if(!(s)){r=false;$s=1;continue s;}t=p(new PE(q.AAAA),"AAAA","ipv6");$s=3;case 3:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}r=t;case 1:$s=-1;return r;}return;}if($f===undefined){$f={$blk:DJ.ptr.prototype.Walk};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};DJ.prototype.Walk=function(p){return this.$val.Walk(p);};FW.prototype.String=function(){var $ptr,p,q,r,s,t,u,v;p=this.$val;q="";r=FX;s=0;while(true){if(!(s<r.$length)){break;}t=s;u=((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s]);if(!((((p&(((v=(t>>>0),v<32?(1<<v):0)>>>0)))>>>0)===0))){if(!(q==="")){q=q+("|");}q=q+(u);}s++;}if(q===""){q="0";}return q;};$ptrType(FW).prototype.String=function(){return new FW(this.$get()).String();};FV.ptr.prototype.Addrs=function(){var $ptr,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;if(p===QY.nil){$s=-1;return[QZ.nil,new JW.ptr("route","ip+net",$ifaceNil,$ifaceNil,FQ)];}r=GK(p);$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=r;s=q[0];t=q[1];if(!($interfaceIsEqual(t,$ifaceNil))){t=new JW.ptr("route","ip+net",$ifaceNil,$ifaceNil,t);}$s=-1;return[s,t];}return;}if($f===undefined){$f={$blk:FV.ptr.prototype.Addrs};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};FV.prototype.Addrs=function(){return this.$val.Addrs();};FV.ptr.prototype.MulticastAddrs=function(){var $ptr,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;if(p===QY.nil){$s=-1;return[QZ.nil,new JW.ptr("route","ip+net",$ifaceNil,$ifaceNil,FQ)];}r=GN(p);$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=r;s=q[0];t=q[1];if(!($interfaceIsEqual(t,$ifaceNil))){t=new JW.ptr("route","ip+net",$ifaceNil,$ifaceNil,t);}$s=-1;return[s,t];}return;}if($f===undefined){$f={$blk:FV.ptr.prototype.MulticastAddrs};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};FV.prototype.MulticastAddrs=function(){return this.$val.MulticastAddrs();};GB=function(p,q){var $ptr,p,q,r,s,t;r=p;s=0;while(true){if(!(s<r.$length)){break;}t=$clone(((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s]),FV);if(q===t.Index){return[t,$ifaceNil];}s++;}return[QY.nil,FT];};GH=function(p){var $ptr,aa,ab,ac,ad,ae,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=[q];s=B.NetlinkRIB(18,0);$s=1;case 1:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;t=r[0];u=r[1];if(!($interfaceIsEqual(u,$ifaceNil))){$s=-1;return[RA.nil,F.NewSyscallError("netlinkrib",u)];}v=B.ParseNetlinkMessage(t);w=v[0];u=v[1];if(!($interfaceIsEqual(u,$ifaceNil))){$s=-1;return[RA.nil,F.NewSyscallError("parsenetlinkmessage",u)];}x=RA.nil;y=w;z=0;loop:while(true){if(!(z<y.$length)){break;}q[0]=$clone(((z<0||z>=y.$length)?($throwRuntimeError("index out of range"),undefined):y.$array[y.$offset+z]),B.NetlinkMessage);aa=q[0].Header.Type;if(aa===(3)){break loop;}else if(aa===(16)){ab=$pointerOfStructConversion($sliceToArray(q[0].Data),RB);if((p===0)||(p===(ab.Index>>0))){ac=B.ParseNetlinkRouteAttr(q[0]);ad=ac[0];ae=ac[1];if(!($interfaceIsEqual(ae,$ifaceNil))){$s=-1;return[RA.nil,F.NewSyscallError("parsenetlinkrouteattr",ae)];}x=$append(x,GI(ab,ad));if(p===(ab.Index>>0)){break loop;}}}z++;}$s=-1;return[x,$ifaceNil];}return;}if($f===undefined){$f={$blk:GH};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};GI=function(p,q){var $ptr,aa,ab,ac,ad,ae,p,q,r,s,t,u,v,w,x,y,z;r=new FV.ptr((p.Index>>0),0,"",JE.nil,GJ(p.Flags));s=q;t=0;while(true){if(!(t<s.$length)){break;}u=$clone(((t<0||t>=s.$length)?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+t]),B.NetlinkRouteAttr);v=u.Attr.Type;if(v===(1)){w=u.Value.$length;if(w===(4)){x=p.Type;if((x===(768))||(x===(778))||(x===(776))){t++;continue;}}else if(w===(16)){y=p.Type;if((y===(769))||(y===(823))){t++;continue;}}z=false;aa=u.Value;ab=0;while(true){if(!(ab<aa.$length)){break;}ac=((ab<0||ab>=aa.$length)?($throwRuntimeError("index out of range"),undefined):aa.$array[aa.$offset+ab]);if(!((ac===0))){z=true;break;}ab++;}if(z){r.HardwareAddr=(ad=u.Value,$subslice(new JE(ad.$array),ad.$offset,ad.$offset+ad.$length));}}else if(v===(3)){r.Name=$bytesToString($subslice(u.Value,0,(u.Value.$length-1>>0)));}else if(v===(4)){r.MTU=((ae=$subslice(u.Value,0,4),(0>=ae.$length?($throwRuntimeError("index out of range"),undefined):ae.$array[ae.$offset+0]))>>0);}t++;}return r;};GJ=function(p){var $ptr,p,q;q=0;if(!((((p&1)>>>0)===0))){q=(q|(1))>>>0;}if(!((((p&2)>>>0)===0))){q=(q|(2))>>>0;}if(!((((p&8)>>>0)===0))){q=(q|(4))>>>0;}if(!((((p&16)>>>0)===0))){q=(q|(8))>>>0;}if(!((((p&4096)>>>0)===0))){q=(q|(16))>>>0;}return q;};GK=function(p){var $ptr,aa,ab,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:r=B.NetlinkRIB(22,0);$s=1;case 1:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=r;s=q[0];t=q[1];if(!($interfaceIsEqual(t,$ifaceNil))){$s=-1;return[QZ.nil,F.NewSyscallError("netlinkrib",t)];}u=B.ParseNetlinkMessage(s);v=u[0];t=u[1];if(!($interfaceIsEqual(t,$ifaceNil))){$s=-1;return[QZ.nil,F.NewSyscallError("parsenetlinkmessage",t)];}w=RA.nil;if(p===QY.nil){$s=2;continue;}$s=3;continue;case 2:x=$ifaceNil;z=GH(0);$s=4;case 4:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}y=z;w=y[0];x=y[1];if(!($interfaceIsEqual(x,$ifaceNil))){$s=-1;return[QZ.nil,x];}case 3:aa=GL(w,p,v);ab=aa[0];t=aa[1];if(!($interfaceIsEqual(t,$ifaceNil))){$s=-1;return[QZ.nil,t];}$s=-1;return[ab,$ifaceNil];}return;}if($f===undefined){$f={$blk:GK};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};GL=function(p,q,r){var $ptr,aa,ab,ac,ad,p,q,r,s,t,u,v,w,x,y,z;s=QZ.nil;t=r;u=0;loop:while(true){if(!(u<t.$length)){break;}v=$clone(((u<0||u>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+u]),B.NetlinkMessage);w=v.Header.Type;if(w===(3)){break loop;}else if(w===(20)){x=$pointerOfStructConversion($sliceToArray(v.Data),RC);if(!((p.$length===0))||(q.Index===(x.Index>>0))){if(!((p.$length===0))){y=$ifaceNil;z=GB(p,(x.Index>>0));q=z[0];y=z[1];if(!($interfaceIsEqual(y,$ifaceNil))){return[QZ.nil,y];}}aa=B.ParseNetlinkRouteAttr(v);ab=aa[0];ac=aa[1];if(!($interfaceIsEqual(ac,$ifaceNil))){return[QZ.nil,F.NewSyscallError("parsenetlinkrouteattr",ac)];}ad=GM(q,x,ab);if(!($interfaceIsEqual(ad,$ifaceNil))){s=$append(s,ad);}}}u++;}return[s,$ifaceNil];};GM=function(p,q,r){var $ptr,aa,ab,ac,ad,ae,p,q,r,s,t,u,v,w,x,y,z;s=false;t=r;u=0;while(true){if(!(u<t.$length)){break;}v=$clone(((u<0||u>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+u]),B.NetlinkRouteAttr);if(v.Attr.Type===2){s=true;break;}u++;}w=r;x=0;while(true){if(!(x<w.$length)){break;}y=$clone(((x<0||x>=w.$length)?($throwRuntimeError("index out of range"),undefined):w.$array[w.$offset+x]),B.NetlinkRouteAttr);if(s&&(y.Attr.Type===1)){x++;continue;}z=q.Family;if(z===(2)){return new GS.ptr(GT((aa=y.Value,(0>=aa.$length?($throwRuntimeError("index out of range"),undefined):aa.$array[aa.$offset+0])),(ab=y.Value,(1>=ab.$length?($throwRuntimeError("index out of range"),undefined):ab.$array[ab.$offset+1])),(ac=y.Value,(2>=ac.$length?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+2])),(ad=y.Value,(3>=ad.$length?($throwRuntimeError("index out of range"),undefined):ad.$array[ad.$offset+3]))),GW((q.Prefixlen>>0),32));}else if(z===(10)){ae=new GS.ptr($makeSlice(GQ,16),GW((q.Prefixlen>>0),128));$copySlice(ae.IP,y.Value);return ae;}x++;}return $ifaceNil;};GN=function(p){var $ptr,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q=GO("/proc/net/igmp",p);$s=1;case 1:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=q;s=GP("/proc/net/igmp6",p);$s=2;case 2:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}t=s;$s=-1;return[$appendSlice(r,t),$ifaceNil];}return;}if($f===undefined){$f={$blk:GN};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};GO=function(p,q){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,p,q,r,s,t,u,v,w,x,y,z,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);r=KZ(p);s=r[0];t=r[1];if(!($interfaceIsEqual(t,$ifaceNil))){$s=-1;return QZ.nil;}$deferred.push([$methodVal(s,"close"),[]]);u=QZ.nil;v="";w=s.readLine();$s=1;case 1:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}w;x=$makeSlice(PE,4);z=s.readLine();$s=2;case 2:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}y=z;aa=y[0];ab=y[1];case 3:if(!(ab)){$s=4;continue;}ac=LC(aa," :\r\t\n");if(ac.$length<4){$s=5;continue;}$s=6;continue;case 5:ae=s.readLine();$s=7;case 7:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}ad=ae;aa=ad[0];ab=ad[1];$s=3;continue;case 6:if(!((aa.charCodeAt(0)===32))&&!((aa.charCodeAt(0)===9))){v=(1>=ac.$length?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+1]);}else if(((0>=ac.$length?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+0]).length===8)){if(q===QY.nil||v===q.Name){af=0;while(true){if(!((af+1>>0)<(0>=ac.$length?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+0]).length)){break;}ag=LG($substring((0>=ac.$length?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+0]),af,(af+2>>0)),0);(ah=(ai=af/2,(ai===ai&&ai!==1/0&&ai!==-1/0)?ai>>0:$throwRuntimeError("integer divide by zero")),((ah<0||ah>=x.$length)?($throwRuntimeError("index out of range"),undefined):x.$array[x.$offset+ah]=ag[0]));af=af+(2)>>0;}ak=(aj=$subslice(x,0,4),(0>=aj.$length?($throwRuntimeError("index out of range"),undefined):aj.$array[aj.$offset+0]));al=new HL.ptr(GT(((ak>>>24>>>0)<<24>>>24),((ak>>>16>>>0)<<24>>>24),((ak>>>8>>>0)<<24>>>24),(ak<<24>>>24)),"");u=$append(u,al);}}an=s.readLine();$s=8;case 8:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}am=an;aa=am[0];ab=am[1];$s=3;continue;case 4:$s=-1;return u;}return;}}catch(err){$err=err;$s=-1;return QZ.nil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:GO};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};GP=function(p,q){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,p,q,r,s,t,u,v,w,x,y,z,$s,$deferred,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$deferred=$f.$deferred;$r=$f.$r;}var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$deferred.index=$curGoroutine.deferStack.length;$curGoroutine.deferStack.push($deferred);r=KZ(p);s=r[0];t=r[1];if(!($interfaceIsEqual(t,$ifaceNil))){$s=-1;return QZ.nil;}$deferred.push([$methodVal(s,"close"),[]]);u=QZ.nil;v=$makeSlice(PE,16);x=s.readLine();$s=1;case 1:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}w=x;y=w[0];z=w[1];case 2:if(!(z)){$s=3;continue;}aa=LC(y," \r\t\n");if(aa.$length<6){$s=4;continue;}$s=5;continue;case 4:ac=s.readLine();$s=6;case 6:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ab=ac;y=ab[0];z=ab[1];$s=2;continue;case 5:if(q===QY.nil||(1>=aa.$length?($throwRuntimeError("index out of range"),undefined):aa.$array[aa.$offset+1])===q.Name){ad=0;while(true){if(!((ad+1>>0)<(2>=aa.$length?($throwRuntimeError("index out of range"),undefined):aa.$array[aa.$offset+2]).length)){break;}ae=LG($substring((2>=aa.$length?($throwRuntimeError("index out of range"),undefined):aa.$array[aa.$offset+2]),ad,(ad+2>>0)),0);(af=(ag=ad/2,(ag===ag&&ag!==1/0&&ag!==-1/0)?ag>>0:$throwRuntimeError("integer divide by zero")),((af<0||af>=v.$length)?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+af]=ae[0]));ad=ad+(2)>>0;}ah=new HL.ptr(new GQ([(0>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+0]),(1>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+1]),(2>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+2]),(3>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+3]),(4>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+4]),(5>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+5]),(6>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+6]),(7>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+7]),(8>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+8]),(9>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+9]),(10>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+10]),(11>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+11]),(12>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+12]),(13>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+13]),(14>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+14]),(15>=v.$length?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+15])]),"");u=$append(u,ah);}aj=s.readLine();$s=7;case 7:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ai=aj;y=ai[0];z=ai[1];$s=2;continue;case 3:$s=-1;return u;}return;}}catch(err){$err=err;$s=-1;return QZ.nil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){if($f===undefined){$f={$blk:GP};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$deferred=$deferred;$f.$r=$r;return $f;}}};GT=function(p,q,r,s){var $ptr,p,q,r,s,t;t=$makeSlice(GQ,16);$copySlice(t,GU);(12>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+12]=p);(13>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+13]=q);(14>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+14]=r);(15>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+15]=s);return t;};$pkg.IPv4=GT;GV=function(p,q,r,s){var $ptr,p,q,r,s,t;t=$makeSlice(GR,4);(0>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+0]=p);(1>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+1]=q);(2>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+2]=r);(3>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+3]=s);return t;};$pkg.IPv4Mask=GV;GW=function(p,q){var $ptr,p,q,r,s,t,u,v,w;if(!((q===32))&&!((q===128))){return GR.nil;}if(p<0||p>q){return GR.nil;}s=(r=q/8,(r===r&&r!==1/0&&r!==-1/0)?r>>0:$throwRuntimeError("integer divide by zero"));t=$makeSlice(GR,s);u=(p>>>0);v=0;while(true){if(!(v<s)){break;}if(u>=8){((v<0||v>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+v]=255);u=u-(8)>>>0;v=v+(1)>>0;continue;}((v<0||v>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+v]=(~((w=u,w<32?(255>>>w):0)<<24>>>24)<<24>>>24));u=0;v=v+(1)>>0;}return t;};$pkg.CIDRMask=GW;GQ.prototype.IsUnspecified=function(){var $ptr,p;p=this;return p.Equal($pkg.IPv4zero)||p.Equal($pkg.IPv6unspecified);};$ptrType(GQ).prototype.IsUnspecified=function(){return this.$get().IsUnspecified();};GQ.prototype.IsLoopback=function(){var $ptr,p,q;p=this;q=p.To4();if(!(q===GQ.nil)){return(0>=q.$length?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+0])===127;}return p.Equal($pkg.IPv6loopback);};$ptrType(GQ).prototype.IsLoopback=function(){return this.$get().IsLoopback();};GQ.prototype.IsMulticast=function(){var $ptr,p,q;p=this;q=p.To4();if(!(q===GQ.nil)){return(((0>=q.$length?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+0])&240)>>>0)===224;}return(p.$length===16)&&((0>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+0])===255);};$ptrType(GQ).prototype.IsMulticast=function(){return this.$get().IsMulticast();};GQ.prototype.IsInterfaceLocalMulticast=function(){var $ptr,p;p=this;return(p.$length===16)&&((0>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+0])===255)&&((((1>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+1])&15)>>>0)===1);};$ptrType(GQ).prototype.IsInterfaceLocalMulticast=function(){return this.$get().IsInterfaceLocalMulticast();};GQ.prototype.IsLinkLocalMulticast=function(){var $ptr,p,q;p=this;q=p.To4();if(!(q===GQ.nil)){return((0>=q.$length?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+0])===224)&&((1>=q.$length?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+1])===0)&&((2>=q.$length?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+2])===0);}return(p.$length===16)&&((0>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+0])===255)&&((((1>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+1])&15)>>>0)===2);};$ptrType(GQ).prototype.IsLinkLocalMulticast=function(){return this.$get().IsLinkLocalMulticast();};GQ.prototype.IsLinkLocalUnicast=function(){var $ptr,p,q;p=this;q=p.To4();if(!(q===GQ.nil)){return((0>=q.$length?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+0])===169)&&((1>=q.$length?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+1])===254);}return(p.$length===16)&&((0>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+0])===254)&&((((1>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+1])&192)>>>0)===128);};$ptrType(GQ).prototype.IsLinkLocalUnicast=function(){return this.$get().IsLinkLocalUnicast();};GQ.prototype.IsGlobalUnicast=function(){var $ptr,p;p=this;return((p.$length===4)||(p.$length===16))&&!p.Equal($pkg.IPv4bcast)&&!p.IsUnspecified()&&!p.IsLoopback()&&!p.IsMulticast()&&!p.IsLinkLocalUnicast();};$ptrType(GQ).prototype.IsGlobalUnicast=function(){return this.$get().IsGlobalUnicast();};GX=function(p){var $ptr,p,q;q=0;while(true){if(!(q<p.$length)){break;}if(!((((q<0||q>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+q])===0))){return false;}q=q+(1)>>0;}return true;};GQ.prototype.To4=function(){var $ptr,p;p=this;if(p.$length===4){return p;}if((p.$length===16)&&GX($subslice(p,0,10))&&((10>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+10])===255)&&((11>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+11])===255)){return $subslice(p,12,16);}return GQ.nil;};$ptrType(GQ).prototype.To4=function(){return this.$get().To4();};GQ.prototype.To16=function(){var $ptr,p;p=this;if(p.$length===4){return GT((0>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+0]),(1>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+1]),(2>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+2]),(3>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+3]));}if(p.$length===16){return p;}return GQ.nil;};$ptrType(GQ).prototype.To16=function(){return this.$get().To16();};GQ.prototype.DefaultMask=function(){var $ptr,p,q;p=this;p=p.To4();if(p===GQ.nil){return GR.nil;}q=true;if(q===((0>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+0])<128)){return GY;}else if(q===((0>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+0])<192)){return GZ;}else{return HA;}};$ptrType(GQ).prototype.DefaultMask=function(){return this.$get().DefaultMask();};HB=function(p){var $ptr,p,q,r,s;q=p;r=0;while(true){if(!(r<q.$length)){break;}s=((r<0||r>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+r]);if(!((s===255))){return false;}r++;}return true;};GQ.prototype.Mask=function(p){var $ptr,p,q,r,s,t,u,v;q=this;if((p.$length===16)&&(q.$length===4)&&HB((r=$subslice(p,0,12),$subslice(new PE(r.$array),r.$offset,r.$offset+r.$length)))){p=$subslice(p,12);}if((p.$length===4)&&(q.$length===16)&&HE((s=$subslice(q,0,12),$subslice(new PE(s.$array),s.$offset,s.$offset+s.$length)),GU)){q=$subslice(q,12);}t=q.$length;if(!((t===p.$length))){return GQ.nil;}u=$makeSlice(GQ,t);v=0;while(true){if(!(v<t)){break;}((v<0||v>=u.$length)?($throwRuntimeError("index out of range"),undefined):u.$array[u.$offset+v]=((((v<0||v>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+v])&((v<0||v>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+v]))>>>0));v=v+(1)>>0;}return u;};$ptrType(GQ).prototype.Mask=function(p){return this.$get().Mask(p);};GQ.prototype.String=function(){var $ptr,p,q,r,s,t,u,v,w,x,y,z;p=this;q=p;if(p.$length===0){return"<nil>";}r=q.To4();if(r.$length===4){return LI(((0>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+0])>>>0))+"."+LI(((1>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+1])>>>0))+"."+LI(((2>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+2])>>>0))+"."+LI(((3>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+3])>>>0));}if(!((q.$length===16))){return"?"+HC($subslice(new PE(p.$array),p.$offset,p.$offset+p.$length));}s=-1;t=-1;u=0;while(true){if(!(u<16)){break;}v=u;while(true){if(!(v<16&&(((v<0||v>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+v])===0)&&((w=v+1>>0,((w<0||w>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+w]))===0))){break;}v=v+(2)>>0;}if(v>u&&(v-u>>0)>(t-s>>0)){s=u;t=v;u=v;}u=u+(2)>>0;}if((t-s>>0)<=2){s=-1;t=-1;}x=$makeSlice(PE,0,39);y=0;while(true){if(!(y<16)){break;}if(y===s){x=$append(x,58,58);y=t;if(y>=16){break;}}else if(y>0){x=$append(x,58);}x=LJ(x,((((((y<0||y>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+y])>>>0)<<8>>>0))|((z=y+1>>0,((z<0||z>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+z]))>>>0))>>>0);y=y+(2)>>0;}return $bytesToString(x);};$ptrType(GQ).prototype.String=function(){return this.$get().String();};HC=function(p){var $ptr,p,q,r,s,t,u,v,w,x,y;q=$makeSlice(PE,($imul(p.$length,2)));r=p;s=0;while(true){if(!(s<r.$length)){break;}t=s;u=((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s]);v="0123456789abcdef".charCodeAt((u>>>4<<24>>>24));w="0123456789abcdef".charCodeAt(((u&15)>>>0));(x=$imul(t,2),((x<0||x>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+x]=v));(y=($imul(t,2))+1>>0,((y<0||y>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+y]=w));s++;}return $bytesToString(q);};HD=function(p){var $ptr,p;if(p.$length===0){return"";}return p.String();};GQ.prototype.MarshalText=function(){var $ptr,p;p=this;if(p.$length===0){return[new PE($stringToBytes("")),$ifaceNil];}if(!((p.$length===4))&&!((p.$length===16))){return[PE.nil,new KE.ptr("invalid IP address",HC($subslice(new PE(p.$array),p.$offset,p.$offset+p.$length)))];}return[new PE($stringToBytes(p.String())),$ifaceNil];};$ptrType(GQ).prototype.MarshalText=function(){return this.$get().MarshalText();};$ptrType(GQ).prototype.UnmarshalText=function(p){var $ptr,p,q,r,s;q=this;if(p.$length===0){q.$set(GQ.nil);return $ifaceNil;}r=$bytesToString(p);s=HJ(r);if(s===GQ.nil){return new KD.ptr("IP address",r);}q.$set(s);return $ifaceNil;};GQ.prototype.Equal=function(p){var $ptr,p,q,r,s,t,u;q=this;if(q.$length===p.$length){return HE($subslice(new PE(q.$array),q.$offset,q.$offset+q.$length),$subslice(new PE(p.$array),p.$offset,p.$offset+p.$length));}if((q.$length===4)&&(p.$length===16)){return HE((r=$subslice(p,0,12),$subslice(new PE(r.$array),r.$offset,r.$offset+r.$length)),GU)&&HE($subslice(new PE(q.$array),q.$offset,q.$offset+q.$length),(s=$subslice(p,12),$subslice(new PE(s.$array),s.$offset,s.$offset+s.$length)));}if((q.$length===16)&&(p.$length===4)){return HE((t=$subslice(q,0,12),$subslice(new PE(t.$array),t.$offset,t.$offset+t.$length)),GU)&&HE((u=$subslice(q,12),$subslice(new PE(u.$array),u.$offset,u.$offset+u.$length)),$subslice(new PE(p.$array),p.$offset,p.$offset+p.$length));}return false;};$ptrType(GQ).prototype.Equal=function(p){return this.$get().Equal(p);};HE=function(p,q){var $ptr,p,q,r,s,t,u;if(!((p.$length===q.$length))){return false;}r=p;s=0;while(true){if(!(s<r.$length)){break;}t=s;u=((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s]);if(!((((t<0||t>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+t])===u))){return false;}s++;}return true;};HF=function(p){var $ptr,p,q,r,s,t,u,v;q=0;r=p;s=0;while(true){if(!(s<r.$length)){break;}t=s;u=((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s]);if(u===255){q=q+(8)>>0;s++;continue;}while(true){if(!(!((((u&128)>>>0)===0)))){break;}q=q+(1)>>0;u=(v=(1),v<32?(u<<v):0)<<24>>>24;}if(!((u===0))){return-1;}t=t+(1)>>0;while(true){if(!(t<p.$length)){break;}if(!((((t<0||t>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+t])===0))){return-1;}t=t+(1)>>0;}break;}return q;};GR.prototype.Size=function(){var $ptr,p,q,r,s,t,u,v;p=0;q=0;r=this;s=HF(r);t=$imul(r.$length,8);p=s;q=t;if(p===-1){u=0;v=0;p=u;q=v;return[p,q];}return[p,q];};$ptrType(GR).prototype.Size=function(){return this.$get().Size();};GR.prototype.String=function(){var $ptr,p;p=this;if(p.$length===0){return"<nil>";}return HC($subslice(new PE(p.$array),p.$offset,p.$offset+p.$length));};$ptrType(GR).prototype.String=function(){return this.$get().String();};HG=function(p){var $ptr,p,q,r,s,t,u,v,w,x,y;q=GQ.nil;r=GR.nil;q=p.IP.To4();if(q===GQ.nil){q=p.IP;if(!((q.$length===16))){s=GQ.nil;t=GR.nil;q=s;r=t;return[q,r];}}r=p.Mask;u=r.$length;if(u===(4)){if(!((q.$length===4))){v=GQ.nil;w=GR.nil;q=v;r=w;return[q,r];}}else if(u===(16)){if(q.$length===4){r=$subslice(r,12);}}else{x=GQ.nil;y=GR.nil;q=x;r=y;return[q,r];}return[q,r];};GS.ptr.prototype.Contains=function(p){var $ptr,p,q,r,s,t,u,v,w;q=this;r=HG(q);s=r[0];t=r[1];u=p.To4();if(!(u===GQ.nil)){p=u;}v=p.$length;if(!((v===s.$length))){return false;}w=0;while(true){if(!(w<v)){break;}if(!((((((w<0||w>=s.$length)?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+w])&((w<0||w>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+w]))>>>0)===((((w<0||w>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+w])&((w<0||w>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+w]))>>>0)))){return false;}w=w+(1)>>0;}return true;};GS.prototype.Contains=function(p){return this.$val.Contains(p);};GS.ptr.prototype.Network=function(){var $ptr,p;p=this;return"ip+net";};GS.prototype.Network=function(){return this.$val.Network();};GS.ptr.prototype.String=function(){var $ptr,p,q,r,s,t;p=this;q=HG(p);r=q[0];s=q[1];if(r===GQ.nil||s===GR.nil){return"<nil>";}t=HF(s);if(t===-1){return r.String()+"/"+s.String();}return r.String()+"/"+LI((t>>>0));};GS.prototype.String=function(){return this.$val.String();};HH=function(p){var $ptr,p,q,r,s,t,u,v;q=RD.zero();r=0;while(true){if(!(r<4)){break;}if(p.length===0){return GQ.nil;}if(r>0){if(!((p.charCodeAt(0)===46))){return GQ.nil;}p=$substring(p,1);}s=LE(p);t=s[0];u=s[1];v=s[2];if(!v||t>255){return GQ.nil;}p=$substring(p,u);((r<0||r>=q.length)?($throwRuntimeError("index out of range"),undefined):q[r]=(t<<24>>>24));r=r+(1)>>0;}if(!((p.length===0))){return GQ.nil;}return GT(q[0],q[1],q[2],q[3]);};HI=function(p,q){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,p,q,r,s,t,u,v,w,x,y,z;r=GQ.nil;s="";r=$makeSlice(GQ,16);t=-1;if(q){u=IE(p);p=u[0];s=u[1];}if(p.length>=2&&(p.charCodeAt(0)===58)&&(p.charCodeAt(1)===58)){t=0;p=$substring(p,2);if(p.length===0){v=r;w=s;r=v;s=w;return[r,s];}}x=0;while(true){if(!(x<16)){break;}y=LF(p);z=y[0];aa=y[1];ab=y[2];if(!ab||z>65535){ac=GQ.nil;ad=s;r=ac;s=ad;return[r,s];}if(aa<p.length&&(p.charCodeAt(aa)===46)){if(t<0&&!((x===12))){ae=GQ.nil;af=s;r=ae;s=af;return[r,s];}if((x+4>>0)>16){ag=GQ.nil;ah=s;r=ag;s=ah;return[r,s];}ai=HH(p);if(ai===GQ.nil){aj=GQ.nil;ak=s;r=aj;s=ak;return[r,s];}((x<0||x>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+x]=(12>=ai.$length?($throwRuntimeError("index out of range"),undefined):ai.$array[ai.$offset+12]));(al=x+1>>0,((al<0||al>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+al]=(13>=ai.$length?($throwRuntimeError("index out of range"),undefined):ai.$array[ai.$offset+13])));(am=x+2>>0,((am<0||am>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+am]=(14>=ai.$length?($throwRuntimeError("index out of range"),undefined):ai.$array[ai.$offset+14])));(an=x+3>>0,((an<0||an>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+an]=(15>=ai.$length?($throwRuntimeError("index out of range"),undefined):ai.$array[ai.$offset+15])));p="";x=x+(4)>>0;break;}((x<0||x>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+x]=((z>>8>>0)<<24>>>24));(ao=x+1>>0,((ao<0||ao>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+ao]=(z<<24>>>24)));x=x+(2)>>0;p=$substring(p,aa);if(p.length===0){break;}if(!((p.charCodeAt(0)===58))||(p.length===1)){ap=GQ.nil;aq=s;r=ap;s=aq;return[r,s];}p=$substring(p,1);if(p.charCodeAt(0)===58){if(t>=0){ar=GQ.nil;as=s;r=ar;s=as;return[r,s];}t=x;p=$substring(p,1);if(p.length===0){break;}}}if(!((p.length===0))){at=GQ.nil;au=s;r=at;s=au;return[r,s];}if(x<16){if(t<0){av=GQ.nil;aw=s;r=av;s=aw;return[r,s];}ax=16-x>>0;ay=x-1>>0;while(true){if(!(ay>=t)){break;}(az=ay+ax>>0,((az<0||az>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+az]=((ay<0||ay>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+ay])));ay=ay-(1)>>0;}ba=(t+ax>>0)-1>>0;while(true){if(!(ba>=t)){break;}((ba<0||ba>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+ba]=0);ba=ba-(1)>>0;}}else if(t>=0){bb=GQ.nil;bc=s;r=bb;s=bc;return[r,s];}bd=r;be=s;r=bd;s=be;return[r,s];};HJ=function(p){var $ptr,p,q,r,s,t;q=0;while(true){if(!(q<p.length)){break;}r=p.charCodeAt(q);if(r===(46)){return HH(p);}else if(r===(58)){s=HI(p,false);t=s[0];return t;}q=q+(1)>>0;}return GQ.nil;};$pkg.ParseIP=HJ;HK=function(p){var $ptr,aa,ab,p,q,r,s,t,u,v,w,x,y,z;q=O(p,47);if(q<0){return[GQ.nil,PH.nil,new KD.ptr("CIDR address",p)];}r=$substring(p,0,q);s=$substring(p,(q+1>>0));t=r;u=s;v=4;w=HH(t);if(w===GQ.nil){v=16;x=HI(t,false);w=x[0];}y=LE(u);z=y[0];q=y[1];aa=y[2];if(w===GQ.nil||!aa||!((q===u.length))||z<0||z>($imul(8,v))){return[GQ.nil,PH.nil,new KD.ptr("CIDR address",p)];}ab=GW(z,$imul(8,v));return[w,new GS.ptr(w.Mask(ab),ab),$ifaceNil];};$pkg.ParseCIDR=HK;HL.ptr.prototype.Network=function(){var $ptr,p;p=this;return"ip";};HL.prototype.Network=function(){return this.$val.Network();};HL.ptr.prototype.String=function(){var $ptr,p,q;p=this;if(p===PO.nil){return"<nil>";}q=HD(p.IP);if(!(p.Zone==="")){return q+"%"+p.Zone;}return q;};HL.prototype.String=function(){return this.$val.String();};ID=function(p){var $ptr,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;ad=$f.ad;ae=$f.ae;af=$f.af;ag=$f.ag;ah=$f.ah;ai=$f.ai;aj=$f.aj;ak=$f.ak;al=$f.al;am=$f.am;an=$f.an;ao=$f.ao;ap=$f.ap;aq=$f.aq;ar=$f.ar;as=$f.as;at=$f.at;au=$f.au;av=$f.av;aw=$f.aw;ax=$f.ax;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:q="";r="";s=$ifaceNil;t=(function(t,u){var $ptr,aa,t,u,v,w,x,y,z;v="";w="";x=$ifaceNil;y="";z="";aa=new KE.ptr(u,t);v=y;w=z;x=aa;return[v,w,x];});u=0;v=0;w=u;x=v;y=LL(p,58);if(y<0){$s=1;continue;}$s=2;continue;case 1:aa=t(p,"missing port in address");$s=3;case 3:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}z=aa;q=z[0];r=z[1];s=z[2];$s=-1;return[q,r,s];case 2:if(p.charCodeAt(0)===91){$s=4;continue;}$s=5;continue;case 4:ab=O(p,93);if(ab<0){$s=7;continue;}$s=8;continue;case 7:ad=t(p,"missing ']' in address");$s=9;case 9:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}ac=ad;q=ac[0];r=ac[1];s=ac[2];$s=-1;return[q,r,s];case 8:ae=ab+1>>0;if(ae===(p.length)){$s=11;continue;}if(ae===(y)){$s=12;continue;}$s=13;continue;case 11:ag=t(p,"missing port in address");$s=15;case 15:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}af=ag;q=af[0];r=af[1];s=af[2];$s=-1;return[q,r,s];case 12:$s=14;continue;case 13:if(p.charCodeAt((ab+1>>0))===58){$s=16;continue;}$s=17;continue;case 16:ai=t(p,"too many colons in address");$s=18;case 18:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ah=ai;q=ah[0];r=ah[1];s=ah[2];$s=-1;return[q,r,s];case 17:ak=t(p,"missing port in address");$s=19;case 19:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}aj=ak;q=aj[0];r=aj[1];s=aj[2];$s=-1;return[q,r,s];case 14:case 10:q=$substring(p,1,ab);al=1;am=ab+1>>0;w=al;x=am;$s=6;continue;case 5:q=$substring(p,0,y);if(O(q,58)>=0){$s=20;continue;}$s=21;continue;case 20:ao=t(p,"too many colons in address");$s=22;case 22:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}an=ao;q=an[0];r=an[1];s=an[2];$s=-1;return[q,r,s];case 21:if(O(q,37)>=0){$s=23;continue;}$s=24;continue;case 23:aq=t(p,"missing brackets in address");$s=25;case 25:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ap=aq;q=ap[0];r=ap[1];s=ap[2];$s=-1;return[q,r,s];case 24:case 6:if(O($substring(p,w),91)>=0){$s=26;continue;}$s=27;continue;case 26:as=t(p,"unexpected '[' in address");$s=28;case 28:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}ar=as;q=ar[0];r=ar[1];s=ar[2];$s=-1;return[q,r,s];case 27:if(O($substring(p,x),93)>=0){$s=29;continue;}$s=30;continue;case 29:au=t(p,"unexpected ']' in address");$s=31;case 31:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}at=au;q=at[0];r=at[1];s=at[2];$s=-1;return[q,r,s];case 30:r=$substring(p,(y+1>>0));av=q;aw=r;ax=$ifaceNil;q=av;r=aw;s=ax;$s=-1;return[q,r,s];}return;}if($f===undefined){$f={$blk:ID};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.ad=ad;$f.ae=ae;$f.af=af;$f.ag=ag;$f.ah=ah;$f.ai=ai;$f.aj=aj;$f.ak=ak;$f.al=al;$f.am=am;$f.an=an;$f.ao=ao;$f.ap=ap;$f.aq=aq;$f.ar=ar;$f.as=as;$f.at=at;$f.au=au;$f.av=av;$f.aw=aw;$f.ax=ax;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};$pkg.SplitHostPort=ID;IE=function(p){var $ptr,p,q,r,s,t,u;q="";r="";s=LL(p,37);if(s>0){t=$substring(p,0,s);u=$substring(p,(s+1>>0));q=t;r=u;}else{q=p;}return[q,r];};JE.prototype.String=function(){var $ptr,p,q,r,s,t,u;p=this;if(p.$length===0){return"";}q=$makeSlice(PE,0,(($imul(p.$length,3))-1>>0));r=p;s=0;while(true){if(!(s<r.$length)){break;}t=s;u=((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s]);if(t>0){q=$append(q,58);}q=$append(q,"0123456789abcdef".charCodeAt((u>>>4<<24>>>24)));q=$append(q,"0123456789abcdef".charCodeAt(((u&15)>>>0)));s++;}return $bytesToString(q);};$ptrType(JE).prototype.String=function(){return this.$get().String();};JI=function(){var $ptr,p;Q();HV=R();p=S();HW=p[0];HX=p[1];};JW.ptr.prototype.Error=function(){var $ptr,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;if(p===RU.nil){$s=-1;return"<nil>";}q=p.Op;if(!(p.Net==="")){q=q+(" "+p.Net);}if(!($interfaceIsEqual(p.Source,$ifaceNil))){$s=1;continue;}$s=2;continue;case 1:r=p.Source.String();$s=3;case 3:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=q+(" "+r);case 2:if(!($interfaceIsEqual(p.Addr,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:if(!($interfaceIsEqual(p.Source,$ifaceNil))){q=q+("->");}else{q=q+(" ");}s=p.Addr.String();$s=6;case 6:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}q=q+(s);case 5:t=p.Err.Error();$s=7;case 7:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}q=q+(": "+t);$s=-1;return q;}return;}if($f===undefined){$f={$blk:JW.ptr.prototype.Error};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};JW.prototype.Error=function(){return this.$val.Error();};JW.ptr.prototype.Timeout=function(){var $ptr,aa,ab,ac,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;q=$assertType(p.Err,QR,true);r=q[0];s=q[1];if(s){$s=1;continue;}$s=2;continue;case 1:t=$assertType(r.Err,KA,true);u=t[0];v=t[1];if(!(v)){w=false;$s=3;continue s;}x=u.Timeout();$s=4;case 4:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}w=x;case 3:$s=-1;return w;case 2:y=$assertType(p.Err,KA,true);z=y[0];aa=y[1];if(!(aa)){ab=false;$s=5;continue s;}ac=z.Timeout();$s=6;case 6:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ab=ac;case 5:$s=-1;return ab;}return;}if($f===undefined){$f={$blk:JW.ptr.prototype.Timeout};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};JW.prototype.Timeout=function(){return this.$val.Timeout();};JW.ptr.prototype.Temporary=function(){var $ptr,aa,ab,ac,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;aa=$f.aa;ab=$f.ab;ac=$f.ac;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p=this;q=$assertType(p.Err,QR,true);r=q[0];s=q[1];if(s){$s=1;continue;}$s=2;continue;case 1:t=$assertType(r.Err,KB,true);u=t[0];v=t[1];if(!(v)){w=false;$s=3;continue s;}x=u.Temporary();$s=4;case 4:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}w=x;case 3:$s=-1;return w;case 2:y=$assertType(p.Err,KB,true);z=y[0];aa=y[1];if(!(aa)){ab=false;$s=5;continue s;}ac=z.Temporary();$s=6;case 6:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ab=ac;case 5:$s=-1;return ab;}return;}if($f===undefined){$f={$blk:JW.ptr.prototype.Temporary};}$f.$ptr=$ptr;$f.aa=aa;$f.ab=ab;$f.ac=ac;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};JW.prototype.Temporary=function(){return this.$val.Temporary();};KD.ptr.prototype.Error=function(){var $ptr,p;p=this;return"invalid "+p.Type+": "+p.Text;};KD.prototype.Error=function(){return this.$val.Error();};KE.ptr.prototype.Error=function(){var $ptr,p,q;p=this;if(p===RV.nil){return"<nil>";}q=p.Err;if(!(p.Addr==="")){q="address "+p.Addr+": "+q;}return q;};KE.prototype.Error=function(){return this.$val.Error();};KE.ptr.prototype.Timeout=function(){var $ptr,p;p=this;return false;};KE.prototype.Timeout=function(){return this.$val.Timeout();};KE.ptr.prototype.Temporary=function(){var $ptr,p;p=this;return false;};KE.prototype.Temporary=function(){return this.$val.Temporary();};KY.ptr.prototype.close=function(){var $ptr,p;p=this;p.file.Close();};KY.prototype.close=function(){return this.$val.close();};KY.ptr.prototype.getLineFromData=function(){var $ptr,p,q,r,s,t,u;p="";q=false;r=this;s=r.data;t=0;t=0;while(true){if(!(t<s.$length)){break;}if(((t<0||t>=s.$length)?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+t])===10){p=$bytesToString($subslice(s,0,t));q=true;t=t+(1)>>0;u=s.$length-t>>0;$copySlice($subslice(s,0),$subslice(s,t));r.data=$subslice(s,0,u);return[p,q];}t=t+(1)>>0;}if(r.atEOF&&r.data.$length>0){p=$bytesToString(s);r.data=$subslice(r.data,0,0);q=true;}return[p,q];};KY.prototype.getLineFromData=function(){return this.$val.getLineFromData();};KY.ptr.prototype.readLine=function(){var $ptr,p,q,r,s,t,u,v,w,x,y,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:p="";q=false;r=this;s=r.getLineFromData();p=s[0];q=s[1];if(q){$s=-1;return[p,q];}if(r.data.$length<r.data.$capacity){$s=1;continue;}$s=2;continue;case 1:t=r.data.$length;v=L.ReadFull(r.file,$subslice(r.data,t,r.data.$capacity));$s=3;case 3:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}u=v;w=u[0];x=u[1];if(w>=0){r.data=$subslice(r.data,0,(t+w>>0));}if($interfaceIsEqual(x,L.EOF)||$interfaceIsEqual(x,L.ErrUnexpectedEOF)){r.atEOF=true;}case 2:y=r.getLineFromData();p=y[0];q=y[1];$s=-1;return[p,q];}return;}if($f===undefined){$f={$blk:KY.ptr.prototype.readLine};}$f.$ptr=$ptr;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.$s=$s;$f.$r=$r;return $f;};KY.prototype.readLine=function(){return this.$val.readLine();};KZ=function(p){var $ptr,p,q,r,s;q=F.Open(p);r=q[0];s=q[1];if(!($interfaceIsEqual(s,$ifaceNil))){return[QX.nil,s];}return[new KY.ptr(r,$makeSlice(PE,0,F.Getpagesize()),false),$ifaceNil];};LB=function(p,q){var $ptr,p,q,r,s;r=0;s=0;while(true){if(!(s<p.length)){break;}if(O(q,p.charCodeAt(s))>=0){r=r+(1)>>0;}s=s+(1)>>0;}return r;};LC=function(p,q){var $ptr,p,q,r,s,t,u;r=$makeSlice(OY,(1+LB(p,q)>>0));s=0;t=0;u=0;while(true){if(!(u<p.length)){break;}if(O(q,p.charCodeAt(u))>=0){if(t<u){((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s]=$substring(p,t,u));s=s+(1)>>0;}t=u+1>>0;}u=u+(1)>>0;}if(t<p.length){((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s]=$substring(p,t));s=s+(1)>>0;}return $subslice(r,0,s);};LE=function(p){var $ptr,aa,ab,p,q,r,s,t,u,v,w,x,y,z;q=0;r=0;s=false;q=0;r=0;while(true){if(!(r<p.length&&48<=p.charCodeAt(r)&&p.charCodeAt(r)<=57)){break;}q=($imul(q,10))+((p.charCodeAt(r)-48<<24>>>24)>>0)>>0;if(q>=16777215){t=16777215;u=r;v=false;q=t;r=u;s=v;return[q,r,s];}r=r+(1)>>0;}if(r===0){w=0;x=0;y=false;q=w;r=x;s=y;return[q,r,s];}z=q;aa=r;ab=true;q=z;r=aa;s=ab;return[q,r,s];};LF=function(p){var $ptr,aa,ab,p,q,r,s,t,u,v,w,x,y,z;q=0;r=0;s=false;q=0;r=0;while(true){if(!(r<p.length)){break;}if(48<=p.charCodeAt(r)&&p.charCodeAt(r)<=57){q=$imul(q,(16));q=q+(((p.charCodeAt(r)-48<<24>>>24)>>0))>>0;}else if(97<=p.charCodeAt(r)&&p.charCodeAt(r)<=102){q=$imul(q,(16));q=q+((((p.charCodeAt(r)-97<<24>>>24)>>0)+10>>0))>>0;}else if(65<=p.charCodeAt(r)&&p.charCodeAt(r)<=70){q=$imul(q,(16));q=q+((((p.charCodeAt(r)-65<<24>>>24)>>0)+10>>0))>>0;}else{break;}if(q>=16777215){t=0;u=r;v=false;q=t;r=u;s=v;return[q,r,s];}r=r+(1)>>0;}if(r===0){w=0;x=r;y=false;q=w;r=x;s=y;return[q,r,s];}z=q;aa=r;ab=true;q=z;r=aa;s=ab;return[q,r,s];};LG=function(p,q){var $ptr,p,q,r,s,t,u;if(p.length>2&&!((p.charCodeAt(2)===q))){return[0,false];}r=LF($substring(p,0,2));s=r[0];t=r[1];u=r[2];return[(s<<24>>>24),u&&(t===2)];};LI=function(p){var $ptr,p,q,r,s,t;if(p===0){return"0";}q=RX.zero();r=19;while(true){if(!(p>=10)){break;}t=(s=p/10,(s===s&&s!==1/0&&s!==-1/0)?s>>>0:$throwRuntimeError("integer divide by zero"));((r<0||r>=q.length)?($throwRuntimeError("index out of range"),undefined):q[r]=(((48+p>>>0)-(t*10>>>0)>>>0)<<24>>>24));r=r-(1)>>0;p=t;}((r<0||r>=q.length)?($throwRuntimeError("index out of range"),undefined):q[r]=((48+p>>>0)<<24>>>24));return $bytesToString($subslice(new PE(q),r));};LJ=function(p,q){var $ptr,p,q,r,s,t;if(q===0){return $append(p,48);}r=7;while(true){if(!(r>=0)){break;}t=(s=(($imul(r,4))>>>0),s<32?(q>>>s):0)>>>0;if(t>0){p=$append(p,"0123456789abcdef".charCodeAt(((t&15)>>>0)));}r=r-(1)>>0;}return p;};LL=function(p,q){var $ptr,p,q,r;r=p.length;r=r-(1)>>0;while(true){if(!(r>=0)){break;}if(p.charCodeAt(r)===q){break;}r=r-(1)>>0;}return r;};AC.methods=[{prop:"Classify",name:"Classify",pkg:"",typ:$funcType([GQ],[AB],false)}];AF.methods=[{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Swap",name:"Swap",pkg:"",typ:$funcType([$Int,$Int],[],false)},{prop:"Less",name:"Less",pkg:"",typ:$funcType([$Int,$Int],[$Bool],false)}];PU.methods=[{prop:"Header",name:"Header",pkg:"",typ:$funcType([],[PU],false)},{prop:"Walk",name:"Walk",pkg:"",typ:$funcType([SK],[$Bool],false)}];PV.methods=[{prop:"Header",name:"Header",pkg:"",typ:$funcType([],[PU],false)},{prop:"Walk",name:"Walk",pkg:"",typ:$funcType([SK],[$Bool],false)}];RO.methods=[{prop:"Header",name:"Header",pkg:"",typ:$funcType([],[PU],false)},{prop:"Walk",name:"Walk",pkg:"",typ:$funcType([SK],[$Bool],false)}];RR.methods=[{prop:"Header",name:"Header",pkg:"",typ:$funcType([],[PU],false)},{prop:"Walk",name:"Walk",pkg:"",typ:$funcType([SK],[$Bool],false)}];QD.methods=[{prop:"Header",name:"Header",pkg:"",typ:$funcType([],[PU],false)},{prop:"Walk",name:"Walk",pkg:"",typ:$funcType([SK],[$Bool],false)}];SN.methods=[{prop:"Header",name:"Header",pkg:"",typ:$funcType([],[PU],false)},{prop:"Walk",name:"Walk",pkg:"",typ:$funcType([SK],[$Bool],false)}];RS.methods=[{prop:"Header",name:"Header",pkg:"",typ:$funcType([],[PU],false)},{prop:"Walk",name:"Walk",pkg:"",typ:$funcType([SK],[$Bool],false)}];RL.methods=[{prop:"Header",name:"Header",pkg:"",typ:$funcType([],[PU],false)},{prop:"Walk",name:"Walk",pkg:"",typ:$funcType([SK],[$Bool],false)}];QA.methods=[{prop:"Header",name:"Header",pkg:"",typ:$funcType([],[PU],false)},{prop:"Walk",name:"Walk",pkg:"",typ:$funcType([SK],[$Bool],false)}];QB.methods=[{prop:"Header",name:"Header",pkg:"",typ:$funcType([],[PU],false)},{prop:"Walk",name:"Walk",pkg:"",typ:$funcType([SK],[$Bool],false)}];QY.methods=[{prop:"Addrs",name:"Addrs",pkg:"",typ:$funcType([],[QZ,$error],false)},{prop:"MulticastAddrs",name:"MulticastAddrs",pkg:"",typ:$funcType([],[QZ,$error],false)}];FW.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];SS.methods=[{prop:"update",name:"update",pkg:"net",typ:$funcType([RA],[],false)}];GQ.methods=[{prop:"IsUnspecified",name:"IsUnspecified",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"IsLoopback",name:"IsLoopback",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"IsMulticast",name:"IsMulticast",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"IsInterfaceLocalMulticast",name:"IsInterfaceLocalMulticast",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"IsLinkLocalMulticast",name:"IsLinkLocalMulticast",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"IsLinkLocalUnicast",name:"IsLinkLocalUnicast",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"IsGlobalUnicast",name:"IsGlobalUnicast",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"To4",name:"To4",pkg:"",typ:$funcType([],[GQ],false)},{prop:"To16",name:"To16",pkg:"",typ:$funcType([],[GQ],false)},{prop:"DefaultMask",name:"DefaultMask",pkg:"",typ:$funcType([],[GR],false)},{prop:"Mask",name:"Mask",pkg:"",typ:$funcType([GR],[GQ],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"MarshalText",name:"MarshalText",pkg:"",typ:$funcType([],[PE,$error],false)},{prop:"Equal",name:"Equal",pkg:"",typ:$funcType([GQ],[$Bool],false)},{prop:"matchAddrFamily",name:"matchAddrFamily",pkg:"net",typ:$funcType([GQ],[$Bool],false)}];SV.methods=[{prop:"UnmarshalText",name:"UnmarshalText",pkg:"",typ:$funcType([PE],[$error],false)}];GR.methods=[{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int,$Int],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];PH.methods=[{prop:"Contains",name:"Contains",pkg:"",typ:$funcType([GQ],[$Bool],false)},{prop:"Network",name:"Network",pkg:"",typ:$funcType([],[$String],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];PO.methods=[{prop:"Network",name:"Network",pkg:"",typ:$funcType([],[$String],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"isWildcard",name:"isWildcard",pkg:"net",typ:$funcType([],[$Bool],false)},{prop:"opAddr",name:"opAddr",pkg:"net",typ:$funcType([],[JJ],false)},{prop:"family",name:"family",pkg:"net",typ:$funcType([],[$Int],false)},{prop:"sockaddr",name:"sockaddr",pkg:"net",typ:$funcType([$Int],[B.Sockaddr,$error],false)},{prop:"toLocal",name:"toLocal",pkg:"net",typ:$funcType([$String],[MK],false)}];JE.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];RU.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)},{prop:"Timeout",name:"Timeout",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Temporary",name:"Temporary",pkg:"",typ:$funcType([],[$Bool],false)}];SY.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];RV.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)},{prop:"Timeout",name:"Timeout",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Temporary",name:"Temporary",pkg:"",typ:$funcType([],[$Bool],false)}];QX.methods=[{prop:"close",name:"close",pkg:"net",typ:$funcType([],[],false)},{prop:"getLineFromData",name:"getLineFromData",pkg:"net",typ:$funcType([],[$String,$Bool],false)},{prop:"readLine",name:"readLine",pkg:"net",typ:$funcType([],[$String,$Bool],false)}];AB.init("",[{prop:"Prefix",name:"Prefix",exported:true,typ:PH,tag:""},{prop:"Precedence",name:"Precedence",exported:true,typ:$Uint8,tag:""},{prop:"Label",name:"Label",exported:true,typ:$Uint8,tag:""}]);AC.init(AB);AF.init(AB);CZ.init("",[{prop:"Name",name:"Name",exported:true,typ:$String,tag:""},{prop:"Rrtype",name:"Rrtype",exported:true,typ:$Uint16,tag:""},{prop:"Class",name:"Class",exported:true,typ:$Uint16,tag:""},{prop:"Ttl",name:"Ttl",exported:true,typ:$Uint32,tag:""},{prop:"Rdlength",name:"Rdlength",exported:true,typ:$Uint16,tag:""}]);DB.init("",[{prop:"Hdr",name:"Hdr",exported:true,typ:CZ,tag:""},{prop:"Cname",name:"Cname",exported:true,typ:$String,tag:""}]);DC.init("",[{prop:"Hdr",name:"Hdr",exported:true,typ:CZ,tag:""},{prop:"Pref",name:"Pref",exported:true,typ:$Uint16,tag:""},{prop:"Mx",name:"Mx",exported:true,typ:$String,tag:""}]);DD.init("",[{prop:"Hdr",name:"Hdr",exported:true,typ:CZ,tag:""},{prop:"Ns",name:"Ns",exported:true,typ:$String,tag:""}]);DE.init("",[{prop:"Hdr",name:"Hdr",exported:true,typ:CZ,tag:""},{prop:"Ptr",name:"Ptr",exported:true,typ:$String,tag:""}]);DF.init("",[{prop:"Hdr",name:"Hdr",exported:true,typ:CZ,tag:""},{prop:"Ns",name:"Ns",exported:true,typ:$String,tag:""},{prop:"Mbox",name:"Mbox",exported:true,typ:$String,tag:""},{prop:"Serial",name:"Serial",exported:true,typ:$Uint32,tag:""},{prop:"Refresh",name:"Refresh",exported:true,typ:$Uint32,tag:""},{prop:"Retry",name:"Retry",exported:true,typ:$Uint32,tag:""},{prop:"Expire",name:"Expire",exported:true,typ:$Uint32,tag:""},{prop:"Minttl",name:"Minttl",exported:true,typ:$Uint32,tag:""}]);DG.init("",[{prop:"Hdr",name:"Hdr",exported:true,typ:CZ,tag:""},{prop:"Txt",name:"Txt",exported:true,typ:$String,tag:""}]);DH.init("",[{prop:"Hdr",name:"Hdr",exported:true,typ:CZ,tag:""},{prop:"Priority",name:"Priority",exported:true,typ:$Uint16,tag:""},{prop:"Weight",name:"Weight",exported:true,typ:$Uint16,tag:""},{prop:"Port",name:"Port",exported:true,typ:$Uint16,tag:""},{prop:"Target",name:"Target",exported:true,typ:$String,tag:""}]);DI.init("",[{prop:"Hdr",name:"Hdr",exported:true,typ:CZ,tag:""},{prop:"A",name:"A",exported:true,typ:$Uint32,tag:""}]);DJ.init("",[{prop:"Hdr",name:"Hdr",exported:true,typ:CZ,tag:""},{prop:"AAAA",name:"AAAA",exported:true,typ:PD,tag:""}]);FV.init("",[{prop:"Index",name:"Index",exported:true,typ:$Int,tag:""},{prop:"MTU",name:"MTU",exported:true,typ:$Int,tag:""},{prop:"Name",name:"Name",exported:true,typ:$String,tag:""},{prop:"HardwareAddr",name:"HardwareAddr",exported:true,typ:JE,tag:""},{prop:"Flags",name:"Flags",exported:true,typ:FW,tag:""}]);GD.init("net",[{prop:"RWMutex",name:"",exported:true,typ:H.RWMutex,tag:""},{prop:"lastFetched",name:"lastFetched",exported:false,typ:J.Time,tag:""},{prop:"toIndex",name:"toIndex",exported:false,typ:ST,tag:""},{prop:"toName",name:"toName",exported:false,typ:SU,tag:""}]);GQ.init($Uint8);GR.init($Uint8);GS.init("",[{prop:"IP",name:"IP",exported:true,typ:GQ,tag:""},{prop:"Mask",name:"Mask",exported:true,typ:GR,tag:""}]);HL.init("",[{prop:"IP",name:"IP",exported:true,typ:GQ,tag:""},{prop:"Zone",name:"Zone",exported:true,typ:$String,tag:""}]);JE.init($Uint8);JJ.init([{prop:"Network",name:"Network",pkg:"",typ:$funcType([],[$String],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}]);JW.init("",[{prop:"Op",name:"Op",exported:true,typ:$String,tag:""},{prop:"Net",name:"Net",exported:true,typ:$String,tag:""},{prop:"Source",name:"Source",exported:true,typ:JJ,tag:""},{prop:"Addr",name:"Addr",exported:true,typ:JJ,tag:""},{prop:"Err",name:"Err",exported:true,typ:$error,tag:""}]);KA.init([{prop:"Timeout",name:"Timeout",pkg:"",typ:$funcType([],[$Bool],false)}]);KB.init([{prop:"Temporary",name:"Temporary",pkg:"",typ:$funcType([],[$Bool],false)}]);KD.init("",[{prop:"Type",name:"Type",exported:true,typ:$String,tag:""},{prop:"Text",name:"Text",exported:true,typ:$String,tag:""}]);KE.init("",[{prop:"Err",name:"Err",exported:true,typ:$String,tag:""},{prop:"Addr",name:"Addr",exported:true,typ:$String,tag:""}]);KY.init("net",[{prop:"file",name:"file",exported:false,typ:QT,tag:""},{prop:"data",name:"data",exported:false,typ:PE,tag:""},{prop:"atEOF",name:"atEOF",exported:false,typ:$Bool,tag:""}]);MK.init([{prop:"Network",name:"Network",pkg:"",typ:$funcType([],[$String],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"family",name:"family",pkg:"net",typ:$funcType([],[$Int],false)},{prop:"isWildcard",name:"isWildcard",pkg:"net",typ:$funcType([],[$Bool],false)},{prop:"sockaddr",name:"sockaddr",pkg:"net",typ:$funcType([$Int],[B.Sockaddr,$error],false)},{prop:"toLocal",name:"toLocal",pkg:"net",typ:$funcType([$String],[MK],false)}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=E.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=N.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=L.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=K.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=M.$init();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$init();$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}HV=false;HW=false;HX=false;JG=false;DK=$makeMap($Int.keyFor,[{k:5,v:(function(){var $ptr;return new DB.ptr(new CZ.ptr("",0,0,0,0),"");})},{k:15,v:(function(){var $ptr;return new DC.ptr(new CZ.ptr("",0,0,0,0),0,"");})},{k:2,v:(function(){var $ptr;return new DD.ptr(new CZ.ptr("",0,0,0,0),"");})},{k:12,v:(function(){var $ptr;return new DE.ptr(new CZ.ptr("",0,0,0,0),"");})},{k:6,v:(function(){var $ptr;return new DF.ptr(new CZ.ptr("",0,0,0,0),"","",0,0,0,0,0);})},{k:16,v:(function(){var $ptr;return new DG.ptr(new CZ.ptr("",0,0,0,0),"");})},{k:33,v:(function(){var $ptr;return new DH.ptr(new CZ.ptr("",0,0,0,0),0,0,0,"");})},{k:1,v:(function(){var $ptr;return new DI.ptr(new CZ.ptr("",0,0,0,0),0);})},{k:28,v:(function(){var $ptr;return new DJ.ptr(new CZ.ptr("",0,0,0,0),PD.zero());})}]);FA=(function $b(g,h,i){var $ptr,g,h,i,j,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;g=$f.g;h=$f.h;i=$f.i;j=$f.j;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:j=h(g,i);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$s=-1;return j;}return;}if($f===undefined){$f={$blk:$b};}$f.$ptr=$ptr;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.$s=$s;$f.$r=$r;return $f;});FQ=A.New("invalid network interface");FR=A.New("invalid network interface index");FS=A.New("invalid network interface name");FT=A.New("no such network interface");FU=A.New("no such multicast network interface");FX=new OY(["up","broadcast","loopback","pointtopoint","multicast"]);GE=new GD.ptr(new H.RWMutex.ptr(new H.Mutex.ptr(0,0),0,0,0,0),new J.Time.ptr(new $Int64(0,0),0,OV.nil),{},{});GU=new PE([0,0,0,0,0,0,0,0,0,0,255,255]);$pkg.IPv4bcast=GT(255,255,255,255);$pkg.IPv4allsys=GT(224,0,0,1);$pkg.IPv4allrouter=GT(224,0,0,2);$pkg.IPv4zero=GT(0,0,0,0);$pkg.IPv6unspecified=new GQ([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]);$pkg.IPv6loopback=new GQ([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1]);GY=GV(255,0,0,0);GZ=GV(255,255,0,0);HA=GV(255,255,255,0);JN=U();JQ=A.New("no suitable address found");JR=A.New("missing address");JT=A.New("operation was canceled");JU=A.New("use of closed network connection");$pkg.ErrWriteToConnected=A.New("use of WriteTo with pre-connected connection");JX=$clone(J.Unix(new $Int64(0,233431200),new $Int64(0,0)),J.Time);KI=A.New("no such host");KM=new $Chan(PF,500);g=AG("::1/128");$s=15;case 15:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=AG("::/0");$s=16;case 16:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=AG("::ffff:0:0/96");$s=17;case 17:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=AG("2002::/16");$s=18;case 18:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=AG("2001::/32");$s=19;case 19:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=AG("fc00::/7");$s=20;case 20:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=AG("::/96");$s=21;case 21:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=AG("fec0::/10");$s=22;case 22:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=AG("3ffe::/16");$s=23;case 23:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}AD=new AC([new AB.ptr(g,50,0),new AB.ptr(h,40,1),new AB.ptr(i,35,4),new AB.ptr(j,30,2),new AB.ptr(k,5,5),new AB.ptr(l,3,13),new AB.ptr(m,1,3),new AB.ptr(n,1,11),new AB.ptr(o,1,12)]);$r=AE();$s=24;case 24:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}AK();JI();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["github.com/satori/go.uuid"]=(function(){var $pkg={},$init,A,B,C,D,E,F,G,H,I,J,K,L,M,AC,AT,AU,AV,AW,AX,T,U,V,W,a,b,c,d,e,f,g,h,AG,AJ,AQ,AR;A=$packages["bytes"];B=$packages["crypto/md5"];C=$packages["crypto/rand"];D=$packages["crypto/sha1"];E=$packages["database/sql/driver"];F=$packages["encoding/binary"];G=$packages["encoding/hex"];H=$packages["fmt"];I=$packages["hash"];J=$packages["net"];K=$packages["os"];L=$packages["sync"];M=$packages["time"];AC=$pkg.UUID=$newType(16,$kindArray,"uuid.UUID",true,"github.com/satori/go.uuid",true,null);AT=$sliceType($Uint8);AU=$sliceType($Int);AV=$arrayType($Uint8,16);AW=$sliceType($emptyInterface);AX=$ptrType(AC);AG=function(i,j){var $ptr,i,j;return A.Equal(new AT(i),new AT(j));};$pkg.Equal=AG;AC.prototype.Version=function(){var $ptr,i;i=this.$val;return((i[6]>>>4<<24>>>24)>>>0);};$ptrType(AC).prototype.Version=function(){return new AC(this.$get()).Version();};AC.prototype.Variant=function(){var $ptr,i;i=this.$val;if(((((i[8]&128)>>>0))===0)){return 0;}else if(((((((i[8]&192)>>>0))|128)>>>0)===128)){return 1;}else if(((((((i[8]&224)>>>0))|192)>>>0)===192)){return 2;}return 3;};$ptrType(AC).prototype.Variant=function(){return new AC(this.$get()).Variant();};AC.prototype.Bytes=function(){var $ptr,i;i=this.$val;return new AT(i);};$ptrType(AC).prototype.Bytes=function(){return new AC(this.$get()).Bytes();};AC.prototype.String=function(){var $ptr,i,j;i=this.$val;j=$makeSlice(AT,36);G.Encode($subslice(j,0,8),$subslice(new AT(i),0,4));(8>=j.$length?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+8]=45);G.Encode($subslice(j,9,13),$subslice(new AT(i),4,6));(13>=j.$length?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+13]=45);G.Encode($subslice(j,14,18),$subslice(new AT(i),6,8));(18>=j.$length?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+18]=45);G.Encode($subslice(j,19,23),$subslice(new AT(i),8,10));(23>=j.$length?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+23]=45);G.Encode($subslice(j,24),$subslice(new AT(i),10));return $bytesToString(j);};$ptrType(AC).prototype.String=function(){return new AC(this.$get()).String();};AC.prototype.SetVersion=function(i){var $ptr,i,j;j=this.$val;j.nilCheck,j[6]=((((((j.nilCheck,j[6])&15)>>>0))|((i<<4<<24>>>24)))>>>0);};$ptrType(AC).prototype.SetVersion=function(i){return(new AC(this.$get())).SetVersion(i);};AC.prototype.SetVariant=function(){var $ptr,i;i=this.$val;i.nilCheck,i[8]=((((((i.nilCheck,i[8])&191)>>>0))|128)>>>0);};$ptrType(AC).prototype.SetVariant=function(){return(new AC(this.$get())).SetVariant();};AC.prototype.MarshalText=function(){var $ptr,i,j,k;i=AT.nil;j=$ifaceNil;k=this.$val;i=new AT($stringToBytes(new AC($clone(k,AC)).String()));return[i,j];};$ptrType(AC).prototype.MarshalText=function(){return new AC(this.$get()).MarshalText();};AC.prototype.UnmarshalText=function(i){var $ptr,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:j=$ifaceNil;k=this.$val;if(i.$length<32){$s=1;continue;}$s=2;continue;case 1:l=H.Errorf("uuid: UUID string too short: %s",new AW([i]));$s=3;case 3:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}j=l;$s=-1;return j;case 2:m=i;n=false;if(A.Equal($subslice(m,0,9),V)){m=$subslice(m,9);}else if((0>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+0])===123){n=true;m=$subslice(m,1);}o=new AT(k);p=W;q=0;case 4:if(!(q<p.$length)){$s=5;continue;}r=q;s=((q<0||q>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+q]);if(r>0){$s=6;continue;}$s=7;continue;case 6:if(!(((0>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+0])===45))){$s=8;continue;}$s=9;continue;case 8:t=H.Errorf("uuid: invalid string format",new AW([]));$s=10;case 10:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}j=t;$s=-1;return j;case 9:m=$subslice(m,1);case 7:if(m.$length<s){$s=11;continue;}$s=12;continue;case 11:u=H.Errorf("uuid: UUID string too short: %s",new AW([i]));$s=13;case 13:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}j=u;$s=-1;return j;case 12:if((r===4)&&m.$length>s&&((n&&!((((s<0||s>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+s])===125)))||$subslice(m,s).$length>1||!n)){$s=14;continue;}$s=15;continue;case 14:v=H.Errorf("uuid: UUID string too long: %s",new AW([i]));$s=16;case 16:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}j=v;$s=-1;return j;case 15:w=G.Decode($subslice(o,0,(x=s/2,(x===x&&x!==1/0&&x!==-1/0)?x>>0:$throwRuntimeError("integer divide by zero"))),$subslice(m,0,s));j=w[1];if(!($interfaceIsEqual(j,$ifaceNil))){$s=-1;return j;}m=$subslice(m,s);o=$subslice(o,(y=s/2,(y===y&&y!==1/0&&y!==-1/0)?y>>0:$throwRuntimeError("integer divide by zero")));q++;$s=4;continue;case 5:$s=-1;return j;}return;}if($f===undefined){$f={$blk:AC.prototype.UnmarshalText};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(AC).prototype.UnmarshalText=function(i){return(new AC(this.$get())).UnmarshalText(i);};AC.prototype.MarshalBinary=function(){var $ptr,i,j,k;i=AT.nil;j=$ifaceNil;k=this.$val;i=new AC($clone(k,AC)).Bytes();return[i,j];};$ptrType(AC).prototype.MarshalBinary=function(){return new AC(this.$get()).MarshalBinary();};AC.prototype.UnmarshalBinary=function(i){var $ptr,i,j,k,l,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:j=$ifaceNil;k=this.$val;if(!((i.$length===16))){$s=1;continue;}$s=2;continue;case 1:l=H.Errorf("uuid: UUID must be exactly 16 bytes long, got %d bytes",new AW([new $Int(i.$length)]));$s=3;case 3:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}j=l;$s=-1;return j;case 2:$copySlice(new AT(k),i);$s=-1;return j;}return;}if($f===undefined){$f={$blk:AC.prototype.UnmarshalBinary};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(AC).prototype.UnmarshalBinary=function(i){return(new AC(this.$get())).UnmarshalBinary(i);};AC.prototype.Value=function(){var $ptr,i;i=this.$val;return[new $String(new AC($clone(i,AC)).String()),$ifaceNil];};$ptrType(AC).prototype.Value=function(){return new AC(this.$get()).Value();};AC.prototype.Scan=function(i){var $ptr,i,j,k,l,m,n,o,p,q,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:j=this.$val;k=i;if($assertType(k,AT,true)[1]){$s=1;continue;}if($assertType(k,$String,true)[1]){$s=2;continue;}$s=3;continue;case 1:l=k.$val;if(l.$length===16){$s=4;continue;}$s=5;continue;case 4:n=new AX(j).UnmarshalBinary(l);$s=6;case 6:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$s=-1;return n;case 5:o=new AX(j).UnmarshalText(l);$s=7;case 7:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$s=-1;return o;case 2:m=k.$val;p=new AX(j).UnmarshalText(new AT($stringToBytes(m)));$s=8;case 8:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}$s=-1;return p;case 3:q=H.Errorf("uuid: cannot convert %T to UUID",new AW([i]));$s=9;case 9:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}$s=-1;return q;}return;}if($f===undefined){$f={$blk:AC.prototype.Scan};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.$s=$s;$f.$r=$r;return $f;};$ptrType(AC).prototype.Scan=function(i){return(new AC(this.$get())).Scan(i);};AJ=function(i){var $ptr,i,j,k,l,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:j=AV.zero();k=$ifaceNil;l=new AX(j).UnmarshalText(new AT($stringToBytes(i)));$s=1;case 1:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}k=l;$s=-1;return[j,k];}return;}if($f===undefined){$f={$blk:AJ};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};$pkg.FromString=AJ;AQ=function(i,j){var $ptr,i,j,k,l,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;j=$f.j;k=$f.k;l=$f.l;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:k=AR(D.New(),$clone(i,AC),j);$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=$clone(k,AC);new AX(l).SetVersion(5);new AX(l).SetVariant();$s=-1;return l;}return;}if($f===undefined){$f={$blk:AQ};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.$s=$s;$f.$r=$r;return $f;};$pkg.NewV5=AQ;AR=function(i,j,k){var $ptr,i,j,k,l,m,n,o,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:l=AV.zero();m=i.Write(new AT(j));$s=1;case 1:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}m;n=i.Write(new AT($stringToBytes(k)));$s=2;case 2:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}n;o=i.Sum(AT.nil);$s=3;case 3:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$copySlice(new AT(l),o);$s=-1;return l;}return;}if($f===undefined){$f={$blk:AR};}$f.$ptr=$ptr;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.$s=$s;$f.$r=$r;return $f;};AC.methods=[{prop:"Version",name:"Version",pkg:"",typ:$funcType([],[$Uint],false)},{prop:"Variant",name:"Variant",pkg:"",typ:$funcType([],[$Uint],false)},{prop:"Bytes",name:"Bytes",pkg:"",typ:$funcType([],[AT],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"MarshalText",name:"MarshalText",pkg:"",typ:$funcType([],[AT,$error],false)},{prop:"MarshalBinary",name:"MarshalBinary",pkg:"",typ:$funcType([],[AT,$error],false)},{prop:"Value",name:"Value",pkg:"",typ:$funcType([],[E.Value,$error],false)}];AX.methods=[{prop:"SetVersion",name:"SetVersion",pkg:"",typ:$funcType([$Uint8],[],false)},{prop:"SetVariant",name:"SetVariant",pkg:"",typ:$funcType([],[],false)},{prop:"UnmarshalText",name:"UnmarshalText",pkg:"",typ:$funcType([AT],[$error],false)},{prop:"UnmarshalBinary",name:"UnmarshalBinary",pkg:"",typ:$funcType([AT],[$error],false)},{prop:"Scan",name:"Scan",pkg:"",typ:$funcType([$emptyInterface],[$error],false)}];AC.init($Uint8,16);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=K.$init();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=L.$init();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=M.$init();$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}T=(K.Getuid()>>>0);U=(K.Getgid()>>>0);V=new AT($stringToBytes("urn:uuid:"));W=new AU([8,4,4,4,12]);$pkg.Nil=AV.zero();b=AJ("6ba7b810-9dad-11d1-80b4-00c04fd430c8");$s=14;case 14:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}a=b;$pkg.NamespaceDNS=$clone(a[0],AC);d=AJ("6ba7b811-9dad-11d1-80b4-00c04fd430c8");$s=15;case 15:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;$pkg.NamespaceURL=$clone(c[0],AC);f=AJ("6ba7b812-9dad-11d1-80b4-00c04fd430c8");$s=16;case 16:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;$pkg.NamespaceOID=$clone(e[0],AC);h=AJ("6ba7b814-9dad-11d1-80b4-00c04fd430c8");$s=17;case 17:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;$pkg.NamespaceX500=$clone(g[0],AC);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["crypto/sha256"]=(function(){var $pkg={},$init,A,B,D,L,M,N,O,P,R,S,I,K,C,E,F,J;A=$packages["crypto"];B=$packages["hash"];D=$pkg.digest=$newType(0,$kindStruct,"sha256.digest",true,"crypto/sha256",false,function(h_,x_,nx_,len_,is224_){this.$val=this;if(arguments.length===0){this.h=M.zero();this.x=N.zero();this.nx=0;this.len=new $Uint64(0,0);this.is224=false;return;}this.h=h_;this.x=x_;this.nx=nx_;this.len=len_;this.is224=is224_;});L=$sliceType($Uint32);M=$arrayType($Uint32,8);N=$arrayType($Uint8,64);O=$sliceType($Uint8);P=$arrayType($Uint8,32);R=$arrayType($Uint32,64);S=$ptrType(D);C=function(){var $ptr;A.RegisterHash(4,F);A.RegisterHash(5,E);};D.ptr.prototype.Reset=function(){var $ptr,a;a=this;if(!a.is224){a.h[0]=1779033703;a.h[1]=3144134277;a.h[2]=1013904242;a.h[3]=2773480762;a.h[4]=1359893119;a.h[5]=2600822924;a.h[6]=528734635;a.h[7]=1541459225;}else{a.h[0]=3238371032;a.h[1]=914150663;a.h[2]=812702999;a.h[3]=4144912697;a.h[4]=4290775857;a.h[5]=1750603025;a.h[6]=1694076839;a.h[7]=3204075428;}a.nx=0;a.len=new $Uint64(0,0);};D.prototype.Reset=function(){return this.$val.Reset();};E=function(){var $ptr,a;a=new D.ptr(M.zero(),N.zero(),0,new $Uint64(0,0),false);a.Reset();return a;};$pkg.New=E;F=function(){var $ptr,a;a=new D.ptr(M.zero(),N.zero(),0,new $Uint64(0,0),false);a.is224=true;a.Reset();return a;};$pkg.New224=F;D.ptr.prototype.Size=function(){var $ptr,a;a=this;if(!a.is224){return 32;}return 28;};D.prototype.Size=function(){return this.$val.Size();};D.ptr.prototype.BlockSize=function(){var $ptr,a;a=this;return 64;};D.prototype.BlockSize=function(){return this.$val.BlockSize();};D.ptr.prototype.Write=function(a){var $ptr,a,b,c,d,e,f,g,h,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=0;c=$ifaceNil;d=this;b=a.$length;d.len=(e=d.len,f=new $Uint64(0,b),new $Uint64(e.$high+f.$high,e.$low+f.$low));if(d.nx>0){$s=1;continue;}$s=2;continue;case 1:g=$copySlice($subslice(new O(d.x),d.nx),a);d.nx=d.nx+(g)>>0;if(d.nx===64){$s=3;continue;}$s=4;continue;case 3:$r=K(d,new O(d.x));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d.nx=0;case 4:a=$subslice(a,g);case 2:if(a.$length>=64){$s=6;continue;}$s=7;continue;case 6:h=(a.$length&~63)>>0;$r=K(d,$subslice(a,0,h));$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}a=$subslice(a,h);case 7:if(a.$length>0){d.nx=$copySlice(new O(d.x),a);}$s=-1;return[b,c];}return;}if($f===undefined){$f={$blk:D.ptr.prototype.Write};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};D.prototype.Write=function(a){return this.$val.Write(a);};D.ptr.prototype.Sum=function(a){var $ptr,a,b,c,d,e,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=$clone(b,D);d=c.checkSum();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=$clone(d,P);if(c.is224){$s=-1;return $appendSlice(a,$subslice(new O(e),0,28));}$s=-1;return $appendSlice(a,new O(e));}return;}if($f===undefined){$f={$blk:D.ptr.prototype.Sum};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.$s=$s;$f.$r=$r;return $f;};D.prototype.Sum=function(a){return this.$val.Sum(a);};D.ptr.prototype.checkSum=function(){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.len;c=N.zero();c[0]=128;if((d=$div64(b,new $Uint64(0,64),true),(d.$high<0||(d.$high===0&&d.$low<56)))){$s=1;continue;}$s=2;continue;case 1:f=a.Write($subslice(new O(c),0,$flatten64((e=$div64(b,new $Uint64(0,64),true),new $Uint64(0-e.$high,56-e.$low)))));$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;$s=3;continue;case 2:h=a.Write($subslice(new O(c),0,$flatten64((g=$div64(b,new $Uint64(0,64),true),new $Uint64(0-g.$high,120-g.$low)))));$s=5;case 5:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}h;case 3:b=$shiftLeft64(b,(3));i=0;while(true){if(!(i<8)){break;}((i<0||i>=c.length)?($throwRuntimeError("index out of range"),undefined):c[i]=($shiftRightUint64(b,((56-(8*i>>>0)>>>0))).$low<<24>>>24));i=i+(1)>>>0;}j=a.Write($subslice(new O(c),0,8));$s=6;case 6:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;if(!((a.nx===0))){$panic(new $String("d.nx != 0"));}k=new L(a.h);if(a.is224){k=$subslice(new L(a.h),0,7);}l=P.zero();m=k;n=0;while(true){if(!(n<m.$length)){break;}o=n;p=((n<0||n>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+n]);(q=$imul(o,4),((q<0||q>=l.length)?($throwRuntimeError("index out of range"),undefined):l[q]=((p>>>24>>>0)<<24>>>24)));(r=($imul(o,4))+1>>0,((r<0||r>=l.length)?($throwRuntimeError("index out of range"),undefined):l[r]=((p>>>16>>>0)<<24>>>24)));(s=($imul(o,4))+2>>0,((s<0||s>=l.length)?($throwRuntimeError("index out of range"),undefined):l[s]=((p>>>8>>>0)<<24>>>24)));(t=($imul(o,4))+3>>0,((t<0||t>=l.length)?($throwRuntimeError("index out of range"),undefined):l[t]=(p<<24>>>24)));n++;}$s=-1;return l;}return;}if($f===undefined){$f={$blk:D.ptr.prototype.checkSum};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.$s=$s;$f.$r=$r;return $f;};D.prototype.checkSum=function(){return this.$val.checkSum();};J=function(a,b){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,bd,be,bf,bg,bh,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;c=R.zero();d=a.h[0];e=a.h[1];f=a.h[2];g=a.h[3];h=a.h[4];i=a.h[5];j=a.h[6];k=a.h[7];l=d;m=e;n=f;o=g;p=h;q=i;r=j;s=k;while(true){if(!(b.$length>=64)){break;}t=0;while(true){if(!(t<16)){break;}u=$imul(t,4);((t<0||t>=c.length)?($throwRuntimeError("index out of range"),undefined):c[t]=((((((((((u<0||u>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+u])>>>0)<<24>>>0)|(((v=u+1>>0,((v<0||v>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+v]))>>>0)<<16>>>0))>>>0)|(((w=u+2>>0,((w<0||w>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+w]))>>>0)<<8>>>0))>>>0)|((x=u+3>>0,((x<0||x>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+x]))>>>0))>>>0));t=t+(1)>>0;}y=16;while(true){if(!(y<64)){break;}aa=(z=y-2>>0,((z<0||z>=c.length)?($throwRuntimeError("index out of range"),undefined):c[z]));ab=(((((((aa>>>17>>>0)|(aa<<15>>>0))>>>0))^((((aa>>>19>>>0)|(aa<<13>>>0))>>>0)))>>>0)^((aa>>>10>>>0)))>>>0;ad=(ac=y-15>>0,((ac<0||ac>=c.length)?($throwRuntimeError("index out of range"),undefined):c[ac]));ae=(((((((ad>>>7>>>0)|(ad<<25>>>0))>>>0))^((((ad>>>18>>>0)|(ad<<14>>>0))>>>0)))>>>0)^((ad>>>3>>>0)))>>>0;((y<0||y>=c.length)?($throwRuntimeError("index out of range"),undefined):c[y]=(((ab+(af=y-7>>0,((af<0||af>=c.length)?($throwRuntimeError("index out of range"),undefined):c[af]))>>>0)+ae>>>0)+(ag=y-16>>0,((ag<0||ag>=c.length)?($throwRuntimeError("index out of range"),undefined):c[ag]))>>>0));y=y+(1)>>0;}ah=l;ai=m;aj=n;ak=o;al=p;am=q;an=r;ao=s;ap=ah;aq=ai;ar=aj;as=ak;at=al;au=am;av=an;aw=ao;ax=0;while(true){if(!(ax<64)){break;}ay=(((aw+(((((((((at>>>6>>>0)|(at<<26>>>0))>>>0))^((((at>>>11>>>0)|(at<<21>>>0))>>>0)))>>>0)^((((at>>>25>>>0)|(at<<7>>>0))>>>0)))>>>0))>>>0)+((((((at&au)>>>0))^((((~at>>>0)&av)>>>0)))>>>0))>>>0)+((ax<0||ax>=I.$length)?($throwRuntimeError("index out of range"),undefined):I.$array[I.$offset+ax])>>>0)+((ax<0||ax>=c.length)?($throwRuntimeError("index out of range"),undefined):c[ax])>>>0;az=(((((((((ap>>>2>>>0)|(ap<<30>>>0))>>>0))^((((ap>>>13>>>0)|(ap<<19>>>0))>>>0)))>>>0)^((((ap>>>22>>>0)|(ap<<10>>>0))>>>0)))>>>0))+((((((((ap&aq)>>>0))^(((ap&ar)>>>0)))>>>0)^(((aq&ar)>>>0)))>>>0))>>>0;aw=av;av=au;au=at;at=as+ay>>>0;as=ar;ar=aq;aq=ap;ap=ay+az>>>0;ax=ax+(1)>>0;}l=l+(ap)>>>0;m=m+(aq)>>>0;n=n+(ar)>>>0;o=o+(as)>>>0;p=p+(at)>>>0;q=q+(au)>>>0;r=r+(av)>>>0;s=s+(aw)>>>0;b=$subslice(b,64);}ba=l;bb=m;bc=n;bd=o;be=p;bf=q;bg=r;bh=s;a.h[0]=ba;a.h[1]=bb;a.h[2]=bc;a.h[3]=bd;a.h[4]=be;a.h[5]=bf;a.h[6]=bg;a.h[7]=bh;};S.methods=[{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([],[],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int],false)},{prop:"BlockSize",name:"BlockSize",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([O],[$Int,$error],false)},{prop:"Sum",name:"Sum",pkg:"",typ:$funcType([O],[O],false)},{prop:"checkSum",name:"checkSum",pkg:"crypto/sha256",typ:$funcType([],[P],false)}];D.init("crypto/sha256",[{prop:"h",name:"h",exported:false,typ:M,tag:""},{prop:"x",name:"x",exported:false,typ:N,tag:""},{prop:"nx",name:"nx",exported:false,typ:$Int,tag:""},{prop:"len",name:"len",exported:false,typ:$Uint64,tag:""},{prop:"is224",name:"is224",exported:false,typ:$Bool,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}I=new L([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]);K=J;C();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["crypto/sha512"]=(function(){var $pkg={},$init,A,B,D,P,Q,R,S,T,X,Y,M,O,C,E,F,G,H,I,N;A=$packages["crypto"];B=$packages["hash"];D=$pkg.digest=$newType(0,$kindStruct,"sha512.digest",true,"crypto/sha512",false,function(h_,x_,nx_,len_,function$4_){this.$val=this;if(arguments.length===0){this.h=Q.zero();this.x=R.zero();this.nx=0;this.len=new $Uint64(0,0);this.function$4=0;return;}this.h=h_;this.x=x_;this.nx=nx_;this.len=len_;this.function$4=function$4_;});P=$sliceType($Uint64);Q=$arrayType($Uint64,8);R=$arrayType($Uint8,128);S=$sliceType($Uint8);T=$arrayType($Uint8,64);X=$arrayType($Uint64,80);Y=$ptrType(D);C=function(){var $ptr;A.RegisterHash(6,H);A.RegisterHash(7,E);A.RegisterHash(14,F);A.RegisterHash(15,G);};D.ptr.prototype.Reset=function(){var $ptr,a,b;a=this;b=a.function$4;if(b===(6)){a.h[0]=new $Uint64(3418070365,3238371032);a.h[1]=new $Uint64(1654270250,914150663);a.h[2]=new $Uint64(2438529370,812702999);a.h[3]=new $Uint64(355462360,4144912697);a.h[4]=new $Uint64(1731405415,4290775857);a.h[5]=new $Uint64(2394180231,1750603025);a.h[6]=new $Uint64(3675008525,1694076839);a.h[7]=new $Uint64(1203062813,3204075428);}else if(b===(14)){a.h[0]=new $Uint64(2352822216,424955298);a.h[1]=new $Uint64(1944164710,2312950998);a.h[2]=new $Uint64(502970286,855612546);a.h[3]=new $Uint64(1738396948,1479516111);a.h[4]=new $Uint64(258812777,2077511080);a.h[5]=new $Uint64(2011393907,79989058);a.h[6]=new $Uint64(1067287976,1780299464);a.h[7]=new $Uint64(286451373,2446758561);}else if(b===(15)){a.h[0]=new $Uint64(573645204,4230739756);a.h[1]=new $Uint64(2673172387,3360449730);a.h[2]=new $Uint64(596883563,1867755857);a.h[3]=new $Uint64(2520282905,1497426621);a.h[4]=new $Uint64(2519219938,2827943907);a.h[5]=new $Uint64(3193839141,1401305490);a.h[6]=new $Uint64(721525244,746961066);a.h[7]=new $Uint64(246885852,2177182882);}else{a.h[0]=new $Uint64(1779033703,4089235720);a.h[1]=new $Uint64(3144134277,2227873595);a.h[2]=new $Uint64(1013904242,4271175723);a.h[3]=new $Uint64(2773480762,1595750129);a.h[4]=new $Uint64(1359893119,2917565137);a.h[5]=new $Uint64(2600822924,725511199);a.h[6]=new $Uint64(528734635,4215389547);a.h[7]=new $Uint64(1541459225,327033209);}a.nx=0;a.len=new $Uint64(0,0);};D.prototype.Reset=function(){return this.$val.Reset();};E=function(){var $ptr,a;a=new D.ptr(Q.zero(),R.zero(),0,new $Uint64(0,0),7);a.Reset();return a;};$pkg.New=E;F=function(){var $ptr,a;a=new D.ptr(Q.zero(),R.zero(),0,new $Uint64(0,0),14);a.Reset();return a;};$pkg.New512_224=F;G=function(){var $ptr,a;a=new D.ptr(Q.zero(),R.zero(),0,new $Uint64(0,0),15);a.Reset();return a;};$pkg.New512_256=G;H=function(){var $ptr,a;a=new D.ptr(Q.zero(),R.zero(),0,new $Uint64(0,0),6);a.Reset();return a;};$pkg.New384=H;D.ptr.prototype.Size=function(){var $ptr,a,b;a=this;b=a.function$4;if(b===(14)){return 28;}else if(b===(15)){return 32;}else if(b===(6)){return 48;}else{return 64;}};D.prototype.Size=function(){return this.$val.Size();};D.ptr.prototype.BlockSize=function(){var $ptr,a;a=this;return 128;};D.prototype.BlockSize=function(){return this.$val.BlockSize();};D.ptr.prototype.Write=function(a){var $ptr,a,b,c,d,e,f,g,h,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=0;c=$ifaceNil;d=this;b=a.$length;d.len=(e=d.len,f=new $Uint64(0,b),new $Uint64(e.$high+f.$high,e.$low+f.$low));if(d.nx>0){$s=1;continue;}$s=2;continue;case 1:g=$copySlice($subslice(new S(d.x),d.nx),a);d.nx=d.nx+(g)>>0;if(d.nx===128){$s=3;continue;}$s=4;continue;case 3:$r=O(d,new S(d.x));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d.nx=0;case 4:a=$subslice(a,g);case 2:if(a.$length>=128){$s=6;continue;}$s=7;continue;case 6:h=(a.$length&~127)>>0;$r=O(d,$subslice(a,0,h));$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}a=$subslice(a,h);case 7:if(a.$length>0){d.nx=$copySlice(new S(d.x),a);}$s=-1;return[b,c];}return;}if($f===undefined){$f={$blk:D.ptr.prototype.Write};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.$s=$s;$f.$r=$r;return $f;};D.prototype.Write=function(a){return this.$val.Write(a);};D.ptr.prototype.Sum=function(a){var $ptr,a,b,c,d,e,f,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;c=new D.ptr(Q.zero(),R.zero(),0,new $Uint64(0,0),0);D.copy(c,b);d=c.checkSum();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=$clone(d,T);f=c.function$4;if(f===(6)){$s=-1;return $appendSlice(a,$subslice(new S(e),0,48));}else if(f===(14)){$s=-1;return $appendSlice(a,$subslice(new S(e),0,28));}else if(f===(15)){$s=-1;return $appendSlice(a,$subslice(new S(e),0,32));}else{$s=-1;return $appendSlice(a,new S(e));}$s=-1;return S.nil;}return;}if($f===undefined){$f={$blk:D.ptr.prototype.Sum};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.$s=$s;$f.$r=$r;return $f;};D.prototype.Sum=function(a){return this.$val.Sum(a);};D.ptr.prototype.checkSum=function(){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;b=a.len;c=R.zero();c[0]=128;if((d=$div64(b,new $Uint64(0,128),true),(d.$high<0||(d.$high===0&&d.$low<112)))){$s=1;continue;}$s=2;continue;case 1:f=a.Write($subslice(new S(c),0,$flatten64((e=$div64(b,new $Uint64(0,128),true),new $Uint64(0-e.$high,112-e.$low)))));$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;$s=3;continue;case 2:h=a.Write($subslice(new S(c),0,$flatten64((g=$div64(b,new $Uint64(0,128),true),new $Uint64(0-g.$high,240-g.$low)))));$s=5;case 5:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}h;case 3:b=$shiftLeft64(b,(3));i=0;while(true){if(!(i<16)){break;}((i<0||i>=c.length)?($throwRuntimeError("index out of range"),undefined):c[i]=($shiftRightUint64(b,((120-(8*i>>>0)>>>0))).$low<<24>>>24));i=i+(1)>>>0;}j=a.Write($subslice(new S(c),0,16));$s=6;case 6:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;if(!((a.nx===0))){$panic(new $String("d.nx != 0"));}k=new P(a.h);if(a.function$4===6){k=$subslice(new P(a.h),0,6);}l=T.zero();m=k;n=0;while(true){if(!(n<m.$length)){break;}o=n;p=((n<0||n>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+n]);(q=$imul(o,8),((q<0||q>=l.length)?($throwRuntimeError("index out of range"),undefined):l[q]=($shiftRightUint64(p,56).$low<<24>>>24)));(r=($imul(o,8))+1>>0,((r<0||r>=l.length)?($throwRuntimeError("index out of range"),undefined):l[r]=($shiftRightUint64(p,48).$low<<24>>>24)));(s=($imul(o,8))+2>>0,((s<0||s>=l.length)?($throwRuntimeError("index out of range"),undefined):l[s]=($shiftRightUint64(p,40).$low<<24>>>24)));(t=($imul(o,8))+3>>0,((t<0||t>=l.length)?($throwRuntimeError("index out of range"),undefined):l[t]=($shiftRightUint64(p,32).$low<<24>>>24)));(u=($imul(o,8))+4>>0,((u<0||u>=l.length)?($throwRuntimeError("index out of range"),undefined):l[u]=($shiftRightUint64(p,24).$low<<24>>>24)));(v=($imul(o,8))+5>>0,((v<0||v>=l.length)?($throwRuntimeError("index out of range"),undefined):l[v]=($shiftRightUint64(p,16).$low<<24>>>24)));(w=($imul(o,8))+6>>0,((w<0||w>=l.length)?($throwRuntimeError("index out of range"),undefined):l[w]=($shiftRightUint64(p,8).$low<<24>>>24)));(x=($imul(o,8))+7>>0,((x<0||x>=l.length)?($throwRuntimeError("index out of range"),undefined):l[x]=(p.$low<<24>>>24)));n++;}$s=-1;return l;}return;}if($f===undefined){$f={$blk:D.ptr.prototype.checkSum};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.$s=$s;$f.$r=$r;return $f;};D.prototype.checkSum=function(){return this.$val.checkSum();};I=function(a){var $ptr,a,b,c,d,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=new D.ptr(Q.zero(),R.zero(),0,new $Uint64(0,0),7);b.Reset();c=b.Write(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}c;d=b.checkSum();$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$s=-1;return d;}return;}if($f===undefined){$f={$blk:I};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.$s=$s;$f.$r=$r;return $f;};$pkg.Sum512=I;N=function(a,b){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,c,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,cu,cv,cw,cx,cy,cz,d,da,db,dc,dd,de,df,dg,dh,di,dj,dk,dl,dm,dn,dp,dq,dr,ds,dt,du,dv,dw,dx,dy,dz,e,ea,eb,ec,ed,ee,ef,eg,eh,ei,ej,ek,el,em,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;c=X.zero();d=a.h[0];e=a.h[1];f=a.h[2];g=a.h[3];h=a.h[4];i=a.h[5];j=a.h[6];k=a.h[7];l=d;m=e;n=f;o=g;p=h;q=i;r=j;s=k;while(true){if(!(b.$length>=128)){break;}t=0;while(true){if(!(t<16)){break;}u=$imul(t,8);((t<0||t>=c.length)?($throwRuntimeError("index out of range"),undefined):c[t]=(v=(w=(x=(y=(z=(aa=(ab=$shiftLeft64(new $Uint64(0,((u<0||u>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+u])),56),ac=$shiftLeft64(new $Uint64(0,(ad=u+1>>0,((ad<0||ad>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+ad]))),48),new $Uint64(ab.$high|ac.$high,(ab.$low|ac.$low)>>>0)),ae=$shiftLeft64(new $Uint64(0,(af=u+2>>0,((af<0||af>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+af]))),40),new $Uint64(aa.$high|ae.$high,(aa.$low|ae.$low)>>>0)),ag=$shiftLeft64(new $Uint64(0,(ah=u+3>>0,((ah<0||ah>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+ah]))),32),new $Uint64(z.$high|ag.$high,(z.$low|ag.$low)>>>0)),ai=$shiftLeft64(new $Uint64(0,(aj=u+4>>0,((aj<0||aj>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+aj]))),24),new $Uint64(y.$high|ai.$high,(y.$low|ai.$low)>>>0)),ak=$shiftLeft64(new $Uint64(0,(al=u+5>>0,((al<0||al>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+al]))),16),new $Uint64(x.$high|ak.$high,(x.$low|ak.$low)>>>0)),am=$shiftLeft64(new $Uint64(0,(an=u+6>>0,((an<0||an>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+an]))),8),new $Uint64(w.$high|am.$high,(w.$low|am.$low)>>>0)),ao=new $Uint64(0,(ap=u+7>>0,((ap<0||ap>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+ap]))),new $Uint64(v.$high|ao.$high,(v.$low|ao.$low)>>>0)));t=t+(1)>>0;}aq=16;while(true){if(!(aq<80)){break;}as=(ar=aq-2>>0,((ar<0||ar>=c.length)?($throwRuntimeError("index out of range"),undefined):c[ar]));bb=(at=(au=(av=$shiftRightUint64(as,19),aw=$shiftLeft64(as,45),new $Uint64(av.$high|aw.$high,(av.$low|aw.$low)>>>0)),ax=(ay=$shiftRightUint64(as,61),az=$shiftLeft64(as,3),new $Uint64(ay.$high|az.$high,(ay.$low|az.$low)>>>0)),new $Uint64(au.$high^ax.$high,(au.$low^ax.$low)>>>0)),ba=$shiftRightUint64(as,6),new $Uint64(at.$high^ba.$high,(at.$low^ba.$low)>>>0));bd=(bc=aq-15>>0,((bc<0||bc>=c.length)?($throwRuntimeError("index out of range"),undefined):c[bc]));bm=(be=(bf=(bg=$shiftRightUint64(bd,1),bh=$shiftLeft64(bd,63),new $Uint64(bg.$high|bh.$high,(bg.$low|bh.$low)>>>0)),bi=(bj=$shiftRightUint64(bd,8),bk=$shiftLeft64(bd,56),new $Uint64(bj.$high|bk.$high,(bj.$low|bk.$low)>>>0)),new $Uint64(bf.$high^bi.$high,(bf.$low^bi.$low)>>>0)),bl=$shiftRightUint64(bd,7),new $Uint64(be.$high^bl.$high,(be.$low^bl.$low)>>>0));((aq<0||aq>=c.length)?($throwRuntimeError("index out of range"),undefined):c[aq]=(bn=(bo=(bp=(bq=aq-7>>0,((bq<0||bq>=c.length)?($throwRuntimeError("index out of range"),undefined):c[bq])),new $Uint64(bb.$high+bp.$high,bb.$low+bp.$low)),new $Uint64(bo.$high+bm.$high,bo.$low+bm.$low)),br=(bs=aq-16>>0,((bs<0||bs>=c.length)?($throwRuntimeError("index out of range"),undefined):c[bs])),new $Uint64(bn.$high+br.$high,bn.$low+br.$low)));aq=aq+(1)>>0;}bt=l;bu=m;bv=n;bw=o;bx=p;by=q;bz=r;ca=s;cb=bt;cc=bu;cd=bv;ce=bw;cf=bx;cg=by;ch=bz;ci=ca;cj=0;while(true){if(!(cj<80)){break;}de=(ck=(cl=(cm=(cn=(co=(cp=(cq=$shiftRightUint64(cf,14),cr=$shiftLeft64(cf,50),new $Uint64(cq.$high|cr.$high,(cq.$low|cr.$low)>>>0)),cs=(ct=$shiftRightUint64(cf,18),cu=$shiftLeft64(cf,46),new $Uint64(ct.$high|cu.$high,(ct.$low|cu.$low)>>>0)),new $Uint64(cp.$high^cs.$high,(cp.$low^cs.$low)>>>0)),cv=(cw=$shiftRightUint64(cf,41),cx=$shiftLeft64(cf,23),new $Uint64(cw.$high|cx.$high,(cw.$low|cx.$low)>>>0)),new $Uint64(co.$high^cv.$high,(co.$low^cv.$low)>>>0)),new $Uint64(ci.$high+cn.$high,ci.$low+cn.$low)),cy=(cz=new $Uint64(cf.$high&cg.$high,(cf.$low&cg.$low)>>>0),da=(db=new $Uint64(~cf.$high,~cf.$low>>>0),new $Uint64(db.$high&ch.$high,(db.$low&ch.$low)>>>0)),new $Uint64(cz.$high^da.$high,(cz.$low^da.$low)>>>0)),new $Uint64(cm.$high+cy.$high,cm.$low+cy.$low)),dc=((cj<0||cj>=M.$length)?($throwRuntimeError("index out of range"),undefined):M.$array[M.$offset+cj]),new $Uint64(cl.$high+dc.$high,cl.$low+dc.$low)),dd=((cj<0||cj>=c.length)?($throwRuntimeError("index out of range"),undefined):c[cj]),new $Uint64(ck.$high+dd.$high,ck.$low+dd.$low));dw=(df=(dg=(dh=(di=$shiftRightUint64(cb,28),dj=$shiftLeft64(cb,36),new $Uint64(di.$high|dj.$high,(di.$low|dj.$low)>>>0)),dk=(dl=$shiftRightUint64(cb,34),dm=$shiftLeft64(cb,30),new $Uint64(dl.$high|dm.$high,(dl.$low|dm.$low)>>>0)),new $Uint64(dh.$high^dk.$high,(dh.$low^dk.$low)>>>0)),dn=(dp=$shiftRightUint64(cb,39),dq=$shiftLeft64(cb,25),new $Uint64(dp.$high|dq.$high,(dp.$low|dq.$low)>>>0)),new $Uint64(dg.$high^dn.$high,(dg.$low^dn.$low)>>>0)),dr=(ds=(dt=new $Uint64(cb.$high&cc.$high,(cb.$low&cc.$low)>>>0),du=new $Uint64(cb.$high&cd.$high,(cb.$low&cd.$low)>>>0),new $Uint64(dt.$high^du.$high,(dt.$low^du.$low)>>>0)),dv=new $Uint64(cc.$high&cd.$high,(cc.$low&cd.$low)>>>0),new $Uint64(ds.$high^dv.$high,(ds.$low^dv.$low)>>>0)),new $Uint64(df.$high+dr.$high,df.$low+dr.$low));ci=ch;ch=cg;cg=cf;cf=new $Uint64(ce.$high+de.$high,ce.$low+de.$low);ce=cd;cd=cc;cc=cb;cb=new $Uint64(de.$high+dw.$high,de.$low+dw.$low);cj=cj+(1)>>0;}l=(dx=cb,new $Uint64(l.$high+dx.$high,l.$low+dx.$low));m=(dy=cc,new $Uint64(m.$high+dy.$high,m.$low+dy.$low));n=(dz=cd,new $Uint64(n.$high+dz.$high,n.$low+dz.$low));o=(ea=ce,new $Uint64(o.$high+ea.$high,o.$low+ea.$low));p=(eb=cf,new $Uint64(p.$high+eb.$high,p.$low+eb.$low));q=(ec=cg,new $Uint64(q.$high+ec.$high,q.$low+ec.$low));r=(ed=ch,new $Uint64(r.$high+ed.$high,r.$low+ed.$low));s=(ee=ci,new $Uint64(s.$high+ee.$high,s.$low+ee.$low));b=$subslice(b,128);}ef=l;eg=m;eh=n;ei=o;ej=p;ek=q;el=r;em=s;a.h[0]=ef;a.h[1]=eg;a.h[2]=eh;a.h[3]=ei;a.h[4]=ej;a.h[5]=ek;a.h[6]=el;a.h[7]=em;};Y.methods=[{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([],[],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int],false)},{prop:"BlockSize",name:"BlockSize",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([S],[$Int,$error],false)},{prop:"Sum",name:"Sum",pkg:"",typ:$funcType([S],[S],false)},{prop:"checkSum",name:"checkSum",pkg:"crypto/sha512",typ:$funcType([],[T],false)}];D.init("crypto/sha512",[{prop:"h",name:"h",exported:false,typ:Q,tag:""},{prop:"x",name:"x",exported:false,typ:R,tag:""},{prop:"nx",name:"nx",exported:false,typ:$Int,tag:""},{prop:"len",name:"len",exported:false,typ:$Uint64,tag:""},{prop:"function$4",name:"function",exported:false,typ:A.Hash,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}M=new P([new $Uint64(1116352408,3609767458),new $Uint64(1899447441,602891725),new $Uint64(3049323471,3964484399),new $Uint64(3921009573,2173295548),new $Uint64(961987163,4081628472),new $Uint64(1508970993,3053834265),new $Uint64(2453635748,2937671579),new $Uint64(2870763221,3664609560),new $Uint64(3624381080,2734883394),new $Uint64(310598401,1164996542),new $Uint64(607225278,1323610764),new $Uint64(1426881987,3590304994),new $Uint64(1925078388,4068182383),new $Uint64(2162078206,991336113),new $Uint64(2614888103,633803317),new $Uint64(3248222580,3479774868),new $Uint64(3835390401,2666613458),new $Uint64(4022224774,944711139),new $Uint64(264347078,2341262773),new $Uint64(604807628,2007800933),new $Uint64(770255983,1495990901),new $Uint64(1249150122,1856431235),new $Uint64(1555081692,3175218132),new $Uint64(1996064986,2198950837),new $Uint64(2554220882,3999719339),new $Uint64(2821834349,766784016),new $Uint64(2952996808,2566594879),new $Uint64(3210313671,3203337956),new $Uint64(3336571891,1034457026),new $Uint64(3584528711,2466948901),new $Uint64(113926993,3758326383),new $Uint64(338241895,168717936),new $Uint64(666307205,1188179964),new $Uint64(773529912,1546045734),new $Uint64(1294757372,1522805485),new $Uint64(1396182291,2643833823),new $Uint64(1695183700,2343527390),new $Uint64(1986661051,1014477480),new $Uint64(2177026350,1206759142),new $Uint64(2456956037,344077627),new $Uint64(2730485921,1290863460),new $Uint64(2820302411,3158454273),new $Uint64(3259730800,3505952657),new $Uint64(3345764771,106217008),new $Uint64(3516065817,3606008344),new $Uint64(3600352804,1432725776),new $Uint64(4094571909,1467031594),new $Uint64(275423344,851169720),new $Uint64(430227734,3100823752),new $Uint64(506948616,1363258195),new $Uint64(659060556,3750685593),new $Uint64(883997877,3785050280),new $Uint64(958139571,3318307427),new $Uint64(1322822218,3812723403),new $Uint64(1537002063,2003034995),new $Uint64(1747873779,3602036899),new $Uint64(1955562222,1575990012),new $Uint64(2024104815,1125592928),new $Uint64(2227730452,2716904306),new $Uint64(2361852424,442776044),new $Uint64(2428436474,593698344),new $Uint64(2756734187,3733110249),new $Uint64(3204031479,2999351573),new $Uint64(3329325298,3815920427),new $Uint64(3391569614,3928383900),new $Uint64(3515267271,566280711),new $Uint64(3940187606,3454069534),new $Uint64(4118630271,4000239992),new $Uint64(116418474,1914138554),new $Uint64(174292421,2731055270),new $Uint64(289380356,3203993006),new $Uint64(460393269,320620315),new $Uint64(685471733,587496836),new $Uint64(852142971,1086792851),new $Uint64(1017036298,365543100),new $Uint64(1126000580,2618297676),new $Uint64(1288033470,3409855158),new $Uint64(1501505948,4234509866),new $Uint64(1607167915,987167468),new $Uint64(1816402316,1246189591)]);O=N;C();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
-$packages["encoding/base64"]=(function(){var $pkg={},$init,A,B,C,E,G,H,I,K,L,M,N,O,P,Q,R,S,T,U,D,F,J;A=$packages["io"];B=$packages["strconv"];C=$pkg.Encoding=$newType(0,$kindStruct,"base64.Encoding",true,"encoding/base64",true,function(encode_,decodeMap_,padChar_,strict_){this.$val=this;if(arguments.length===0){this.encode=K.zero();this.decodeMap=L.zero();this.padChar=0;this.strict=false;return;}this.encode=encode_;this.decodeMap=decodeMap_;this.padChar=padChar_;this.strict=strict_;});E=$pkg.encoder=$newType(0,$kindStruct,"base64.encoder",true,"encoding/base64",false,function(err_,enc_,w_,buf_,nbuf_,out_){this.$val=this;if(arguments.length===0){this.err=$ifaceNil;this.enc=N.nil;this.w=$ifaceNil;this.buf=O.zero();this.nbuf=0;this.out=P.zero();return;}this.err=err_;this.enc=enc_;this.w=w_;this.buf=buf_;this.nbuf=nbuf_;this.out=out_;});G=$pkg.CorruptInputError=$newType(8,$kindInt64,"base64.CorruptInputError",true,"encoding/base64",true,null);H=$pkg.decoder=$newType(0,$kindStruct,"base64.decoder",true,"encoding/base64",false,function(err_,readErr_,enc_,r_,end_,buf_,nbuf_,out_,outbuf_){this.$val=this;if(arguments.length===0){this.err=$ifaceNil;this.readErr=$ifaceNil;this.enc=N.nil;this.r=$ifaceNil;this.end=false;this.buf=P.zero();this.nbuf=0;this.out=M.nil;this.outbuf=R.zero();return;}this.err=err_;this.readErr=readErr_;this.enc=enc_;this.r=r_;this.end=end_;this.buf=buf_;this.nbuf=nbuf_;this.out=out_;this.outbuf=outbuf_;});I=$pkg.newlineFilteringReader=$newType(0,$kindStruct,"base64.newlineFilteringReader",true,"encoding/base64",false,function(wrapped_){this.$val=this;if(arguments.length===0){this.wrapped=$ifaceNil;return;}this.wrapped=wrapped_;});K=$arrayType($Uint8,64);L=$arrayType($Uint8,256);M=$sliceType($Uint8);N=$ptrType(C);O=$arrayType($Uint8,3);P=$arrayType($Uint8,1024);Q=$arrayType($Uint8,4);R=$arrayType($Uint8,768);S=$ptrType(E);T=$ptrType(H);U=$ptrType(I);D=function(a){var $ptr,a,b,c,d,e,f,g;if(!((a.length===64))){$panic(new $String("encoding alphabet is not 64-bytes long"));}b=new C.ptr(K.zero(),L.zero(),0,false);b.padChar=61;$copyString(new M(b.encode),a);c=0;while(true){if(!(c<256)){break;}(d=b.decodeMap,((c<0||c>=d.length)?($throwRuntimeError("index out of range"),undefined):d[c]=255));c=c+(1)>>0;}e=0;while(true){if(!(e<a.length)){break;}(f=b.decodeMap,g=a.charCodeAt(e),((g<0||g>=f.length)?($throwRuntimeError("index out of range"),undefined):f[g]=(e<<24>>>24)));e=e+(1)>>0;}return b;};$pkg.NewEncoding=D;C.ptr.prototype.WithPadding=function(a){var $ptr,a,b;b=this;b.padChar=a;return b;};C.prototype.WithPadding=function(a){return this.$val.WithPadding(a);};C.ptr.prototype.Strict=function(){var $ptr,a;a=this;a.strict=true;return a;};C.prototype.Strict=function(){return this.$val.Strict();};C.ptr.prototype.Encode=function(a,b){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;c=this;if(b.$length===0){return;}d=0;e=0;f=d;g=e;i=$imul(((h=b.$length/3,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero"))),3);while(true){if(!(g<i)){break;}m=((((((j=g+0>>0,((j<0||j>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+j]))>>>0)<<16>>>0)|(((k=g+1>>0,((k<0||k>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+k]))>>>0)<<8>>>0))>>>0)|((l=g+2>>0,((l<0||l>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+l]))>>>0))>>>0;(p=f+0>>0,((p<0||p>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+p]=(n=c.encode,o=((m>>>18>>>0)&63)>>>0,((o<0||o>=n.length)?($throwRuntimeError("index out of range"),undefined):n[o]))));(s=f+1>>0,((s<0||s>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+s]=(q=c.encode,r=((m>>>12>>>0)&63)>>>0,((r<0||r>=q.length)?($throwRuntimeError("index out of range"),undefined):q[r]))));(v=f+2>>0,((v<0||v>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+v]=(t=c.encode,u=((m>>>6>>>0)&63)>>>0,((u<0||u>=t.length)?($throwRuntimeError("index out of range"),undefined):t[u]))));(y=f+3>>0,((y<0||y>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+y]=(w=c.encode,x=(m&63)>>>0,((x<0||x>=w.length)?($throwRuntimeError("index out of range"),undefined):w[x]))));g=g+(3)>>0;f=f+(4)>>0;}z=b.$length-g>>0;if(z===0){return;}ab=((aa=g+0>>0,((aa<0||aa>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+aa]))>>>0)<<16>>>0;if(z===2){ab=(ab|((((ac=g+1>>0,((ac<0||ac>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+ac]))>>>0)<<8>>>0)))>>>0;}(af=f+0>>0,((af<0||af>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+af]=(ad=c.encode,ae=((ab>>>18>>>0)&63)>>>0,((ae<0||ae>=ad.length)?($throwRuntimeError("index out of range"),undefined):ad[ae]))));(ai=f+1>>0,((ai<0||ai>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ai]=(ag=c.encode,ah=((ab>>>12>>>0)&63)>>>0,((ah<0||ah>=ag.length)?($throwRuntimeError("index out of range"),undefined):ag[ah]))));aj=z;if(aj===(2)){(am=f+2>>0,((am<0||am>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+am]=(ak=c.encode,al=((ab>>>6>>>0)&63)>>>0,((al<0||al>=ak.length)?($throwRuntimeError("index out of range"),undefined):ak[al]))));if(!((c.padChar===-1))){(an=f+3>>0,((an<0||an>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+an]=(c.padChar<<24>>>24)));}}else if(aj===(1)){if(!((c.padChar===-1))){(ao=f+2>>0,((ao<0||ao>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ao]=(c.padChar<<24>>>24)));(ap=f+3>>0,((ap<0||ap>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ap]=(c.padChar<<24>>>24)));}}};C.prototype.Encode=function(a,b){return this.$val.Encode(a,b);};C.ptr.prototype.EncodeToString=function(a){var $ptr,a,b,c;b=this;c=$makeSlice(M,b.EncodedLen(a.$length));b.Encode(c,a);return $bytesToString(c);};C.prototype.EncodeToString=function(a){return this.$val.EncodeToString(a);};E.ptr.prototype.Write=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=0;c=$ifaceNil;d=this;if(!($interfaceIsEqual(d.err,$ifaceNil))){e=0;f=d.err;b=e;c=f;$s=-1;return[b,c];}if(d.nbuf>0){$s=1;continue;}$s=2;continue;case 1:g=0;g=0;while(true){if(!(g<a.$length&&d.nbuf<3)){break;}(h=d.buf,i=d.nbuf,((i<0||i>=h.length)?($throwRuntimeError("index out of range"),undefined):h[i]=((g<0||g>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+g])));d.nbuf=d.nbuf+(1)>>0;g=g+(1)>>0;}b=b+(g)>>0;a=$subslice(a,g);if(d.nbuf<3){$s=-1;return[b,c];}d.enc.Encode(new M(d.out),new M(d.buf));k=d.w.Write($subslice(new M(d.out),0,4));$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;d.err=j[1];if(!($interfaceIsEqual(d.err,$ifaceNil))){l=b;m=d.err;b=l;c=m;$s=-1;return[b,c];}d.nbuf=0;case 2:case 4:if(!(a.$length>=3)){$s=5;continue;}n=768;if(n>a.$length){n=a.$length;n=n-((o=n%3,o===o?o:$throwRuntimeError("integer divide by zero")))>>0;}d.enc.Encode(new M(d.out),$subslice(a,0,n));r=d.w.Write($subslice(new M(d.out),0,($imul((q=n/3,(q===q&&q!==1/0&&q!==-1/0)?q>>0:$throwRuntimeError("integer divide by zero")),4))));$s=6;case 6:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}p=r;d.err=p[1];if(!($interfaceIsEqual(d.err,$ifaceNil))){s=b;t=d.err;b=s;c=t;$s=-1;return[b,c];}b=b+(n)>>0;a=$subslice(a,n);$s=4;continue;case 5:u=0;while(true){if(!(u<a.$length)){break;}(v=d.buf,((u<0||u>=v.length)?($throwRuntimeError("index out of range"),undefined):v[u]=((u<0||u>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+u])));u=u+(1)>>0;}d.nbuf=a.$length;b=b+(a.$length)>>0;$s=-1;return[b,c];}return;}if($f===undefined){$f={$blk:E.ptr.prototype.Write};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.$s=$s;$f.$r=$r;return $f;};E.prototype.Write=function(a){return this.$val.Write(a);};E.ptr.prototype.Close=function(){var $ptr,a,b,c,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:a=this;if($interfaceIsEqual(a.err,$ifaceNil)&&a.nbuf>0){$s=1;continue;}$s=2;continue;case 1:a.enc.Encode(new M(a.out),$subslice(new M(a.buf),0,a.nbuf));c=a.w.Write($subslice(new M(a.out),0,a.enc.EncodedLen(a.nbuf)));$s=3;case 3:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;a.err=b[1];a.nbuf=0;case 2:$s=-1;return a.err;}return;}if($f===undefined){$f={$blk:E.ptr.prototype.Close};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.$s=$s;$f.$r=$r;return $f;};E.prototype.Close=function(){return this.$val.Close();};F=function(a,b){var $ptr,a,b;return new E.ptr($ifaceNil,a,b,O.zero(),0,P.zero());};$pkg.NewEncoder=F;C.ptr.prototype.EncodedLen=function(a){var $ptr,a,b,c,d;b=this;if(b.padChar===-1){return(c=((($imul(a,8))+5>>0))/6,(c===c&&c!==1/0&&c!==-1/0)?c>>0:$throwRuntimeError("integer divide by zero"));}return $imul((d=((a+2>>0))/3,(d===d&&d!==1/0&&d!==-1/0)?d>>0:$throwRuntimeError("integer divide by zero")),4);};C.prototype.EncodedLen=function(a){return this.$val.EncodedLen(a);};G.prototype.Error=function(){var $ptr,a;a=this;return"illegal base64 data at input byte "+B.FormatInt(new $Int64(a.$high,a.$low),10);};$ptrType(G).prototype.Error=function(){return this.$get().Error();};C.ptr.prototype.decode=function(a,b){var $ptr,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;c=0;d=false;e=$ifaceNil;f=this;g=0;while(true){if(!(g<b.$length&&((((g<0||g>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+g])===10)||(((g<0||g>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+g])===13)))){break;}g=g+(1)>>0;}while(true){if(!(g<b.$length&&!d)){break;}h=Q.zero();i=3;j=4;k=i;l=j;m=h;n=0;while(true){if(!(n<4)){break;}o=n;if(b.$length===g){if(!((f.padChar===-1))||o<2){p=c;q=false;r=new G(0,(g-o>>0));c=p;d=q;e=r;return[c,d,e];}s=o-1>>0;t=o;u=true;k=s;l=t;d=u;break;}v=((g<0||g>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+g]);g=g+(1)>>0;while(true){if(!(g<b.$length&&((((g<0||g>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+g])===10)||(((g<0||g>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+g])===13)))){break;}g=g+(1)>>0;}if((v>>0)===f.padChar){w=o;if((w===(0))||(w===(1))){x=c;y=false;z=new G(0,(g-1>>0));c=x;d=y;e=z;return[c,d,e];}else if(w===(2)){if(g===b.$length){aa=c;ab=false;ac=new G(0,b.$length);c=aa;d=ab;e=ac;return[c,d,e];}if(!(((((g<0||g>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+g])>>0)===f.padChar))){ad=c;ae=false;af=new G(0,(g-1>>0));c=ad;d=ae;e=af;return[c,d,e];}g=g+(1)>>0;while(true){if(!(g<b.$length&&((((g<0||g>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+g])===10)||(((g<0||g>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+g])===13)))){break;}g=g+(1)>>0;}}if(g<b.$length){e=new G(0,g);}ag=3;ah=o;ai=true;k=ag;l=ah;d=ai;break;}((o<0||o>=h.length)?($throwRuntimeError("index out of range"),undefined):h[o]=(aj=f.decodeMap,((v<0||v>=aj.length)?($throwRuntimeError("index out of range"),undefined):aj[v])));if(((o<0||o>=h.length)?($throwRuntimeError("index out of range"),undefined):h[o])===255){ak=c;al=false;am=new G(0,(g-1>>0));c=ak;d=al;e=am;return[c,d,e];}n++;}an=(((((((h[0]>>>0)<<18>>>0)|((h[1]>>>0)<<12>>>0))>>>0)|((h[2]>>>0)<<6>>>0))>>>0)|(h[3]>>>0))>>>0;ao=((an>>>0>>>0)<<24>>>24);ap=((an>>>8>>>0)<<24>>>24);aq=((an>>>16>>>0)<<24>>>24);h[2]=ao;h[1]=ap;h[0]=aq;ar=l;if(ar===(4)){(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]=h[2]);h[2]=0;(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=h[1]);if(f.strict&&!((h[2]===0))){as=c;at=d;au=new G(0,(g-1>>0));c=as;d=at;e=au;return[c,d,e];}h[1]=0;(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=h[0]);if(f.strict&&(!((h[1]===0))||!((h[2]===0)))){av=c;aw=d;ax=new G(0,(g-2>>0));c=av;d=aw;e=ax;return[c,d,e];}}else if(ar===(3)){(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=h[1]);if(f.strict&&!((h[2]===0))){ay=c;az=d;ba=new G(0,(g-1>>0));c=ay;d=az;e=ba;return[c,d,e];}h[1]=0;(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=h[0]);if(f.strict&&(!((h[1]===0))||!((h[2]===0)))){bb=c;bc=d;bd=new G(0,(g-2>>0));c=bb;d=bc;e=bd;return[c,d,e];}}else if(ar===(2)){(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=h[0]);if(f.strict&&(!((h[1]===0))||!((h[2]===0)))){be=c;bf=d;bg=new G(0,(g-2>>0));c=be;d=bf;e=bg;return[c,d,e];}}a=$subslice(a,k);c=c+((l-1>>0))>>0;}bh=c;bi=d;bj=e;c=bh;d=bi;e=bj;return[c,d,e];};C.prototype.decode=function(a,b){return this.$val.decode(a,b);};C.ptr.prototype.Decode=function(a,b){var $ptr,a,b,c,d,e,f;c=0;d=$ifaceNil;e=this;f=e.decode(a,b);c=f[0];d=f[2];return[c,d];};C.prototype.Decode=function(a,b){return this.$val.Decode(a,b);};C.ptr.prototype.DecodeString=function(a){var $ptr,a,b,c,d,e,f;b=this;c=$makeSlice(M,b.DecodedLen(a.length));d=b.decode(c,new M($stringToBytes(a)));e=d[0];f=d[2];return[$subslice(c,0,e),f];};C.prototype.DecodeString=function(a){return this.$val.DecodeString(a);};H.ptr.prototype.Read=function(a){var $ptr,a,aa,ab,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;aa=$f.aa;ab=$f.ab;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;n=$f.n;o=$f.o;p=$f.p;q=$f.q;r=$f.r;s=$f.s;t=$f.t;u=$f.u;v=$f.v;w=$f.w;x=$f.x;y=$f.y;z=$f.z;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=0;c=$ifaceNil;d=this;if(d.out.$length>0){b=$copySlice(a,d.out);d.out=$subslice(d.out,b);e=b;f=$ifaceNil;b=e;c=f;$s=-1;return[b,c];}if(!($interfaceIsEqual(d.err,$ifaceNil))){g=0;h=d.err;b=g;c=h;$s=-1;return[b,c];}case 1:if(!(d.nbuf<4&&$interfaceIsEqual(d.readErr,$ifaceNil))){$s=2;continue;}j=$imul((i=a.$length/3,(i===i&&i!==1/0&&i!==-1/0)?i>>0:$throwRuntimeError("integer divide by zero")),4);if(j<4){j=4;}if(j>1024){j=1024;}l=d.r.Read($subslice(new M(d.buf),d.nbuf,j));$s=3;case 3:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}k=l;j=k[0];d.readErr=k[1];d.nbuf=d.nbuf+(j)>>0;$s=1;continue;case 2:if(d.nbuf<4){if((d.enc.padChar===-1)&&d.nbuf>0){m=0;n=d.enc.decode(new M(d.outbuf),$subslice(new M(d.buf),0,d.nbuf));m=n[0];d.err=n[2];d.nbuf=0;d.end=true;d.out=$subslice(new M(d.outbuf),0,m);b=$copySlice(a,d.out);d.out=$subslice(d.out,b);if(b>0||(a.$length===0)&&d.out.$length>0){o=b;p=$ifaceNil;b=o;c=p;$s=-1;return[b,c];}if(!($interfaceIsEqual(d.err,$ifaceNil))){q=0;r=d.err;b=q;c=r;$s=-1;return[b,c];}}d.err=d.readErr;if($interfaceIsEqual(d.err,A.EOF)&&d.nbuf>0){d.err=A.ErrUnexpectedEOF;}s=0;t=d.err;b=s;c=t;$s=-1;return[b,c];}v=$imul((u=d.nbuf/4,(u===u&&u!==1/0&&u!==-1/0)?u>>0:$throwRuntimeError("integer divide by zero")),4);x=$imul((w=d.nbuf/4,(w===w&&w!==1/0&&w!==-1/0)?w>>0:$throwRuntimeError("integer divide by zero")),3);if(x>a.$length){y=d.enc.decode(new M(d.outbuf),$subslice(new M(d.buf),0,v));x=y[0];d.end=y[1];d.err=y[2];d.out=$subslice(new M(d.outbuf),0,x);b=$copySlice(a,d.out);d.out=$subslice(d.out,b);}else{z=d.enc.decode(a,$subslice(new M(d.buf),0,v));b=z[0];d.end=z[1];d.err=z[2];}d.nbuf=d.nbuf-(v)>>0;$copySlice($subslice(new M(d.buf),0,d.nbuf),$subslice(new M(d.buf),v));aa=b;ab=d.err;b=aa;c=ab;$s=-1;return[b,c];}return;}if($f===undefined){$f={$blk:H.ptr.prototype.Read};}$f.$ptr=$ptr;$f.a=a;$f.aa=aa;$f.ab=ab;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.n=n;$f.o=o;$f.p=p;$f.q=q;$f.r=r;$f.s=s;$f.t=t;$f.u=u;$f.v=v;$f.w=w;$f.x=x;$f.y=y;$f.z=z;$f.$s=$s;$f.$r=$r;return $f;};H.prototype.Read=function(a){return this.$val.Read(a);};I.ptr.prototype.Read=function(a){var $ptr,a,b,c,d,e,f,g,h,i,j,k,l,m,$s,$r;$s=0;var $f,$c=false;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$ptr=$f.$ptr;a=$f.a;b=$f.b;c=$f.c;d=$f.d;e=$f.e;f=$f.f;g=$f.g;h=$f.h;i=$f.i;j=$f.j;k=$f.k;l=$f.l;m=$f.m;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:b=this;d=b.wrapped.Read(a);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;e=c[0];f=c[1];case 2:if(!(e>0)){$s=3;continue;}g=0;h=$subslice(a,0,e);i=0;while(true){if(!(i<h.$length)){break;}j=i;k=((i<0||i>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+i]);if(!((k===13))&&!((k===10))){if(!((j===g))){((g<0||g>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+g]=k);}g=g+(1)>>0;}i++;}if(g>0){$s=-1;return[g,f];}m=b.wrapped.Read(a);$s=4;case 4:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;e=l[0];f=l[1];$s=2;continue;case 3:$s=-1;return[e,f];}return;}if($f===undefined){$f={$blk:I.ptr.prototype.Read};}$f.$ptr=$ptr;$f.a=a;$f.b=b;$f.c=c;$f.d=d;$f.e=e;$f.f=f;$f.g=g;$f.h=h;$f.i=i;$f.j=j;$f.k=k;$f.l=l;$f.m=m;$f.$s=$s;$f.$r=$r;return $f;};I.prototype.Read=function(a){return this.$val.Read(a);};J=function(a,b){var $ptr,a,b;return new H.ptr($ifaceNil,$ifaceNil,a,new I.ptr(b),false,P.zero(),0,M.nil,R.zero());};$pkg.NewDecoder=J;C.ptr.prototype.DecodedLen=function(a){var $ptr,a,b,c,d;b=this;if(b.padChar===-1){return(c=($imul(a,6))/8,(c===c&&c!==1/0&&c!==-1/0)?c>>0:$throwRuntimeError("integer divide by zero"));}return $imul((d=a/4,(d===d&&d!==1/0&&d!==-1/0)?d>>0:$throwRuntimeError("integer divide by zero")),3);};C.prototype.DecodedLen=function(a){return this.$val.DecodedLen(a);};C.methods=[{prop:"WithPadding",name:"WithPadding",pkg:"",typ:$funcType([$Int32],[N],false)},{prop:"Strict",name:"Strict",pkg:"",typ:$funcType([],[N],false)}];N.methods=[{prop:"Encode",name:"Encode",pkg:"",typ:$funcType([M,M],[],false)},{prop:"EncodeToString",name:"EncodeToString",pkg:"",typ:$funcType([M],[$String],false)},{prop:"EncodedLen",name:"EncodedLen",pkg:"",typ:$funcType([$Int],[$Int],false)},{prop:"decode",name:"decode",pkg:"encoding/base64",typ:$funcType([M,M],[$Int,$Bool,$error],false)},{prop:"Decode",name:"Decode",pkg:"",typ:$funcType([M,M],[$Int,$error],false)},{prop:"DecodeString",name:"DecodeString",pkg:"",typ:$funcType([$String],[M,$error],false)},{prop:"DecodedLen",name:"DecodedLen",pkg:"",typ:$funcType([$Int],[$Int],false)}];S.methods=[{prop:"Write",name:"Write",pkg:"",typ:$funcType([M],[$Int,$error],false)},{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)}];G.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];T.methods=[{prop:"Read",name:"Read",pkg:"",typ:$funcType([M],[$Int,$error],false)}];U.methods=[{prop:"Read",name:"Read",pkg:"",typ:$funcType([M],[$Int,$error],false)}];C.init("encoding/base64",[{prop:"encode",name:"encode",exported:false,typ:K,tag:""},{prop:"decodeMap",name:"decodeMap",exported:false,typ:L,tag:""},{prop:"padChar",name:"padChar",exported:false,typ:$Int32,tag:""},{prop:"strict",name:"strict",exported:false,typ:$Bool,tag:""}]);E.init("encoding/base64",[{prop:"err",name:"err",exported:false,typ:$error,tag:""},{prop:"enc",name:"enc",exported:false,typ:N,tag:""},{prop:"w",name:"w",exported:false,typ:A.Writer,tag:""},{prop:"buf",name:"buf",exported:false,typ:O,tag:""},{prop:"nbuf",name:"nbuf",exported:false,typ:$Int,tag:""},{prop:"out",name:"out",exported:false,typ:P,tag:""}]);H.init("encoding/base64",[{prop:"err",name:"err",exported:false,typ:$error,tag:""},{prop:"readErr",name:"readErr",exported:false,typ:$error,tag:""},{prop:"enc",name:"enc",exported:false,typ:N,tag:""},{prop:"r",name:"r",exported:false,typ:A.Reader,tag:""},{prop:"end",name:"end",exported:false,typ:$Bool,tag:""},{prop:"buf",name:"buf",exported:false,typ:P,tag:""},{prop:"nbuf",name:"nbuf",exported:false,typ:$Int,tag:""},{prop:"out",name:"out",exported:false,typ:M,tag:""},{prop:"outbuf",name:"outbuf",exported:false,typ:R,tag:""}]);I.init("encoding/base64",[{prop:"wrapped",name:"wrapped",exported:false,typ:A.Reader,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$pkg.StdEncoding=D("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/");$pkg.URLEncoding=D("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_");$pkg.RawStdEncoding=$clone($pkg.StdEncoding,C).WithPadding(-1);$pkg.RawURLEncoding=$clone($pkg.URLEncoding,C).WithPadding(-1);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})();
"<a onclick='i2b2.MedCo.QT.ctrlr.showDateConstraint(this)' title='Select the date range for this group's criterion to have occured within...'>Dates</a>"+
"</div>" +
"<div class='occur'>" +
// <!--<a id="A_11" href="JavaScript:i2b2.CRC.ctrlr.QT.panelControllers[0].showOccurs()" title="Select the minimum number of times this group's criterion has occured...">Occurs > <span id="SPAN_12">0</span>x</a>-->
"</div>" +
"<div class='exclude'>" +
"<a onclick='i2b2.MedCo.QT.ctrlr.excludePanel(this)' title='Exclude records matching this group\'s criteria...'>Exclude</a>" +